mysql cluster解决方案

Mysqlcluster实验1测试环境:1.1软件系统版本Gentoo3.8.13Mysql5.1.67Haproxy-1.4.241.2架构1.3主机信息hostnameNetworkinterfaceIPaddrnote主机编号Mysq..

mysql cluster

重启mysql

/etc/init.d/mysql restart

在主机3-4上

Mysql –uroot –p

Change master to

Master_host=’192.168.254.111’,

Master_port=3306,

Master_user=’copy’,

Master_password=’copy’,

Master_log_file=’mysql-bin.000005’,

Master_log_pos=’106’;

Start slave;

Show slave status;

测试

稿定AI文案 稿定AI文案

小红书笔记、公众号、周报总结、视频脚本等智能文案生成平台

稿定AI文案 45 查看详情 稿定AI文案

同上,分别在1和2上创建1个数据库,看是否同步

5 安装xinetd

在主机1-6上

Emerge –av xinetd

Rc-update add xinetd default

/etc/init.d/xinetd start

在主机1-2上

Vi /etc/xinetd.d/mysqlchk

## /etc/xinetd.d/mysqlchk#service mysqlchk_write{flags= REUSEsocket_type = streamport= 9200wait= nouser= nobodyserver= /opt/mysqlchk_status.shlog_on_failure += USERIDdisable= noonly_from =192.168.254.0/24}service mysqlchk_replication{flags= REUSEsocket_type = streamport= 9201wait= nouser= nobodyserver= /opt/mysqlchk_replication.shlog_on_failure += USERIDdisable= noonly_from = 192.168.254.0/24}

在主机1上

Vi /opt/mysqlchk_status.sh

#!/bin/bashMYSQL_HOST=”localhost”MYSQL_PORT=”3306″MYSQL_USERNAME=”root”MYSQL_PASSWORD=”root”ERROR_MSG=`/usr/bin/mysql –host=$MYSQL_HOST –port=$MYSQL_PORT –user=$MYSQL_USERNAME –password=$MYSQL_PASSWORD -e “show databases;” 2>dev/null`if [ “$ERROR_MSG” != “” ]then# mysql is fine, return http 200/bin/echo -e “HTTP/1.1 200 OKrn”/bin/echo -e “Content-Type: Content-Type:textrn”/bin/echo -e “rn”/bin/echo -e “MySQL is running.rn”/bin/echo -e “rn”else#mysql is down, return http 503/bin/echo -e “HTTP/1.1 503 Service Unavailablern”/bin/echo -e “Content-Type: Content-Type:text/plainrn”/bin/echo -e “rn”/bin/echo -e “MYSQL is *down*.rn”/bin/echo -e “rn”fi

Vi /opt/mysqlchk_replication.sh

#!/bin/bashMYSQL_HOST=”localhost”MYSQL_PORT=”3306″MYSQL_USERNAME=”root”MYSQL_PASSWORD=”root”/usr/bin/mysql –host=$MYSQL_HOST –port=$MYSQL_PORT –user=$MYSQL_USERNAME –password=$MYSQL_PASSWORD -e “show slave status;” > /tmp/check_repl.txtiostat=`grep “Slave_IO_Running” /tmp/check_repl.txt | awk ‘{print $2}’`sqlstat=`grep “Slave_SQL_Running” /tmp/check_repl.txt | awk ‘{print $2}’`#echo iostat:$iostat and sqlstat:$sqlstatif [ “$iostat” = “No” ] || [ “$sqlstat” = “No” ];then#mysql is down,return http 503/bin/echo -e “HTTP/1.1 503 Service Unavailablern”/bin/echo -e “Content-Type: Content-Type:text/plainrn”/bin/echo -e “rn”/bin/echo -e “MySQL replication is *down*.rn”/bin/echo -e “rn”else#mysql is fine,return http 200/bin/echo -e “HTTP/1.1 200 OKrn”/bin/echo -e “Content-Type: Content-Type:text/plainrn”/bin/echo -e “rn”/bin/echo -e “MySQL replication is running.rn”/bin/echo -e “rn”fi

在主机2上

Vi /opt/mysqlchk_status.sh

#!/bin/bashMYSQL_HOST=”localhost”MYSQL_PORT=”3306″MYSQL_USERNAME=”root”MYSQL_PASSWORD=”root”ERROR_MSG=`/usr/bin/mysql –host=$MYSQL_HOST –port=$MYSQL_PORT –user=$MYSQL_USERNAME –password=$MYSQL_PASSWORD -e “show databases;” 2>dev/null`if [ “$ERROR_MSG” != “” ]then# mysql is fine, return http 200/bin/echo -e “HTTP/1.1 200 OKrn”/bin/echo -e “Content-Type: Content-Type:textrn”/bin/echo -e “rn”/bin/echo -e “MySQL is running.rn”/bin/echo -e “rn”else#mysql is down, return http 503/bin/echo -e “HTTP/1.1 503 Service Unavailablern”/bin/echo -e “Content-Type: Content-Type:text/plainrn”/bin/echo -e “rn”/bin/echo -e “MYSQL is *down*.rn”/bin/echo -e “rn”fi

Vi /opt/mysqlchk_replication.sh

#!/bin/bashMYSQL_HOST=”localhost”MYSQL_PORT=”3306″MYSQL_USERNAME=”root”MYSQL_PASSWORD=”root”/usr/bin/mysql –host=$MYSQL_HOST –port=$MYSQL_PORT –user=$MYSQL_USERNAME –password=$MYSQL_PASSWORD -e “show slave status;” > /tmp/check_repl.txtiostat=`grep “Slave_IO_Running” /tmp/check_repl.txt | awk ‘{print $2}’`sqlstat=`grep “Slave_SQL_Running” /tmp/check_repl.txt | awk ‘{print $2}’`#echo iostat:$iostat and sqlstat:$sqlstatif [ “$iostat” = “No” ] || [ “$sqlstat” = “No” ];then#mysql is down,return http 503/bin/echo -e “HTTP/1.1 503 Service Unavailablern”/bin/echo -e “Content-Type: Content-Type:text/plainrn”/bin/echo -e “rn”/bin/echo -e “MySQL replication is *down*.rn”/bin/echo -e “rn”else#mysql is fine,return http 200/bin/echo -e “HTTP/1.1 200 OKrn”/bin/echo -e “Content-Type: Content-Type:text/plainrn”/bin/echo -e “rn”/bin/echo -e “MySQL replication is running.rn”/bin/echo -e “rn”fi

在主机3-6上

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/560960.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年11月10日 00:57:30
下一篇 2025年11月10日 01:02:51

相关推荐

发表回复

登录后才能评论
关注微信