server-id=1 log-bin=mysql-bin log-bin-index=binlog.index #binlog_format=statement general_log_file = mysql.log general_log = 1 binlog-do-db = youxia
2.master 建立用户,赋予 replication slave权限mysql
CREATE USER 'slave'@'%' IDENTIFIED BY '123456'; GRANT ALL PRIVILEGES ON * . * TO 'json'@'localhost'; LUSH PRIVILEGES;
3.slave 配置sql
## 设置server_id,通常设置为IP,注意要惟一 server_id=2 ## 复制过滤:也就是指定哪一个数据库不用同步(mysql库通常不一样步) binlog-ignore-db=mysql ## 开启二进制日志功能,以备Slave做为其它Slave的Master时使用 log-bin=mysql-bin ## 为每一个session 分配的内存,在事务过程当中用来存储二进制日志的缓存 binlog_cache_size=1M ## 主从复制的格式(mixed,statement,row,默认格式是statement) #binlog_format=mixed ## 二进制日志自动删除/过时的天数。默认值为0,表示不自动删除。 expire_logs_days=7 ## 跳过主从复制中遇到的全部错误或指定类型的错误,避免slave端复制中断。 ## 如:1062错误是指一些主键重复,1032错误是由于主从数据库数据不一致 slave_skip_errors=1062 ## relay_log配置中继日志 relay_log=edu-mysql-relay-bin ## log_slave_updates表示slave将复制事件写进本身的二进制日志 log_slave_updates=1 ## 防止改变数据(除了特殊的线程) #read_only=1 replicate-do-db = youxia
4.slave 执行命令数据库
CHANGE MASTER TO master_host = '192.168.1.110', master_user = 'slave', master_password = '123456', master_port = 3306, master_log_file = 'mysql-bin.000001', master_log_pos = 400, master_connect_retry = 30; show SLAVE STATUS; start slave; stop slave; reset slave;