MySQL主从

实现三台主服务器的MySQL数据库同步到一台从服务器

 

一、相关配置文件:

 

主一:

赋权

GRANT FILE,SELECT,REPLICATION SLAVE ON *.* to 'repl'@'192.168.1.5' identified by 'repl_password';

主二:

赋权

GRANT FILE,SELECT,REPLICATION SLAVE ON *.* to 'repl'@'192.168.1.5' identified by 'repl_password';

主三:

赋权

GRANT FILE,SELECT,REPLICATION SLAVE ON *.* to 'repl'@'192.168.1.5' identified by 'repl_password';

从(注释部分根据需要决定是否启用)

赋权

grant shutdown on *.* to shutdown@'192.168.1.5' identified by 'shutdown';

 

二、主库的导出和从库的导入

mysqldump -u'username' -p'password' --master-data=1 dbname > dbname.sql 或则

mysqldump -u'username' -p'password' --master-data=2 dbname > dbname.sql

 当--master-data值为1的时候,mysqldump出来的文件会有如下语句

CHANGE MASTER TO MASTER_LOG_FILE='mysql_bin.001334', MASTER_LOG_POS=960646;

默认情况下这个值是1当这个值是2的时候,也会有这条语句,但是会将其注释掉。

登录从服务器,执行 stop slave

在从库执行导入,如:

mysql -u'username' -p'password'  -P3306 -S /tmp/mysql.sockLogdb dbname < dbname.mysql

如果--master-data值为1,可以直接start slave如果为2,则还需追加执行以下语句:

change master to master_host='192.168.1.2,master_user='repl',master_password=repl_password',master_port=3306,master_log_file='mysql_bin.001334',master_log_pos=960646;

三、相关命令

从服务器开启关闭MySQL

/usr/local/mysql/bin/mysqld_multi start 1,2,3
/usr/local/mysql/bin/mysqld_multi stop 1
/usr/local/mysql/bin/mysqladmin shutdown 1 -S /tmp/mysql.sockLogdb

 

从服务器登录MySQL

mysql -uroot -p -P 3306 -S /tmp/mysql.sockLogdb
mysql -uroot -p -P 3307 -S /tmp/mysql.sockPassportdb
mysql -uroot -p -P 3308 -S /tmp/mysql.sockGamedb

 

查看主从状态

show master status;

 

show slave status /G;
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

如果此二行都是yes,就表示主从同步成功

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值