1,主库配置
cp -f ~/files/my.cnf.master /opt/my.cnf
service mysql restart
mysql -uroot -p
create user 'repl'@'%' identified with mysql_native_password by 'repl';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
FLUSH PRIVILEGES;
#执行以下命令,记下File和Position
show master status;
2,从库配置
cp -f ~/files/my.cnf.slave /opt/my.cnf
service mysql restart
mysql -uroot -p
STOP SLAVE;
#执行下面命令,填上记下的File和Position
CHANGE MASTER TO
MASTER_HOST='172.19.42.200',
MASTER_USER='repl',
MASTER_PASSWORD='repl',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=192707;
#启动从数据库IO线程
START SLAVE;
#查看是否成功,如果发现Slave_IO_Running和Slave_SQL_Running都为yes,则成功了
show slave status \G;
3,重置、查看日志
reset master;
reset slave;
#查看binlog全部文件
show binary logs;
show variables like 'log_bin%';
show variables like 'binlog%';
show binlog events in'mysql-bin.000007';
配置双主热备,只需将1、2步骤中除了“覆盖数据库配置文件”,之外的命令反过来执行一遍即可。
my.cnf.master
1 [mysqld] 2 basedir = /opt/mysql 3 datadir = /opt/mysql/data 4 log-error = /var/log/mysqld.log 5 port=3306 6 max_connections=200 7 character-set-server=utf8 8 sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' 9 #服务id 10 server-id=1 11 #bin log 日志 12 log-bin=mysql-bin 13 #bin log 日志格式 14 #STATEMENT:记录主库执行的SQL复制到从库; 调用时间函数时会导致主从数据不一致 15 #ROW:记录主库每一行的变化;效率低 16 #MIXED:修复一些主从数据不一致情况;本地变量调用还会存在问题; 17 binlog_format=statement 18 #二进制日志自动删除/过期的天数。默认值为0,表示不自动删除 19 expire-logs-days=7 20 #主从复制忽略的数据库 21 binlog-ignore-db=information_schema 22 binlog-ignore-db=performance_schema 23 binlog-ignore-db=mysql 24 #开启主从复制的数据库 25 binlog-do-db=ffs 26 #启用中继日志 27 relay_log=mysql-relay-bin.log 28 #在作为从数据库时候,有写入操作也要更新二进制日志文件 29 log-slave-updates=1 30 replicate-do-db=ffs 31 replicate-ignore-db=mysql 32 replicate_ignore_db=information_schema 33 replicate_ignore_db=performance_schema 34 #非只读 35 read_only=0 36 #跳过主从复制中遇到的所有错误或指定类型的错误 37 slave-skip-errors=all 38 #标识自增长字段每次递增的量,也就是步长 39 auto-increment-increment=2 40 #表示自增长从哪个数开始,互为主从的两个机器设置不一样较好 41 auto-increment-offset=1 42 [mysql] 43 default-character-set=utf8 44 [client] 45 port=3306 46 default-character-set=utf8
my.cnf.slave
1 [mysqld] 2 basedir = /opt/mysql 3 datadir = /opt/mysql/data 4 log-error = /var/log/mysqld.log 5 port=3306 6 max_connections=200 7 character-set-server=utf8 8 sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION' 9 #服务id 10 server-id=2 11 #bin log 日志 12 log-bin=mysql-bin 13 #bin log 日志格式 14 #STATEMENT:记录主库执行的SQL复制到从库; 调用时间函数时会导致主从数据不一致 15 #ROW:记录主库每一行的变化;效率低 16 #MIXED:修复一些主从数据不一致情况;本地变量调用还会存在问题; 17 binlog_format=statement 18 #二进制日志自动删除/过期的天数。默认值为0,表示不自动删除 19 expire-logs-days=7 20 #主从复制忽略的数据库 21 binlog-ignore-db=information_schema 22 binlog-ignore-db=performance_schema 23 binlog-ignore-db=mysql 24 #开启主从复制的数据库 25 binlog-do-db=ffs 26 #启用中继日志 27 relay_log=mysql-relay-bin.log 28 #在作为从数据库时候,有写入操作也要更新二进制日志文件 29 log-slave-updates=1 30 replicate-do-db=ffs 31 replicate-ignore-db=mysql 32 replicate_ignore_db=information_schema 33 replicate_ignore_db=performance_schema 34 #非只读 35 read_only=0 36 #跳过主从复制中遇到的所有错误或指定类型的错误 37 slave-skip-errors=all 38 #标识自增长字段每次递增的量,也就是步长 39 auto-increment-increment=2 40 #表示自增长从哪个数开始,互为主从的两个机器设置不一样较好 41 auto-increment-offset=2 42 [mysql] 43 default-character-set=utf8 44 [client] 45 port=3306 46 default-character-set=utf8
标签:bin,binlog,热备,log,主机,db,ignore,mysql From: https://www.cnblogs.com/guanghe/p/17620668.html