mysql5.6 基于日志主从复制

from 原文

主库配置:

[mysqld]
pid-file=/var/run/mysqld/mysqld.pid
socket=/var/run/mysqld/mysqld.sock
datadir=/var/lib/mysql
#tmpdir=/var/lib/mysql/temp/
log-bin=/var/lib/mysql/mysqlmaster-bin

server-id=1
sync_binlog=1
innodb_buffer_pool_size = 512M
innodb_flush_log_at_trx_commit=1
sql_mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_AUTO_VALUE_ON_ZERO
lower_case_table_names=1
log_bin_trust_function_creators=1

从库配置:

[mysqld]
server-id=2 #id不同
sync_binlog=1
innodb_buffer_pool_size = 512M
innodb_flush_log_at_trx_commit=1
sql_mode=STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_AUTO_VALUE_ON_ZERO
lower_case_table_names=1
log_bin_trust_function_creators=1

pid-file=/var/run/mysqld/mysqld.pid
socket=/var/run/mysqld/mysqld.sock
datadir=/var/lib/mysql
#tmpdir=/var/lib/mysql/temp/
log-bin=mysqlslave-bin.log

主库操作:

  1. 分配可访问主库的用户
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'从库ip或%' IDENTIFIED BY 'repl';
  1. 锁库,暂时停止主库的写入
FLUSH TABLES WITH READ LOCK;
  1. 导出主库的数据sql
mysqldump -uroot -p -h127.0.0.1 -P3306 --all-databases  --triggers --routines --events >all.sql
  1. 查看主库当前二进制日志文件信息
SHOW MASTER STATUS;

从库操作:

  1. 导入主库sql
  2. 设置主库的信息(具体值按SHOW MASTER STATUS;取)
CHANGE MASTER TO MASTER_HOST='主库ip',MASTER_USER='repl',MASTER_PASSWORD='repl',MASTER_LOG_FILE='mysqlmaster-bin.000001',MASTER_LOG_POS=332;
  1. 开启从库
START slave;
  1. 检查连接情况:
SHOW slave STATUS \G

如果有:

Slave_IO_Running: Yes
Slave_SQL_Running: Yes

则配置成功

主库开锁:

UNLOCK TABLES;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值