cd /opt
tar -zvxf unixODBC-2.3.12.tar.gz
cd unixODBC-2.3.11
./configure --prefix=/usr/local/unixODBC-2.3.12 --includedir=/usr/include --libdir=/usr/lib -bindir=/usr/bin --sysconfdir=/etc
make && make install
odbcinst -j
odbcinst: error while loading shared libraries: libodbcinst.so.2: cannot open shared object file: No such file or directory
执行ldconfig命令解决
ldconfig:更新动态链接器的运行时绑定,即刷新库缓存
或检查LD_LIBRARY_PATH环境变量是否包含了所有必要的库路径
tar -zvxf mysql-connector-odbc-8.0.22-linux-glibc2.12-x86-64bit
cp -r mysql-connector-odbc-8.0.22-linux-glibc2.12-x86-64bit /usr/local/mysqlodbc8
echo “export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mysqlodbc8/lib” >>/etc/profile
source /etc/profile
cat /etc/odbcinst.ini
[root@ecs-3893 etc]# cat odbcinst.ini
[MySQL ODBC 5.1 Driver]
Driver = /usr/local/mysqlodbc8/lib/libmyodbc8w.so
FileUsage = 1
[root@ecs-3893 etc]#
cat /etc/odbc.ini
[root@ecs-3893 etc]# cat odbc.ini
[mysqlfordmhs]
Description = MySQL test database
Driver = MySQL ODBC 5.1 Driver
Server = 127.0.0.1
User = root
Password = root.123
Port = 3306
[root@ecs-3893 etc]#
[root@ecs-3893 etc]# isql mysqlfordmhs
+---------------------------------------+
| Connected!
|
| sql-statement
| help [tablename]
| echo [string]
| quit
|
+---------------------------------------+
[root@ecs-dd4b opt]# ./dmhs_V4.3.28_mysql8_rev150391_rh7_64_20240124_sp4.bin -i
Extract install files.........
1.English(English)
2.Simplified Chinese(简体中文)
Select the language to install[2.Simplified Chinese(简体中文)]:
/tmp/DMHSInstall/install.log
1.免费试用达梦数据实时同步
2.使用已申请的Key文件
验证许可证文件[1.免费试用达梦数据实时同步]:
1.精简版
2.完整版(web客户端)
3.自定义
安装类型[1.精简版]:
1.实时同步软件服务器
2.远程部署工具
3.实时同步软件配置助手
4.手册
所需磁盘空间:454 MB
安装目录: [/opt/dmhs]/dmhs
1.统一部署
2.现在初始化
是否初始化达梦数据实时同步系统[1.统一部署]:
正在安装
default start ... default finished.
server start ... server finished.
hs_agent start ... hs_agent finished.
hsca start ... hsca finished.
doc start ... doc finished.
postinstall start ... postinstall finished.
正在创建快捷方式
安装成功
远程部署工具配置
远程部署工具名称[HsAgent]:
主机Ip(外网)[192.168.0.209](192.168.0.209):
远程部署工具管理端口[5456](1000-65535):
内置数据库轮询间隔[3](1-60):
内置数据库IP[]:192.168.0.209
内置数据库端口[15236](1000-65535):
内置数据库用户名[SYSDBA]:
内置数据库密码[SYSDBA]:
服务脚本环境变量设置
依赖库路径
提示:此配置项供用户配置源或目的数据库依赖库路径和odbc依赖库路径, 多个路径以":"隔开(例:/opt/dmdbms/bin:/usr/local/lib),此配置项会添加到服务脚本的NEED_LIB_PATH的变量值中。
请配置依赖库路径:
远程控制服务
1.自动
2.手动
启动方式:[2.手动]
正在创建远程控制服务
达梦数据实时同步V4.0安装完成
更多安装信息,请查看安装日志文件:
/dmhs/log/install.log
[root@ecs-dd4b opt]# cd /dmhs/bin
[root@ecs-3893 bin]# cat dmhs.hs
<?xml version="1.0" encoding="GB2312"?>
<dmhs>
<base>
<lang>ch</lang>
<mgr_port>6345</mgr_port>
<ckpt_interval>45</ckpt_interval>
<siteid>1</siteid>
<version>2.0</version>
</base>
<cpt>
<db_type>mysql</db_type>
<db_server>127.0.0.1</db_server>
<db_port>3306</db_port>
<db_name>dmtest</db_name>
<db_user>root</db_user>
<db_pwd>root.123</db_pwd>
<ddl_mask>op:obj</ddl_mask>
<char_code>PG_UTF8</char_code>
<net_turns>0</net_turns>
<cpt_mask>arch_read:post:parse</cpt_mask>
<arch>
<clear_interval>600</clear_interval>
<clear_flag>0</clear_flag>
<dir>/usr/local/mysql/data</dir>
</arch>
<send>
<ip>192.168.0.209</ip>
<mgr_port>6345</mgr_port>
<data_port>6346</data_port>
<filter>
<enable>
<item>dmtest.*</item>
</enable>
</filter>
</send>
</cpt>
</dmhs>
注意<dir>标签中填写/etc/my.cnf配置文件中datadir内容
[root@ecs-dd4b bin]# cat dmhs.hs
<?xml version="1.0" encoding="GB2312"?>
<dmhs>
<base>
<lang>ch</lang>
<mgr_port>6345</mgr_port>
<ckpt_interval>45</ckpt_interval>
<siteid>2</siteid>
<version>2.0</version>
</base>
<exec>
<recv>
<data_port>6346</data_port>
</recv>
<db_type>mysql</db_type>
<db_server>127.0.0.1</db_server>
<db_port>3306</db_port>
<db_name>dmtest</db_name>
<db_user>root</db_user>
<db_pwd>root.123</db_pwd>
<exec_policy>2</exec_policy>
<char_code>PG_UTF8</char_code>
<save_point_times>3</save_point_times>
</exec>
</dmhs>
<exec_policy>:事务入库出错时的执行策略。
更多参数使用参考/dmhs/doc下《DMHS 达梦数据实时同步软件参考手册》文档。
使用ldd命令检查可执行文件依赖的.so文件,并显示这些依赖的加载状态
[root@ecs-3893 bin]# ldd libcpt_mysql.so
libmysqlclient.so.21通常在/usr/local/mysql/lib下,可将此路径加入环境变量中:
vi /etc/profile
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mysql/lib:/usr/local/mysqlodbc8/lib:/usr/lib
source /etc/profile
[root@ecs-dd4b bin]# ldd libdmhs_exec.so
如有libodbc.so.1=>no found 项,可设置软连接解决:
find / -name libodbc.so*
ls -s /usr/lib/libodbc.so /usr/lib/libodbc.so.1
cd /dmhs/bin
./dmhs_console
start exec
观察日志
tail -100f log/dmhs_202403.log
copy 0 “sch.name=’dmtest’” create|insert|dict|lsn
源端:
目的端:
源端:
目的端:
源端:
目的端:
源端:
目的端:
源端:
目的端:
以上测试均正常执行,同步正常。
log-bin=mysql-bin
binlog_format=row
max_allowed_packet=100M
log-bin参数用于启用MySQL的二进制日志功能,并指定日志文件的前缀名称;
binlog有三种格式:STATEMENT、ROW和MIXED。STATEMENT格式记录SQL语句;ROW格式记录每行数据的实际更改;MIXED格式根据情况选择STATEMENT或ROW;ROW格式提供了更好的复制兼容性和数据一致性保障,特别是在涉及到触发器、存储过程或复杂的SQL逻辑时。
max_allowed_packe设置MySQL允许的最大数据包大小,即单个SQL语句或数据包能够传输的最大字节数。将其设置为100M意味着MySQL可以接收、处理或返回最大为100MB的数据包。这在处理大数据导入、BLOB或TEXT字段、或者执行大型备份恢复时特别有用。
开启MySQL的binlog,并重启MySQL数据库
分享到此,感谢阅读。
文章
阅读量
获赞