DBMNG数据库管理与应用

科学是实事求是的学问,来不得半点虚假。
当前位置:首页 > MySQL > 技术手册

MySQL数据双向同步解决方案(推荐)

1. mysql数据同步实现原理 
即读写操作在两台服务器上进行,每台服务器即主也是从。当其中的任何一台服务器收到操作请求时,其进行相应的数据变化,并把变化的数据复制到另一台服务器中。 

2. 配置服务器master 初始服务器 
通过mysql工具连接服务器master后,新建两个数据库audit,idm。导入初始化数据库文件,完成数据库的初始化 给用户授权 
从开始菜单中打开mysql5的命令行,输入正确的密码,进入mysql控制台命令行模式后,输入如下命令: 
#授权来自192.168.0.189的backup用户拥有对所有库的复制数据的权限,该用户的密码设为123456 
GRANT REPLICATION SLAVE ON *.* TO 'backup'@'192.168.0.189' IDENTIFIED BY '123456'; 
#刷新权限设置 FLUSH PRIVILEGES  修改配置文件 
修改主目录中的my.inf文件,在mysqld下面加入如下内容 server-id = 1 log-bin=mysql-bin binlog-do-db = audit binlog-do-db = idm 
binlog-ignore-db = information_schema binlog-ignore-db = mysql binlog-ignore-db = test 
master-host     = 192.168.0.189 master-user     = backup master-password = 123456 master-port     = 3306 
replicate-do-db = audit replicate-do-db = idm master-connect-retry = 60 

3. 配置服务器slave 初始服务器 
通过mysql工具连接服务器ha002后,新建两个数据库audit,idm。导入初始化数据库文件,完成数据库的初始化 给用户授权 
从开始菜单中打开mysql5的命令行,输入正确的密码,进入mysql控制台命令行模式后,输入如下命令: 
#授权来自192.168.0.188的backup用户拥有对所有库的复制数据的权限,该用户的密码设为123456 
GRANT REPLICATION SLAVE ON *.* TO 'backup'@'192.168.0.188' IDENTIFIED BY '123456'; 
#刷新权限设置 FLUSH PRIVILEGES  修改配置文件 
修改主目录中的my.inf文件,在mysqld下面加入如下内容 server-id = 2 
master-host     = 192.168.0.188 master-user     = backup master-password = 123456 master-port     = 3306 relicate-do-db = audit replicate-do-db = idm master-connect-retry = 60 log-bin=mysql-bin binlog-do-db = audit binlog-do-db = idm 
binlog-ignore-db = information_schema 
var cpro_psid ="u2572954"; var cpro_pswidth =966; var cpro_psheight =120;
binlog-ignore-db = mysql binlog-ignore-db = test 

4. 启动两台mysql 
在两台服务器上,均完成如下操作: 
从开始菜单中打开mysql5的命令行,输入正确的密码,进入mysql控制台命令行模式后,输入如下命令: #开启从服务器 slave start;  服务状态检查 
在两台服务器上,均完成如下操作: 
从开始菜单中打开mysql5的命令行,输入正确的密码,进入mysql控制台命令行模式后,输入如下命令: #显示主服务器状态 Show master status; #显示从服务器状态 Show slave status /G; 查看连接配置状态 
Slave_IO_Running: Yes -----此项为No代表与主库连接有问题。 Slave_SQL_Running: Yes ----如果此项为NO代表配置有问题。 查看对比pos点以及记录文件是否一致 如果不一致,在从MySQL运行 
#改变从服务器的pos点为98,记录文件为mysql-bin.000001 
CHANGE MASTER TO Master_Log_File='mysql-bin.000001',Master_Log_Pos=98; 运行此命令前需要stop slave;之后再start slave; 

5. 双向同步测试 
检查当在两台机器的任何一台mysql中修改数据时,另外的那台的数据是否也修改。 
关闭其中一台mysql的服务后,更新另一台mysql的数据,再启动已停止的那台mysql服务器,查看数据是否修改。

本站文章内容,部分来自于互联网,若侵犯了您的权益,请致邮件chuanghui423#sohu.com(请将#换为@)联系,我们会尽快核实后删除。
Copyright © 2006-2023 DBMNG.COM All Rights Reserved. Powered by DEVSOARTECH            豫ICP备11002312号-2

豫公网安备 41010502002439号