mysql怎么设置热备 mysql预热( 三 )


mysql flush privileges;
3.2修改配置文件my.cnf
服务器A
[mysqld]
server-id = 1
log-bin=mysql-bin
binlog-do-db = test
binlog-ignore-db = mysql
#主-主形式需要多添加的部分
log-slave-updates
sync_binlog = 1
auto_increment_offset = 1
auto_increment_increment = 2
replicate-do-db = test
replicate-ignore-db = mysql,information_schema
服务器B:
[mysqld]
server-id = 2
log-bin=mysql-bin
master-slave need
replicate-do-db = test
replicate-ignore-db = mysql,information_schema,performance_schema
#主-主形式需要多添加的部分
binlog-do-db = test
binlog-ignore-db = mysql
log-slave-updates
sync_binlog = 1
auto_increment_offset = 2
auto_increment_increment = 2
3.3分别重启A服务器和B服务器上的mysql服务
重启服务器方式和上面的一样,这里就不做讲解了 。
3.4分别查A服务器和B服务器作为主服务器的状态
服务器A:
服务器B:
3.5分别在A服务器和B服务器上用change master to 指定同步位置
服务器A:
mysqlchange master to
master_host='218.206.70.146',master_user='replicate',master_password='123456',
master_log_file=' mysql-bin.000011 ',master_log_pos=497;
服务器B:
mysqlchange master to
master_host='59.151.15.36',master_user='replicate',master_password='123456',
master_log_file=' mysql-bin.000016 ',master_log_pos=107;
3.6 分别在A和B服务器上重启从服务线程
mysqlstart slave;
3.7 分别在A和B服务器上查看从服务器状态
mysqlshow slave status\G;
查看下面两项值均为Yes,即表示设置从服务器成功 。
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
3.8 测试主-主同步例子
测试服务器A:
在服务器A上插入一条语句如下图所示:
之后在服务器B上查看是否同步如下图所示:
测试服务器B:
在服务器B上插入一条语句如下图所示:
然后在从服务器A上查看是否有同步数据如下图所示:
最后从结果可以看出主-主形式的双机热备是能成功实现的 。
4. 配置参数说明
Server-id
ID值唯一的标识了复制群集中的主从服务器,因此它们必须各不相同 。Master_id必须为1到232-1之间的一个正整数值 , slave_id值必须为2到232-1之间的一个正整数值 。
【mysql怎么设置热备 mysql预热】Log-bin
表示打开binlog , 打开该选项才可以通过I/O写到Slave的relay-log,也是可以进行replication的前提 。
Binlog-do-db
表示需要记录二进制日志的数据库 。如果有多个数据可以用逗号分隔,或者使用多个binlog-do-dg选项 。
Binglog-ingore-db
表示不需要记录二进制日志的数据库,如果有多个数据库可用逗号分隔,或者使用多binglog-ignore-db选项 。
Replicate-do-db
表示需要同步的数据库 , 如果有多个数据可用逗号分隔,或者使用多个replicate-do-db选项 。
Replicate-ignore-db
表示不需要同步的数据库,如果有多个数据库可用逗号分隔,或者使用多个replicate-ignore-db选项 。
Master-connect-retry
master-connect-retry=n表示从服务器与主服务器的连接没有成功,则等待n秒(s)后再进行管理方式(默认设置是60s) 。如果从服务器存在mater.info文件,它将忽略些选项 。
Log-slave-updates
配置从库上的更新操作是否写入二进制文件 , 如果这台从库,还要做其他从库的主库,那么就需要打这个参数,以便从库的从库能够进行日志同步 。
Slave-skip-errors
在复制过程,由于各种原因导致binglo中的sql出错,默认情况下,从库会停止复制,要用户介入 。可以设置slave-skip-errors来定义错误号,如果复制过程中遇到的错误是定义的错误号,便可以路过 。如果从库是用来做备份,设置这个参数会存在数据不一致,不要使用 。如果是分担主库的查询压力,可以考虑 。

推荐阅读