在公司随便找3台测试机搭个MHA,下面这个问题折腾了三天,之前没遇到过,查了OS版本发现一致,可能是不同人弄的OS吧,知道是cpan的问题就是搞不定,郁闷。。。
[root@test247 ~]# masterha_check_repl --conf=/etc/masterha/app1.cnf
Wed Dec 4 11:53:59 2019 - [warning] Global configuration file /etc/masterha_default.cnf not found. Skipping.
Wed Dec 4 11:53:59 2019 - [info] Reading application default configuration from /etc/masterha/app1.cnf..
Wed Dec 4 11:53:59 2019 - [info] Reading server configuration from /etc/masterha/app1.cnf..
Wed Dec 4 11:53:59 2019 - [info] MHA::MasterMonitor version 0.56.
Wed Dec 4 11:54:00 2019 - [error][/usr/share/perl5/vendor_perl/MHA/ServerManager.pm, ln301] install_driver(mysql) failed: Attempt to reload DBD/mysql.pm aborted.
Compilation failed in require at (eval 26) line 3.

at /usr/share/perl5/vendor_perl/MHA/DBHelper.pm line 205
at /usr/share/perl5/vendor_perl/MHA/Server.pm line 166
Wed Dec 4 11:54:00 2019 - [error][/usr/share/perl5/vendor_perl/MHA/ServerManager.pm, ln301] install_driver(mysql) failed: Attempt to reload DBD/mysql.pm aborted.
Compilation failed in require at (eval 26) line 3.

at /usr/share/perl5/vendor_perl/MHA/DBHelper.pm line 205
at /usr/share/perl5/vendor_perl/MHA/Server.pm line 166
Wed Dec 4 11:54:00 2019 - [error][/usr/share/perl5/vendor_perl/MHA/ServerManager.pm, ln301] install_driver(mysql) failed: Attempt to reload DBD/mysql.pm aborted.
Compilation failed in require at (eval 26) line 3.

at /usr/share/perl5/vendor_perl/MHA/DBHelper.pm line 205
at /usr/share/perl5/vendor_perl/MHA/Server.pm line 166
Wed Dec 4 11:54:01 2019 - [error][/usr/share/perl5/vendor_perl/MHA/ServerManager.pm, ln309] Got fatal error, stopping operations
Wed Dec 4 11:54:01 2019 - [error][/usr/share/perl5/vendor_perl/MHA/MasterMonitor.pm, ln424] Error happened on checking configurations. at /usr/share/perl5/vendor_perl/MHA/MasterMonitor.pm line 326
Wed Dec 4 11:54:01 2019 - [error][/usr/share/perl5/vendor_perl/MHA/MasterMonitor.pm, ln523] Error happened on monitoring servers.
Wed Dec 4 11:54:01 2019 - [info] Got exit code 1 (Not master dead).

MySQL Replication Health is NOT OK!

参考下面帖子发现结果还有异常
https://www.cnblogs.com/fangyuan303687320/p/9475279.html

yum install -y cpan
cpan -D DBI
# [yes---sudo]
--上面这不执行了好几分钟,输入了很多次yes
cpan DBD::mysql
还是出现下面的异常

--异常
DVEEDEN/DBD-mysql-4.050.tar.gz
/usr/bin/make -- OK
Running make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
t/00base.t .............................. 1/6
# Failed test 'use DBD::mysql;'
# at t/00base.t line 15.
# Tried to use 'DBD::mysql'.
# Error: Can't load '/root/.cpan/build/DBD-mysql-4.050-d0WgOf/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: libmysqlclient.so.20: cannot open shared object file: No such file or directory at /usr/lib64/perl5/DynaLoader.pm line 200.
# at t/00base.t line 15
# Compilation failed in require at t/00base.t line 15.
# BEGIN failed--compilation aborted at t/00base.t line 15.
Bailout called. Further testing stopped: Unable to load DBD::mysql
FAILED--Further testing stopped: Unable to load DBD::mysql
make: *** [test_dynamic] Error 255
DVEEDEN/DBD-mysql-4.050.tar.gz
/usr/bin/make test -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
reports DVEEDEN/DBD-mysql-4.050.tar.gz
Running make install
make test had returned bad status, won't install without force

最后发现需要先执行下这个才可以,需要回答几次yes
[root@test247 ~]# cpan
cpan[1]> force install GD
...
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Installing /usr/local/lib64/perl5/auto/GD/GD.so
Installing /usr/local/lib64/perl5/auto/GD/GD.bs
Installing /usr/local/lib64/perl5/GD.pm
Installing /usr/local/lib64/perl5/auto/GD/autosplit.ix
Installing /usr/local/lib64/perl5/GD/Polygon.pm
Installing /usr/local/lib64/perl5/GD/Simple.pm
Installing /usr/local/lib64/perl5/GD/Group.pm
Installing /usr/local/lib64/perl5/GD/Image.pm
Installing /usr/local/lib64/perl5/GD/Polyline.pm
Installing /usr/local/share/man/man1/bdf2gdfont.pl.1
Installing /usr/local/share/man/man3/GD.3pm
Installing /usr/local/share/man/man3/GD::Polygon.3pm
Installing /usr/local/share/man/man3/GD::Group.3pm
Installing /usr/local/share/man/man3/GD::Simple.3pm
Installing /usr/local/share/man/man3/GD::Polyline.3pm
Installing /usr/local/share/man/man3/GD::Image.3pm
Installing /usr/local/bin/bdf2gdfont.pl
Appending installation info to /usr/lib64/perl5/perllocal.pod
RURBAN/GD-2.71.tar.gz
/usr/bin/make install -- OK

cpan[2]> exit

[root@test247 ~]# cpan DBD::mysql
CPAN: Storable loaded ok (v2.20)
Going to read '/root/.cpan/Metadata'
Database was generated on Wed, 04 Dec 2019 02:29:02 GMT
Running install for module 'DBD::mysql'
CPAN: YAML loaded ok (v0.70)
Running make for D/DV/DVEEDEN/DBD-mysql-4.050.tar.gz
CPAN: Digest::SHA loaded ok (v5.47)
Checksum for /root/.cpan/sources/authors/id/D/DV/DVEEDEN/DBD-mysql-4.050.tar.gz ok
...
For 'make test' to run properly, you must ensure that the
database user 'root' can connect to your MySQL server
and has the proper privileges that these tests require such
as 'drop table', 'create table', 'drop procedure', 'create procedure'
as well as others.

mysql> grant all privileges on test.* to 'root'@'localhost' identified by 's3kr1t';

You can also optionally set the user to run 'make test' with:

perl Makefile.PL --testuser=username
...
Prepending /root/.cpan/build/DBD-mysql-4.050-LtZCXU/blib/arch /root/.cpan/build/DBD-mysql-4.050-LtZCXU/blib/lib to PERL5LIB for 'install'
Files found in blib/arch: installing files in blib/lib into architecture dependent library tree
Installing /usr/local/lib64/perl5/auto/DBD/mysql/mysql.so
Installing /usr/local/lib64/perl5/auto/DBD/mysql/mysql.bs
Installing /usr/local/lib64/perl5/Bundle/DBD/mysql.pm
Installing /usr/local/lib64/perl5/DBD/mysql.pm
Installing /usr/local/lib64/perl5/DBD/mysql/GetInfo.pm
Installing /usr/local/lib64/perl5/DBD/mysql/INSTALL.pod
Installing /usr/local/share/man/man3/DBD::mysql.3pm
Installing /usr/local/share/man/man3/Bundle::DBD::mysql.3pm
Installing /usr/local/share/man/man3/DBD::mysql::INSTALL.3pm
Appending installation info to /usr/lib64/perl5/perllocal.pod
DVEEDEN/DBD-mysql-4.050.tar.gz
/usr/bin/make install -- OK
[root@test247 ~]#

再运行OK了
[root@test247 ~]# masterha_check_repl --conf=/etc/masterha/app1.cnf
Wed Dec 4 12:20:09 2019 - [warning] Global configuration file /etc/masterha_default.cnf not found. Skipping.
Wed Dec 4 12:20:09 2019 - [info] Reading application default configuration from /etc/masterha/app1.cnf..
Wed Dec 4 12:20:09 2019 - [info] Reading server configuration from /etc/masterha/app1.cnf..
Wed Dec 4 12:20:09 2019 - [info] MHA::MasterMonitor version 0.56.
Wed Dec 4 12:20:10 2019 - [info] GTID failover mode = 0
Wed Dec 4 12:20:10 2019 - [info] Dead Servers:
Wed Dec 4 12:20:10 2019 - [info] Alive Servers:
Wed Dec 4 12:20:10 2019 - [info] 192.168.5.247(192.168.5.247:3306)
Wed Dec 4 12:20:10 2019 - [info] 192.168.5.93(192.168.5.93:3306)
Wed Dec 4 12:20:10 2019 - [info] 192.168.5.94(192.168.5.94:3306)
Wed Dec 4 12:20:10 2019 - [info] Alive Slaves:
Wed Dec 4 12:20:10 2019 - [info] 192.168.5.93(192.168.5.93:3306) Version=5.7.21-log (oldest major version between slaves) log-bin:enabled
Wed Dec 4 12:20:10 2019 - [info] Replicating from 192.168.5.247(192.168.5.247:3306)
Wed Dec 4 12:20:10 2019 - [info] Primary candidate for the new Master (candidate_master is set)
Wed Dec 4 12:20:10 2019 - [info] 192.168.5.94(192.168.5.94:3306) Version=5.7.21-log (oldest major version between slaves) log-bin:enabled
Wed Dec 4 12:20:10 2019 - [info] Replicating from 192.168.5.247(192.168.5.247:3306)
Wed Dec 4 12:20:10 2019 - [info] Current Alive Master: 192.168.5.247(192.168.5.247:3306)
Wed Dec 4 12:20:10 2019 - [info] Checking slave configurations..
Wed Dec 4 12:20:10 2019 - [info] Checking replication filtering settings..
Wed Dec 4 12:20:10 2019 - [info] binlog_do_db= , binlog_ignore_db=
Wed Dec 4 12:20:10 2019 - [info] Replication filtering check ok.
Wed Dec 4 12:20:10 2019 - [info] GTID (with auto-pos) is not supported
Wed Dec 4 12:20:10 2019 - [info] Starting SSH connection tests..
Wed Dec 4 12:20:12 2019 - [info] All SSH connection tests passed successfully.
Wed Dec 4 12:20:12 2019 - [info] Checking MHA Node version..
Wed Dec 4 12:20:13 2019 - [info] Version check ok.
Wed Dec 4 12:20:13 2019 - [info] Checking SSH publickey authentication settings on the current master..
Wed Dec 4 12:20:13 2019 - [info] HealthCheck: SSH to 192.168.5.247 is reachable.
Wed Dec 4 12:20:13 2019 - [info] Master MHA Node version is 0.56.
Wed Dec 4 12:20:13 2019 - [info] Checking recovery script configurations on 192.168.5.247(192.168.5.247:3306)..
Wed Dec 4 12:20:13 2019 - [info] Executing command: save_binary_logs --command=test --start_pos=4 --binlog_dir=/data/mysql/logs/bin-log --output_file=/tmp/save_binary_logs_test --manager_version=0.56 --start_file=mysql-bin.000008
Wed Dec 4 12:20:13 2019 - [info] Connecting to root@192.168.5.247(192.168.5.247:22)..
Creating /tmp if not exists.. ok.
Checking output directory is accessible or not..
ok.
Binlog found at /data/mysql/logs/bin-log, up to mysql-bin.000008
Wed Dec 4 12:20:13 2019 - [info] Binlog setting check done.
Wed Dec 4 12:20:13 2019 - [info] Checking SSH publickey authentication and checking recovery script configurations on all alive slave servers..
Wed Dec 4 12:20:13 2019 - [info] Executing command : apply_diff_relay_logs --command=test --slave_user='monitor' --slave_host=192.168.5.93 --slave_ip=192.168.5.93 --slave_port=3306 --workdir=/tmp --target_version=5.7.21-log --manager_version=0.56 --relay_log_info=/data/mysql/relay-log.info --relay_dir=/data/mysql/data/ --slave_pass=xxx
Wed Dec 4 12:20:13 2019 - [info] Connecting to root@192.168.5.93(192.168.5.93:22)..
Checking slave recovery environment settings..
Opening /data/mysql/relay-log.info ... ok.
Relay log found at /data/mysql/logs/relay-log, up to relay-bin.000015
Temporary relay log file is /data/mysql/logs/relay-log/relay-bin.000015
Testing mysql connection and privileges..mysql: [Warning] Using a password on the command line interface can be insecure.
done.
Testing mysqlbinlog output.. done.
Cleaning up test file(s).. done.
Wed Dec 4 12:20:13 2019 - [info] Executing command : apply_diff_relay_logs --command=test --slave_user='monitor' --slave_host=192.168.5.94 --slave_ip=192.168.5.94 --slave_port=3306 --workdir=/tmp --target_version=5.7.21-log --manager_version=0.56 --relay_log_info=/data/mysql/relay-log.info --relay_dir=/data/mysql/data/ --slave_pass=xxx
Wed Dec 4 12:20:13 2019 - [info] Connecting to root@192.168.5.94(192.168.5.94:22)..
Checking slave recovery environment settings..
Opening /data/mysql/relay-log.info ... ok.
Relay log found at /data/mysql/logs/relay-log, up to relay-bin.000015
Temporary relay log file is /data/mysql/logs/relay-log/relay-bin.000015
Testing mysql connection and privileges..mysql: [Warning] Using a password on the command line interface can be insecure.
done.
Testing mysqlbinlog output.. done.
Cleaning up test file(s).. done.
Wed Dec 4 12:20:14 2019 - [info] Slaves settings check done.
Wed Dec 4 12:20:14 2019 - [info]
192.168.5.247(192.168.5.247:3306) (current master)
+--192.168.5.93(192.168.5.93:3306)
+--192.168.5.94(192.168.5.94:3306)

Wed Dec 4 12:20:14 2019 - [info] Checking replication health on 192.168.5.93..
Wed Dec 4 12:20:14 2019 - [info] ok.
Wed Dec 4 12:20:14 2019 - [info] Checking replication health on 192.168.5.94..
Wed Dec 4 12:20:14 2019 - [info] ok.
Wed Dec 4 12:20:14 2019 - [info] Checking master_ip_failover_script status:
Wed Dec 4 12:20:14 2019 - [info] /usr/local/bin/master_ip_failover --command=status --ssh_user=root --orig_master_host=192.168.5.247 --orig_master_ip=192.168.5.247 --orig_master_port=3306
Wed Dec 4 12:20:14 2019 - [info] OK.
Wed Dec 4 12:20:14 2019 - [warning] shutdown_script is not defined.
Wed Dec 4 12:20:14 2019 - [info] Got exit code 0 (Not master dead).

MySQL Replication Health is OK.
[root@test247 ~]#

MySQL MHA /usr/share/perl5/vendor_perl/MHA/ServerManager.pm, ln301] install_driver(mysql) failed: Attempt to reload DBD/mysql.pm aborted的更多相关文章

  1. mha安装报错 [error][/usr/share/perl5/vendor_perl/MHA/MasterMonitor.pm, ln361] None of slaves can be master. Check failover configuration file or log-bin settings in my.cnf

    查找资料 参考 http://blog.51cto.com/16769017/1878451 解决方法: 在两个从库上开启二进制日志即可(花了 一天时间,找不到解决方法,最后还是靠自己的理解及测试解决 ...

  2. sendEmail报错:at /usr/share/perl5/vendor_perl/IO/Socket/SSL.pm

    sendEmail发送邮件是出现以下报错: *******************************************************************  Using the ...

  3. CentOS 7 下sendEmail发邮件失败,提示invalid SSL_version specified at /usr/share/perl5/vendor_perl/IO/Socket/SSL.pm line 415.

    系统环境CentOS Linux release 7.2.1511 (Core) sendEmail发送邮件是出现以下报错:************************************** ...

  4. mysql高可用研究(一) 主从+MHA架构 (转)

    最近在研究mysql的高可用架构,自己想总结下常用的高可用方案都有哪些.有哪些优缺点以及应用的场景?搞得是头昏脑涨,天昏地暗,看了诸多资料,每次都觉得公说公有理婆说婆有理.其实嘛,大家说的都有一定的道 ...

  5. mysql高可用研究(一) 主从+MHA架构

    最近在研究mysql的高可用架构,自己想总结下常用的高可用方案都有哪些.有哪些优缺点以及应用的场景?搞得是头昏脑涨,天昏地暗,看了诸多资料,每次都觉得公说公有理婆说婆有理.其实嘛,大家说的都有一定的道 ...

  6. Mysql 5.7 CentOS 7 安装MHA

    Table of Contents 1. MHA简介 1.1. 功能 1.2. MHA切换逻辑 1.3. 工具 2. 环境 2.1. 软件 2.2. 环境 3. Mysql 主从复制 3.1. Mys ...

  7. 执行scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysqldb命令时一直报错:

    Can't locate Data/Dumper.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /u ...

  8. mysql MHA报错 Can't exec "mysqlbinlog": No such file or directory at /usr/local/share/perl5/MHA/BinlogManager.pm line 99.

    如果发现如下错误: Can't exec "mysqlbinlog": No such file or directory at /usr/local/share/perl5/MH ...

  9. MySQL高可用架构之基于MHA的搭建

    一.MySQL MHA架构介绍: MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Fa ...

随机推荐

  1. sql 删除表数据并使ID自增重置

    方法1:truncate table 你的表名//这样不但将数据全部删除,而且重新定位自增的字段 方法2:delete from 你的表名dbcc checkident(你的表名,reseed,0)  ...

  2. 计算机硬件-CPU

    计算机硬件-CPU 冯.诺依曼计算机体系 1.计算机硬件设备由存储器.运算器.控制器.输入设备和输出设备五部分 2.采取二进制形式和指令 3.将程序(数据和指令序列)预先存放在主存储器中,使计算机在工 ...

  3. 队列&生产者消费者模型

    队列 ipc机制:进程通讯 管道:pipe 基于共享的内存空间 队列:pipe+锁 queue from multiprocessing import Process,Queue ### 案例一 q ...

  4. 基于Docker快速搭建ELK【华为云技术分享】

    [摘要] 本文基于自建的Docker平台速搭建一套完整的ELK系统,相关的镜像直接从Docker Hub上获取,可以快速实现日志的采集和分析检索. 准备镜像 l 获取ES镜像:docker pull ...

  5. MySQL必知必会(正则表达式)

    SELECT prod_name FROM products ' #检索列prod_name包含文本1000的所有行. ORDER BY prod_name; SELECT prod_name FRO ...

  6. Thymeleaf语法

    Thymeleaf 官网:https://www.thymeleaf.org/ 1.入门示例 (1)在controller编写一个请求,放进去一些数据: @RequestMapping("/ ...

  7. SpringBoot使用freemarker模板

    导入依赖 <!-- 添加freemarker模版的依赖 --> <dependency> <groupId>org.springframework.boot< ...

  8. 2017 ACM/ICPC 沈阳 L题 Tree

    Consider a un-rooted tree T which is not the biological significance of tree or plant, but a tree as ...

  9. Remember the Word (UVA-1402)

    Neal is very curious about combinatorial problems, and now here comes a problem about words. Knowing ...

  10. 基于centos7.3 redhat7.3安装LAMP(php7.0 php7.1)生产环境实践