[转]mysql主从同步配置脚本,支持宝塔lnmp环境。
该脚本合适空数据库,如果有数据的请先把需要同步的数据库进行锁定,导出数据库上传到从服务器还原到需要同步的数据库再执行如下两个脚本。操作完成后再解锁主服务器的数据库
如数据库有数据的建议先进行备份再操作。
首先需要确认两台服务器环境下都要安装mysql,并关闭防火墙(iptables -F)
以宝塔Linux面板6.9.9为例,在服务器中,点击打开“宝塔SSH终端”,执行对应服务器命令:
主服务器执行脚本:
wget https://vip.123pan.cn/1831559668/coshkimg/assets/file/2020/M_slave_mysql_1.sh
sh M_slave_mysql_1.sh
主服务器执行脚本选项释意:
mysql主服务器脚本:
第一步:Please enter the database root password(输入主服务器mysql root密码):
第二步:Create a database backup user(创建备份复制用户):back
第三步:Database backup user password(输入创建备份复制用户的密码):a123456
第三步:Please enter service ID(填写server-id 默认为1):
执行结果:
File值:mysql-bin.000175 Position值:232335 请记好,一会配置从服务器需要用到
从服务器执行脚本:
wget https://vip.123pan.cn/1831559668/coshkimg/assets/file/2020/M_slave_mysql_2.sh
sh M_slave_mysql_2.sh
从服务器执行脚本选项释意:
第一步:Please enter the database root password(输入从服务器mysql root密码):
第二步:Enter the server Ip(输入主服务器ip):
第三步:Enter the backup copy user(输入备份复制用户,上面填写的是:back):
第四步:Backup copy user password(输入备份复制用户的密码:a123456):
第五步:Fill in the value of File (For example: mysql-bin.xxxxxx)(输入Fill值:mysql-bin.000175 ):
第六步:Position value (for example: 107)(输入Position值:232335):
第七步:Please enter service ID(填写server-id id值要为2):
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
以上这两个参数的值为Yes,即说明配置成功!由于配置好后存在链接主服务器延迟可能会出现Slave_IO_Running: Connecting
你可以在命令行下执行:mysql -u root -p 登录数据库执行:SHOW SLAVE STATUS\G 查看状态是否为yes
同时请注意服务器的安全组和系统防火墙是否开放3306端口,否则无法同步成功。
--------------------------------------------------------------
提取命令配置:
1、主配:
mysql -uroot -prootpasswd
grant replication slave on *.* to 'back'@'%' identified by 'a123456' with grant option
2、从配:
mysql -uroot -prootpasswd
stop slave;
change master to master_host='192.168.1.222',master_port=3306,master_user='back',master_password='a123456',master_log_file='mysql-bin.000361' ,master_log_pos=82190;
start slave;
默认分类 2020-01-22 22:04:15 通过 网页 浏览(1840)
共有4条评论!
主服务器和从服务器做反向操作,只保持server-id不变,即可相互同步,已测试成功。
三主,同时也是三从,环形同步,通过这个方法实现,方式:1主2从,2主3从,3主1从。如果网络速度允许,理论上可以无限扩展;例如:30主30从,相当于在每个省建立一个容灾服务器。
环形(链式)同步,注意参数添加:
log-slave-updates
sync_binlog=100
slave-skip-errors=all
auto_increment_increment=9
auto_increment_offset=10
检查:
binlog-ignore-db=mysql
replicate-ignore-db=mysql