在实践部署DMHS,搭建由MySQL同步DM环境过程中,碰到以下问题,以供分享。
问题:dmhs/bin/log/dmhs_yyyymm.log日志出现以下失败信息:
CPT[ERROR]: 执行查询binary logs失败,错误码:1227
CPT[ERROR]: 执行sql:show binary logs失败 , error msg:Access denied; you need (at least one of) the SUPER, REPLICATION CLIENT privilege(s) for this operation
MGR[INFO]: 监控到来自 127.0.0.1(dmhs_console) 的登录
CPT[ERROR]: 查询MySQL数据库的binary logs失败!
MGR[ERROR]: 初始化日志分析模块失败
问题原因:
本问题是因为mysql同步账号缺少set @@session.sql_log_bin=0 执行权限导致,如同步账号为u_dmhs,重现问题:
$ mysql -u u_dmhs -p
mysql> set @@session.sql_log_bin=0;
ERROR 1227 (42000): Access denied; you need (at least one of) the SUPER, SYSTEM_VARIABLES_ADMIN or SESSION_VARIABLES_ADMIN privilege(s) for this operation
解决方案:
给同步账号增加以下授权即可:
$ mysql -u root -p
mysql> grant all on . to 'u_dmhs'@'%';
mysql> flush privileges;
# ./configure --enable-drivers=no --with-iconv-char-enc=GB18030 --enable-gui=no --enable-iconv=yes
configure: error: no acceptable C compiler found in $PATH
出现以上错误,需要安装gcc:
# yum -y install gcc
MGR[ERROR]: 库文件 libdmhs_exec.so 未找到, 出错: 0, libdmoci.so: cannot open shared object file: No such file or directory
MGR[ERROR]: 库文件 libdmhs_exec.so 未找到, 出错: 0, /home/dmdba/dmdbms/bin/libdmfldr.so: undefined symbol: dpi_fldr_get_col_info
DM执行端dmhs_yyymm.log日志出现以上错误日志,需要将以下库路径加入到LD_LIBRARY_PATH环境变量:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/dmdba/dmoci
默认mysql的安装目录只有属主用户有访问权限,做为安装DMHS软件的同组用户dmhs需要有访问mysql的lib以及binlog目录权限,才能正常读取和同步数据。因此需要执行以下授权操作:
https://eco.dameng.com
文章
阅读量
获赞