在 Linux 上使用 MySQL / MariaDB 安装 MirthConnect 的 8 个步骤
Mirth Connect 是一个开源集成引擎,主要用于医疗保健领域。
这支持各种医疗保健标准(HL7、XML、EDI/X12、DICOM 等),这将帮助企业集成不同的系统,并让它们以通用语言相互交流。
MirthConnect 接口引擎还支持各种标准协议(例如,TCP、HTTP、JDBS、SFTP 等)来连接两个系统。
默认情况下,当您安装 mirthconnect 时,它使用 Apache Derby 作为存储引擎。但是,它支持几乎所有流行的数据库,包括 MySQL / MariaDB、PostgreSQL、Oracle 和 SQL Server。
在本教程中,我们将解释如何安装 MirthConnect 开源软件,并将其配置为与 Linux 平台上的 MySQL 数据库通信。
开源版本支持以下连接器和格式:
- 连接器:TCP、MLLP、HTTP、FTP、DICOM、SOAP、SQL、JMS、文件系统、HTTPS、POP3、IMAP、ASTM、RS232
- 格式:XML、HL7、DICOM、NCDPP、X12、分隔文本、原始二进制
最近 NextGen 收购了 mirthconnect。商业版本支持一些额外的格式,如 CCD、C-CDA、ASTM。此外,商业版还有一些高级的企业扩展。例如:SSL 管理器、基于角色的访问控制、高级警报、通道历史、LDAP 身份验证、HL7 消息生成器。
在本教程中,我们将解释如何在 MySQL 数据库上安装 Mirth Connect 的开源版本。
第 1 步:先决条件:安装 Java JDK
确保您的系统上安装了 JDK 1.8,如下所示。
# java -version
openjdk version "1.8.0_102"
OpenJDK Runtime Environment (build 1.8.0_102-b14)
OpenJDK 64-Bit Server VM (build 25.102-b14, mixed mode)
如果没有安装JDK,使用yum安装,如下图:
yum -y install java-1.8.0-openjdk
您应该会看到系统上安装了以下与 JDK 相关的软件包:
# rpm -qa | grep -i jdk
java-1.8.0-openjdk-headless-1.8.0.102-1.b14.el7_2.x86_64
java-1.8.0-openjdk-1.8.0.102-1.b14.el7_2.x86_64
java-1.8.0-openjdk-devel-1.8.0.102-1.b14.el7_2.x86_64
第 2 步:安装 MySQL/MariaDB
如前所述,默认情况下,mirthconnect 带有 Apache Derby 作为默认数据库。
但是,在本教程中,我们将安装和配置 MySQL / MariaDB 数据库,并将其用于 mirthconnect。
安装 MySQL / MariaDB 服务器,如下所示。为此,您应该安装以下两个 mariadb 包。
yum install mariadb
yum install mariadb-server
注意:如果您使用的是较旧版本的 Linux 发行版,其中 yum 存储库中没有 mariadb-server 包,请安装 mysql-server 包,如下所示。
yum install mysql-server
安装 MariaDB 后,您将在系统上看到以下软件包:
# rpm -qa | grep -i maria
mariadb-5.5.50-1.el7_2.x86_64
mariadb-server-5.5.50-1.el7_2.x86_64
mariadb-libs-5.5.50-1.el7_2.x86_64
安装 mariadb 后,启动它并确保它正常运行。
systemctl start mariadb
systemctl status mariadb
您可能还想运行以下命令来为您的 MySQL/MariaDB 安装设置一些安全设置。这还将为您的数据库分配一个 root 密码。
/usr/bin/mysql_secure_installation
步骤 3:为 MirthConnect 创建 MySQL 数据库
让我们创建一个名为“thegeekstuff”的数据库,mirthconnect 安装将使用该数据库。
为此,使用 mysql 命令和 mysql 的 root 用户名和密码,如下所示。
# mysql -u root -pMySQLRootPwd
MariaDB [(none)]> create database tiamo;
创建数据库后,创建一个名为“thegeekstuff”的用户,并为此分配一个密码。此帐户将在 mirthconnect 配置中用于与数据库对话。
MariaDB [(none)]> grant all on tiamo.* to 'tiamo'@'localhost' identified by 'DBSecretPwd!' with grant option;
MariaDB [(none)]> flush privileges;
在此阶段,您不会在此数据库中看到任何与 mirthconnnect 相关的表。但是,一旦安装了 mirthconnect,您就会在此处看到多个表。
# mysql -u root -pMySQLRootPwd
MariaDB [(none)]> use sysadmin;
Database changed
MariaDB [sysadmin]> show tables;
Empty set (0.00 sec)
第 4 步:下载并安装 Mirth Connect
从这里下载 mirthconnect 。
您可以使用以下任何一种格式安装 mirthconnect:1) RPM 2) tar.gz 2) 安装程序
在本教程中,我们将使用 mirthconnect 安装的 tar.gz 格式。
首先,获取 tar.gz 的下载链接,然后使用 wget 命令将其发送到您的服务器,如下所示。
cd ~
wget http://downloads.mirthcorp.com/connect/3.4.2.8129.b167/mirthconnect-3.4.2.8129.b167-unix.tar.gz
下载后,解压,如下图所示。
tar xvfz mirthconnect-3.4.2.8129.b167-unix.tar.gz
默认情况下,这将在您的当前目录下创建“Mirth Connect”目录。
为了更好的管理这个,把它移到/opt目录下,同时去掉名字中的“空格”,全部小写,这样在Linux环境下更容易管理。
在本例中,我们将“Mirth Connect”重命名为“mirthconnect”,同时将其移动到 /opt 目录,如下所示。
mv Mirth\ Connect/ /opt/mirthconnect
注意:如果您想从 RPM 文件安装它,请执行以下操作:
cd ~
wget http://downloads.mirthcorp.com/connect/3.4.2.8129.b167/mirthconnect-3.4.2.8129.b167-linux.rpm
使用 rpm 命令安装 RPM mirthconnect 文件,如下所示:
rpm -ivh mirthconnect-3.4.2.8129.b167-linux.rpm
步骤 5:修改 MirthConnect 配置文件
主要的 mirthconnect 属性文件是位于 /opt/mirthconnect/conf 目录下的 mirth.properties。
vi /opt/mirthconnect/conf/mirth.properties
在该文件中,修改以下参数:
http.port = 8080
https.port = 8443
database = mysql
database.url = jdbc:mysql://localhost:3306/tiamo
database.username = tiamo
database.password = DBSecretPwd!
在上面:
- http.port – 8080 是默认的 mirthconnect HTTP 端口。您可以更改此值以匹配您的环境。
- https.port – 8443 是默认的 mirthconnect HTTP 端口。您可以更改此值以匹配您的环境。
- 数据库 - 默认情况下,这会说 derby。将此值更改为 mysql,如上所示。
- database.url – 由于我们使用的是 MySQL 数据库,因此将此 database.url 设置为上面显示的值。默认情况下,这将指向默认的 derby 数据库。更改此值。确保在 url 的末尾,它具有您之前创建的 mysql 数据库名称。如果您从配置文件注释行复制/粘贴此值,则此处将包含 mirthdb。您应该将其更改为您的数据库名称。
- database.username – 将其设置为我们之前创建的 mysql 用户。
- database.password – 将此值设置为您的 mysql 用户名的相应密码。
第 6 步:启动 MirthConnect
现在,使用 mcservice 命令将 mirthconnect 作为服务启动。
# /opt/mirthconnect/mcservice start
Starting mcservice
# /opt/mirthconnect/mcservice status
The daemon is running.
您还可以执行 ps 并检查在后台运行的“mcservice”进程,如下所示。
# ps -ef | grep mcservice
root 26665 1 0 07:41 pts/2 00:01:57 /usr/bin/java -Dinstall4j.jvmDir=/usr
-Dexe4j.moduleName=/opt/mirthconnect/mcservice -Dinstall4j.launcherId=144
-Dinstall4j.swt=false -server -Xmx256m -Djava.awt.headless=true -Di4j.vmov=true
-Di4j.vmov=true -Di4j.vpt=true
-classpath /opt/mirthconnect/.install4j/i4jruntime.jar:/opt/mirthconnect/mirth-server-launcher.jar
com.install4j.runtime.launcher.Launcher start
com.mirth.connect.server.launcher.MirthLauncher false false
true true false true true 0 0 20 20 Arial 0,0,0 8 500
version 3.4.2.8129.b167 20 40 Arial 0,0,0 8 500 -1
注意:当您第一次启动 mirthconnect 时,它将连接到 MySQL 数据库,并创建所有需要的表。
现在,如果您连接到 mysql,您将看到它创建了 mirthconnect 正常运行所需的 13 个新表。
MariaDB [tiamo]> show tables;
+-----------------------+
| Tables_in_thegeekstuff|
+-----------------------+
| ALERT |
| CHANNEL |
| CHANNEL_GROUP |
| CODE_TEMPLATE |
| CODE_TEMPLATE_LIBRARY |
| CONFIGURATION |
| D_CHANNELS |
| EVENT |
| PERSON |
| PERSON_PASSWORD |
| PERSON_PREFERENCE |
| SCHEMA_INFO |
| SCRIPT |
+-----------------------+
13 rows in set (0.00 sec)
第 7 步:将 Mirthconnect 添加到 Systemd
如果您运行的是 CentOS 7(或 RedHat),那么您可能需要将 mirthconnect 添加到 systemd 启动中。
为此,创建以下 mirthconnect.service 文件
# vi /usr/lib/systemd/system/mirthconnect.service
[Unit]
Description=MirthConnect
After=network.target
[Service]
Type=forking
User=root
Group=root
ExecStart=/opt/mirthconnect/mcservice start
ExecStop=/opt/mirthconnect/mcservice stop
ExecRestart=/opt/mirthconnect/mcservice restart
TimeoutSec=60
[Install]
WantedBy=multi-user.target
注意:如果您已将 mirthconnect 安装为 root 以外的其他用户,则相应地更改上述文件中的用户和组。
之后,您可以使用 systemctl 启动和停止 mirthconnect,如下所示。
systemctl start mirthconnect
systemctl stop mirthconnect
要使其在服务器重新启动时自动启动,请启用此 systemd 服务器以进行启动,如下所示。
systemctl enable mirthconnect
步骤 8:登录 MirthConnect 管理员
您可以使用以下 HTTP 或 HTTPS 网址:
- http://{您的 IP 地址}:8080
- https://{您的 IP 地址}:8443
Mirth Connect UI 将有以下两个选项:
- MirthConnect Adminstartor – 这将使用 java webstart 启动管理员 UI。
- Web 仪表板登录 - 如果您使用 http 启动 URL,这将显示“访问安全站点”按钮。单击它以仅使用浏览器中的 mirthconnect。如果您使用 HTTPS url,这将在此处显示用户名和密码文本框。
默认的 mirthconnect 用户名和密码是 admin/admin。
以下是 Mirth Connect Web Dashboard 的屏幕截图:
当您单击“启动 mirthconnect 管理员”webstart 按钮时,这会将名为“webstart.jnlp”的文件下载到您的系统。双击它以启动 webstart。
第一次,这将启动一个对话框,上面写着“正在验证应用程序”。这还将通过显示正在启动的 mirthconnect 位置的完整 URL 来显示它正在启动哪个 mirthconnect。
接下来,Java 将显示一条警告消息并询问您“是否要运行此应用程序”。点击“运行”。这将最终显示以下 mirthconnect 登录框。默认情况下,服务器列将填充正确的 URL。如果您在此处没有看到正确的值,请输入:https://{your-ip-address}:8443
输入用户名和密码。第一次做的时候,用户名和密码都是admin。
第一次登录时,这将强制您更改管理员密码。
最后,这将显示 Mirthconnect 管理员仪表板,如下所示,从这里您可以通过创建和管理频道来管理 mirthconnect。
Mirth Connect 启动问题故障排除
如果 mirthconect 无法正常启动,请检查以下 mirth 日志文件是否有任何问题。
tail -100 /opt/mirthconnect/logs/mirth.log
此外,出于调试目的,您可能需要暂时禁用 firewalld 和 selinux,以确保它们不会出于某种原因阻止 mirthconnect。
要停止 firewalld,请执行以下操作:
systemctl stop firewalld
如下图暂时禁用 SELinux:
setenforce 0
之后,再次启动mirthconnect,看看它是否正常启动。
Mirth Connect 目录结构
默认情况下,在 /opt/mirthconnect 的安装目录下,您将看到以下目录:
- conf - 所有 mirthconnect 配置文件都将在这里
- webapps – 这是 mirthconnect websserver 公开以托管 webapps 的目录
- server-lib – 所有 mirthconnect 服务器库文件都在这里
- public_html – mirthconnect 网络服务器公开的用于托管 html 文件的目录
- manager-lib – 此目录将保存 Mirthconnect 服务器管理器使用的所有库
- 扩展 – 插件和连接器使用的所有库和元数据都在这里
- docs – 文档目录
- custom-lib——在这个目录中,顾名思义,你可以放置你所有的自定义库文件。这些库将在启动期间加载到 mirthconnect 服务器。
- cli-lib – Mirthconnect 命令行接口库将在此目录中
- client-lib – 这将包含 mirthconnect 管理员库
除了上述目录,您还将看到以下文件:
- mcservice.vmoptions 和 mcserver.vmoptions – Mirthconnect 的 Java 内存设置
- mcservice - 用于启动、停止和查看 Mirth Connect Service Deamon 的状态
- mcserver – 如果您不使用服务选项,请使用此选项以非服务模式启动 Mirth Connect。
- mcmanager – 这是 mirthconnect 服务器管理器
- mccommand – Mirthconnect 命令行实用程序
- mirth-server-launcher.jar, mirth-manager-launcher.jar, mirth-cli-launcher.jar – mirth 连接服务器、管理器和 cli 分别使用的 Jar 文件
- 点赞
- 收藏
- 关注作者
评论(0)