您好,欢迎访问三七文档
MySQL主主同步配置步骤作者:字体:[增加减小]类型:转载时间:2013-05-03我要评论创建同步用户、修改/etc/my.cnf配置文件,为其添加以下内容、分别重启服务器ODDEVEN上的mysql服务MySQL主主同步配置服务器名IP系统MySQLodd.example.com192.168.1.116rhel-5.85.5.16even.example.com192.168.1.115rhel-5.85.5.16假设要同步的库是db_rocky㈠创建同步用户在ODD上复制代码代码如下:mysqlgrantreplicationslaveon*.*to'water'@'192.168.1.115'identifiedby'cdio2010';QueryOK,0rowsaffected(0.00sec)mysqlflushprivileges;QueryOK,0rowsaffected(0.00sec)在EVEN上复制代码代码如下:mysqlgrantreplicationslaveon*.*to'water'@'192.168.1.116'identifiedby'cdio2010';QueryOK,0rowsaffected(0.11sec)mysqlflushprivileges;QueryOK,0rowsaffected(0.00sec)㈡修改/etc/my.cnf配置文件,为其添加以下内容:在ODD上复制代码代码如下:[mysqld]binlog-do-db=db_rocky#需要记录进制日志的数据库.如果有多个数据库可用逗号分隔,或者使用多个binlog-do-db选项binlog-ignore-db=mysql#不需要记录进制日志的数据库.如果有多个数据库可用逗号分隔,或者使用多个binlog-do-db选项replicate-do-db=db_rocky#需要进行同步的数据库.如果有多个数据库可用逗号分隔,或者使用多个replicate-do-db选项replicate-ignore-db=mysql,information_schema#不需要同步的数据库.如果有多个数据库可用逗号分隔,或者使用多个replicate-ignore-db选项#同步参数:#保证slave挂在任何一台master上都会接收到另一个master的写入信息log-slave-updatessync_binlog=1auto_increment_offset=1auto_increment_increment=2slave-skip-errors=all#过滤掉一些没啥大问题的错误在EVEN上复制代码代码如下:[mysqld]server-id=2#设置一个不同的id、注意这里在my.cnf里面有个默认值是1、把默认值改掉、而不能新增一个server-idbinlog-do-db=db_rocky#需要记录二进制日志的数据库.如果有多个数据库可用逗号分隔,或者使用多个binlog-do-db选项binlog-ignore-db=mysql#不需要记录进制日志的数据库.如果有多个数据库可用逗号分隔,或者使用多个binlog-ignore-db选项#需要同步的数据库replicate-do-db=db_rocky#需要进行同步的数据库.如果有多个数据库可用逗号分隔,或者使用多个binlog-do-db选项replicate-ignore-db=mysql,information_schema#不需要同步的数据库.如果有多个数据库可用逗号分隔,或者使用多个binlog-do-db选项#同步参数:#保证slave挂在任何一台master上都会接收到另一个master的写入信息log-slave-updatessync_binlog=1auto_increment_offset=2auto_increment_increment=2slave-skip-errors=all#过滤掉一些没啥大问题的错误㈢分别重启服务器ODDEVEN上的mysql服务㈣分别在服务器ODD、EVEN上查看做为主服务器状态在ODD复制代码代码如下:mysqlflushtableswithreadlock;#防止进入新的数据QueryOK,0rowsaffected(0.00sec)mysqlshowmasterstatus\G;***************************1.row***************************File:mysql-bin.000007Position:438Binlog_Do_DB:db_rockyBinlog_Ignore_DB:mysql1rowinset(0.00sec)在EVEN复制代码代码如下:mysqlflushtableswithreadlock;QueryOK,0rowsaffected(0.00sec)mysqlshowmasterstatus\G;***************************1.row***************************File:mysql-bin.000008Position:107Binlog_Do_DB:db_rockyBinlog_Ignore_DB:mysql1rowinset(0.01sec)㈤分别在服务器ODD、EVEN上用changemaster语句指定同步位置:在ODD复制代码代码如下:mysqlchangemastertomaster_host='192.168.1.115',master_user='water',master_password='cdio2010',-master_log_file='mysql-bin.000008',master_log_pos=107;QueryOK,0rowsaffected(0.05sec)在EVEN复制代码代码如下:mysqlchangemastertomaster_host='192.168.1.116',master_user='water',master_password='cdio2010',-master_log_file='mysql-bin.000007',master_log_pos=438;QueryOK,0rowsaffected(0.15sec)注:master_log_file,master_log_pos由上面主服务器查出的状态值中确定master_log_file对应File,master_log_pos对应Position在ODDEVEN上复制代码代码如下:mysqlunlocktables;QueryOK,0rowsaffected(0.00sec)㈥分别在服务器ODD、EVEN上启动从服务器线程复制代码代码如下:mysqlstartslave;QueryOK,0rowsaffected(0.00sec)分别在服务器ODD、EVEN上查看从服务器状态:复制代码代码如下:ODD上mysqlshowslavestatus\G;***************************1.row***************************主要关注以下2个参数:......Slave_IO_Running:YesSlave_SQL_Running:Yes......EVEN上:mysqlshowslavestatus\G;***************************1.row***************************主要关注以下2个参数:......Slave_IO_Running:YesSlave_SQL_Running:Yes......㈦测试复制代码代码如下:EVEN上mysqlshowdatabases;+--------------------+|Database|+--------------------+|information_schema||db_rocky||mysql||performance_schema||test|+--------------------+5rowsinset(0.00sec)mysqlusedb_rocky;Databasechangedmysqlshowtables;Emptyset(0.00sec)mysqlcreatetablewater(idint);QueryOK,0rowsaffected(0.04sec)mysqlinsertintowatervalues(1);QueryOK,1rowaffected(0.01sec)mysqlcommit;QueryOK,0rowsaffected(0.00sec)在ODD上mysqlshowtables;+--------------------+|Tables_in_db_rocky|+--------------------+|t_rocky||water|+--------------------+2rowsinset(0.00sec)mysqlselect*fromwater;+------+|id|+------+|1|+------+1rowinset(0.00sec)
本文标题:mysql主从备份
链接地址:https://www.777doc.com/doc-2889271 .html