MYSQL的master/slave数据同步配置
我的测试环境.基本上数据是瞬间同步,希望对大家有帮助
redhat 9.0
mysql3.23.57
mysql数据同步备份
A服务器: 192.168.1.2 主服务器master
B服务器: 192.168.1.3 副服务器slave
A服务器设置
#mysql –u root –p
mysql>GRANT FILE ON *.* TO backup@192.168.1.3 IDENTIFIED BY ‘1234’;
mysql>\exit
上面是Master开放一个账号backup密码1234给IP:192.168.1.3有档案处理的权限
mysqladmin –u root –p shutdown
备份Master所有数据库..通常都用tar指令.
#tar –cvf /tmp/mysql.tar /var/lib/mysql
注意:tar的时候,MySQL是要在stop情况下
在A机器上修改/etc/my.cnf
在[mysqld]区段内加入参数
log-bin
server-id=1
sql-bin-update-same
binlog-do-db=vbb
重启A服务器mysql
此时因为有加入log-bin参数,因此开始有index产生了,在/var/lib/mysql目录下有.index档案纪录数据库的异动log.
B服务器设置
设定/etc/my.cnf
在[mysqld]区段加入
master-host=192.168.1.2
master-user=backup
master-password=1234
master-port=3306
server-id=2
master-connect-retry=60 预设重试间隔60秒
replicate-do-db=vbb 告诉slave只做vbb数据库的更新
log-slave-updates
将A上的mysql.tar copy到B上
用ftp传B的/tmp
9.解压缩
#cd /var/lib/
状况测试
1.A跟B网络及服务都正常情况下,由A端变化数据后,到B端浏览数据,检视是否有进行replication?!
2.模拟B当机,或是B不一定需要一直跟A有连接.
将由A端变化数据后,到B端浏览数据,B点应该是没有数据变化的
#tar xvf /tmp/mysql-snapshot.tar
#chown –R mysql:mysql mysql
1重启B服务器的mysql
这时在/var/lib/mysql目录会出现master.info,此档案纪录了Master MySQL server的信息.
状况测试
1.A跟B网络及服务都正常情况下,由A端变化数据后,到B端浏览数据,检视是否有进行replication?!
2.模拟B当机,或是B不一定需要一直跟A有连接.
将由A端变化数据后,到B端浏览数据,B点应该是没有数据变化的
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn