文档中心MogDBMogDB StackUqbar

文档:v2.0

支持的版本:

MDB 安装

安装需求

MDB 部署的系统需求如下:

  • 服务器: Linux x86_64
  • 资料库: MogDB
  • 磁盘空间:500G

支持版本

软件 版本
Java 11+
MogDB Database: 2.0+ Plug-ins: wal2json
Oracle 11g, 12c, 19c
MySQL 5.7, 8.0.x (部分兼容MariaDB > 10.4)
PostgreSQL Database: 9.6, 10, 11, 12, 13, 14 Plug-ins: decoderbufs, wal2json
SQL Server 2016(SP1)及以后版本

安装步骤

下载软件

下载最新版 MDB 安装包: MDB Latest

上传软件并解压

上传 MDB 安装包到服务器,并解压:

tar -zxvf mdb_v1.0.0.RELEASE_linux_x86_64.tar.gz

准备资料库

MDB 当前资料库必须使用 MogDB(openGauss) 数据库,版本不低于 2.0。

MogDB 安装请参考: MogDB单实例安装

MogDB 软件安装完成后,在 MogDB 数据库服务器中,使用 gsql 客户端工具以本地超级管理员用户登录数据库

gsql -r

在 MogDB 中预先创建 MDB 资料库与资料库用户:

-- 创建资料库用户,密码请依据实际环境需求修改
create user mdb_repo with password 'MDB@password' sysadmin;

-- 创建资料库,资料库 owner 必须设置为 mdb_repo
create database mdb_repo_db with owner mdb_repo dbcompatibility='A' ENCODING='UTF8';

检查 Java 版本

MDB 依赖 Java 11,需要确保当前安装服务器中,Java 版本不低于 11:

java -version

若 Java 版本过低,可从 Java 官网下载不低于 openJDK 11 的软件包,下载链接如下:

https://jdk.java.net/java-se-ri/11-MR3

下载 openjdk-11.0.0.2_linux-x64.tar.gz 软件包,并上传到服务器中解压使用:

tar -zxvf openjdk-11.0.0.2_linux-x64.tar.gz

# 获取当前路径, 当前路径: /usr/local
pwd 

# 配置环境变量
vi ~/.bash_profile

# 替换JAVA_HOME路径后, 在文件末尾输入以下内容:
export JAVA_HOME=/usr/local/jdk-11.0.0.2
export CLASSPATH=$:CLASSPATH:$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin

# 保存退出, 执行以下命令更新配置文件
source ~/.bash_profile

再次确认 Java 版本,确保已使用 Java 11:

java -version

# 以下为示例输出:
# --------------
# openjdk 11.0.0.2 2024-07-02
# OpenJDK Runtime Environment 18.9 (build 11.0.0.2+2-2)
# OpenJDK 64-Bit Server VM 18.9 (build 11.0.0.2+2-2, mixed mode)

检查 Web 端口占用

MDB Server 需要一个 Web 监听端口(可修改,默认 55437),在安装的时候,需要确保该端口未被占用。

netstat -anp | grep LISTEN | grep 55437    # 确保没有处于 LISTEN 状态的进程

检查存在残留文件

zookeeper 和 kafka 安装,需要确保<tempFilePath>/zookeeper<tempFilePath>/kafka-logs目录不存在。如果确定是残留文件,请执行以下命令。

rm -rf <tempFilePath>/zookeeper # <tempFilePath>: MDB临时文件配置项, 默认值: ../mdb_data
rm -rf <tempFilePath>/kafka-logs

调整安装配置

切换到已解压的 MDB 安装包目录,检查安装包中文件的完整性:

cd mdb_v1.0.0.RELEASE_linux_x86_64

ls -ltr

安装包文件说明如下:

文件名 文件说明
kafka.zip Kafaka 组件安装包,用于同步时中间数据队列
mdb MDB 命令执行文件
mdb-data-worker.zip 数据采集投递任务相关的软件包
mdb-server.zip MDB 主软件包
snapshot-worker 全量同步软件包
mvd_package MVD 命令执行文件
mvd-java.zip 数据比对软件包
config.json 安装配置文件
connectorlog.zip 抽取日志处理软件包
mtk 需自行下载mtk
sca 需自行下载sca

修改配置文件: config.json

{
  "mdbServerPort": 55437,
  "dbHost": "127.0.0.1",
  "dbPort": 26000,
  "dbUser": "mdb_repo",
  "dbPassword": "MDB@password",
  "dbName": "mdb_repo_db",
  "dataFilePath": "../mdb_data",
  "tempFileMaxSize": 0,
  "tempFileRetentionTime": 168,
  "loadingSeconds": 300,
  "messageMaxSize": 50,
  "mvdServerPort": 9876
 }

配置项说明如下:

配置项 默认值 配置说明
mdbServerPort 55437 MDB 服务端口
用于 Web 页面访问,需要确保从 MDB 服务器到客户端 Web 之间的网络互通
dbHost 127.0.0.1 资料库监听的 IP 地址
dbPort 26000 资料库监听的服务端口
dbUser mdb_repo MDB 资料库用户
dbPassword MDB@password MDB 资料库密码
dbName mdb_repo_db MDB 资料库数据库名
dataFilePath ../mdb_data MDB 数据文件保存路径
tempFileMaxSize 0 MDB 临时文件大小(单位:GB),默认值0: 不限制大小
tempFileRetentionTime 168 MDB 临时文件保留时间(单位: 小时)
loadingSeconds 300 服务启动等待时间 (单位: 秒)
messageMaxSize 50 topic最大消息(单位: M)
mvdServerPort 9876 MVD 服务端口

配置 ulimit

在数据同步过程中,需要在 MDB 本地文件系统中存储部分临时数据文件,对于含有 LOB 字段的表,还会额外存储 LOB 数据文件,需要调整当前 MDB 用户的可打开句柄的最大限制,避免同步过程中打开文件句柄数据超过默认限制。

# 注意:以下命令放开了所有用户的限制,可将 * 修改为 MDB 安装用户只放开 MDB 限制,重新登录后生效
cat >> /etc/security/limits.conf <<EOF

* soft nofile 10485760
* hard nofile 10485760
EOF

# 修改系统总文件限制
cat >> /etc/sysctl.conf <<EOF

fs.file-max=167772160
EOF

sysctl -p

配置MTK 和 SCA (可选)

pwd         # 确保已经位于 mdb_v1.0.0.RELEASE_linux_x86_64 目录中

#下载sca_linux_x86_64 到 mdb_v1.0.0.RELEASE_linux_x86_64/sca 目录下
cd mdb_v1.0.0.RELEASE_linux_x86_64/sca
chmod u+x sca_linux_x86_64

#下载 mtk_2.8.3_linux_amd64.tar.gz 到 mdb_v1.0.0.RELEASE_linux_x86_64 目录下
cd mdb_v1.0.0.RELEASE_linux_x86_64
tar -zxvf mtk_2.8.3_linux_amd64.tar.gz
mv mtk_2.8.3_linux_amd64/* mtk

安装 MDB

检查并确保已切换到 MDB 安装包目录:

pwd         # 确保已经位于 mdb_v1.0.0.RELEASE_linux_x86_64 目录中

执行安装命令:

./mdb install

正常安装结果如下:

   2024-04-30 16:37:48  ======BEGIN TO INSTALL MDB======
   2024-04-30 16:37:48    1.CHECK MDB FILE
   2024-04-30 16:37:48    2.CHECK MDB ENVIRONMENT
   2024-04-30 16:37:48     JAVA_VERSION: 11.0
   2024-04-30 16:37:48    3.UNZIP KAFKA
   2024-04-30 16:37:48    4.INSTALL MDB SERVER
   2024-04-30 16:37:49    5.INSTALL MDB DATA WORKER
   2024-04-30 16:37:50    6.INSTALL MDB CONNECTOR LOG
   2024-04-30 16:37:50    7.INSTALL MVD SERVER
   2024-04-30 16:37:51  

   ======END UPGRADE MDB RESULT======
   +------------+-----------+-------------+---------------+--------------------+
   | File_Check | Env_Check | MDB_Install | KAFKA_INSTALL | MVD_Server_Install |
   +------------+-----------+-------------+---------------+--------------------+
   |  Success   |  Success  |   Success   |    Success    |      Success       |
   +------------+-----------+-------------+---------------+--------------------+

申请 LICENSE

执行申请license命令:

 ./mdb generate-license test@enmotech.com      #test@enmotech.com 是接收license文件的邮箱,需要上传license文件到服务器

正常执行结果如下:

   2022-07-07 14:06:22  邮件成功发送到test@enmotech.com,请查看邮箱.

拷贝 LICENSE

执行拷贝license命令:

 ./mdb copy-license /u01/mdb/license.json      #/u01/mdb/license.json是license文件在服务器上的路径

正常执行结果如下:

   2022-07-04 11:26:01  copy license success

启动 MDB

执行启动命令:

 ./mdb start

正常启动的执行结果如下:

   2024-04-30 16:21:09  start zookeeper success
   2024-04-30 16:21:09  start kafka success
   2024-04-30 16:21:09  start connector success
   2024-04-30 16:21:09  start mdb-server success
   2024-04-30 16:21:09  start connectorlog success
   2024-04-30 16:21:09  [MVD_SERVER] start mvd-server success
   2024-04-30 16:21:09  MDB启动成功,各程序占用端口如下
   +-------+-----------+-----------+------------+------------+
   | KAFKA | ZOOKEEPER | CONNECTOR | MDB_SERVER | MVD_SERVER |
   +-------+-----------+-----------+------------+------------+
   |  9092 |    2181   |    8083   |   55437    |    9876    |
   +-------+-----------+-----------+------------+------------+
   2024-04-30 16:21:10  MDB各程序服务状态
   +--------+-----------+-----------+------------+------------+
   | KAFKA  | ZOOKEEPER | CONNECTOR | MDB_SERVER | MVD_SERVER |
   +--------+-----------+-----------+------------+------------+
   | online |   online  |   online  |   online   |   online   |
   +--------+-----------+-----------+------------+------------+

启动子服务命令:

 ./mdb start --help 
 #  --server_name TEXT  可选服务名: zookeeper、kafka、connector、mdb_server、mvd_server
 ./mdb start --server_name zookeeper 
 ./mdb start --server_name kafka 
 ./mdb start --server_name connector 
 ./mdb start --server_name mdb_server 
 ./mdb start --server_name mvd_server 

查看MDB服务状态

执行查询状态命令:

 ./mdb status

正常执行结果如下:

   2022-06-23 14:06:39  MDB各程序服务状态
   +--------+-----------+-----------+------------+------------+
   | KAFKA  | ZOOKEEPER | CONNECTOR | MDB_SERVER | MVD_SERVER |
   +--------+-----------+-----------+------------+------------+
   | online |   online  |   online  |   online   |   online   |
   +--------+-----------+-----------+------------+------------+

停用MDB

执行停止命令:

 ./mdb stop

正常执行结果如下:

   2024-04-30 16:34:17  stop connector success
   2024-04-30 16:34:27  stop kafka success
   2024-04-30 16:34:37  stop zookeeper success
   2024-04-30 16:34:47  stop mdb-server success
   2024-04-30 16:34:47  stop mdb-data-worker success
   2024-04-30 16:34:47  stop connector_log success
   2024-04-30 16:34:57  stop mvd-server success
   2024-04-30 16:34:59  MDB各程序服务状态
   +---------+-----------+-----------+------------+------------+
   |  KAFKA  | ZOOKEEPER | CONNECTOR | MDB_SERVER | MVD_SERVER |
   +---------+-----------+-----------+------------+------------+
   | offline |  offline  |  offline  |  offline   |  offline   |
   +---------+-----------+-----------+------------+------------+

停止子服务命令:

 ./mdb stop --help 
 #  --server_name TEXT  可选服务名: zookeeper、kafka、connector、mdb_server、mvd_server
 ./mdb stop --server_name zookeeper 
 ./mdb stop --server_name kafka 
 ./mdb stop --server_name connector 
 ./mdb stop --server_name mdb_server 
 ./mdb stop --server_name mvd_server 

应用config

config.json配置发生变化, 执行该命令更新各个服务的配置文件。执行前需保证服务offline, 请先执行stop命令。

执行应用config命令:

 ./mdb apply-config  

正常执行结果如下:

   2022-08-08 14:54:34  apply config success!

日志采集

在当前目录生成dump.zip文件。

执行日志采集命令:

 ./mdb dump

正常执行结果如下:

   2022-09-23 10:33:46  dump log success

登录 MDB

MDB 启动成功后,可在客户端 Web 浏览器中(推荐使用 Chrome 浏览器),检查页面是否正常,检查是否可正常登录:

http://localhost:55437/mdb/index.html

img

Copyright © 2011-2024 www.enmotech.com All rights reserved.