mysql 主从配置
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 主从配置相关的知识,希望对你有一定的参考价值。
实例:准备两台虚拟机,系统CentOS6.5 mysql免编译源码包
以master和slave命名两台主机;
master:192.168.3.116
slave:192.168.3.251 (地址请根据实际情况配置)
mysql包的下载及安装详见:http://chinawu.blog.51cto.com/10692884/1739296
编辑配置文件vim /etc/my.cnf
master:
server-id = 1
log-bin=mysql.bin(自定义)
binlog-do-db=test(对test数据库做主从备份)
保存退出,重启数据库 service mysqld restart
进入数据库 mysql -uroot -p
授权从库权限
mysql>grant replication slave on *.* to ‘repl‘@‘192.168.3.251(从库IP)‘ identified by ‘123456‘
从库备份数据库就要访问主库,授权的作用就是给予从库权限,从库使用repl为用户名,123456位密码,访问主数据库
mysql>flush tables with read lock;锁上数据表,不让写入,从此节点开始备份
mysql>show master status;
得到要备份的当前节点;
slave:
server-id = 2(与master的值不同即可)
log-bin=mysql.bin(自定义)
binlog-do-db=test(对test数据库做主从备份)
进入数据库:mysql -uroot -p
mysql>slave stop;
mysql> change master to master_host=‘192.168.3.116(主IP)‘,master_port=3306,master_user=‘repl‘,master_password=‘123456‘,master_log_file=‘mysql-bin.000002‘,master_log_pos=264;
其中master_log_file和master_log_pos为主show master status得到的数据
mysql>slave start;
并在主库中把表解锁,unlock tables;
从库中mysql>show slave status\G查看状态;当出现
两个YES表示主从数据库搭建成功;
测试:在主test中创建表,删除表,查看从库中db1表的变化情况。
注:在做主从之前,两台主机上的数据库信息应一样,
先备份主要同步的数据库mysqldump -uroot -p db1 > 1.sql
拷贝到从上 scp 命令(两台主机都要yum 安装scp才可使用)
从上还原主的数据库 mysql -uroot -p < 1.sql
对数据库操作时,要先停掉从库,slave stop 操作完在开启,否则会同步报错;
以上是关于mysql 主从配置的主要内容,如果未能解决你的问题,请参考以下文章