时间:2021-07-01 10:21:17 帮助过:2人阅读
flush privileges; (重新刷新一下)
flush tables with read lock; (锁死)
show master status; #一定要记住前两列的内容,一会会用到
5. 设置从(slave)
vim /etc/my.cnf #修改或增加
server-id = 2 #这个数值不能和主一样
可选参数:replicate-do-db=db1,db2 和 replicate-ignore-db=db1,db2 #意义同主的那两个可选参数
service mysqld restart
拷贝主的db1库数据到从:mysqldump -uroot -S /tmp/mysql2.sock -p123456 db1 > db1.sql; mysql -uroot -p -e "create database db1"; mysql -uroot -p db1 < db1.sql
mysql -uroot -p #登陆从的mysql
slave stop;
change master to master_host=‘127.0.0.1‘, master_port=3306, master_user=‘repl‘, master_password=‘123123‘, master_log_file=‘mysql-bin.000006‘, master_log_pos=474952;
/etc/init.d/mysqldslave restart
slave start;
主上: mysql -uroot -S /tmp/mysql2.sock -p123456 -e "unlock tables"
从上查看从的状态: show slave status\G;(要两个ok才成功)
6. 测试主从
unlock tables;(解锁)
主上清空db1库的db表 :use db1; select count(*) from db"; truncate table db;
进入slave,查看db1库db表: use db1; select count(*) from db";
主上删除表db: drop table db;
从上看db表不存在了
建议: MySQL主从机制比较脆弱,谨慎操作。如果重启master,务必要先把slave停掉,也就是说需要在slave上去执行 slave stop 命令,然后再去重启master的mysql服务,否则很有可能就会中断了。当然重启完后,还需要把slave给开启 slave start.
mysql主从配置
标签: