【介绍】
需求:A库(MyISAM)读操作,B库(InnDB)写操作
读写分离,两个数据一致。
主从复制:两个数据库,一个主服务,一个从服务
主服务 用来执行写操作,从服务用来执行写
【第一步】配置
以下配置 需要放置在mysqld
服务ID 主从服务ID 需要不同
server-id = 1
#启动二进制日志 log-bin=mysql-bin 时则不需要修改
log-bin= 当前文件所在目录/data/mysqlbin
log-err= 当前文件所在目录/data/mysqlerr
例如
log-bin=D:/phpstudy/PHPTutorial/MySQL/data/mysqlbin
log-err= D:/phpstudy/PHPTutorial/MySQL/data/mysqlerr
若两个库的名字不一致
replicate-rewrite-db=zxkang_sync->test
【第二步】创建主从账号
1.创建用于主从复制的连接账号
GRANT REPLICATION SLAVE ON . TO 'slave'@'%' IDENTIFIED BY '123456';
2.主库运行SQL语句 5.6版本
set global binlog_checksum=NONE;
3.刷新缓存
flush privileges;
3.查看日志文件和管道号
show master status
【第三步】连接副从账号
1.建立主从复制连接
CHANGE MASTER TO
master_host = '39.96.86.74',
master_port = 3306,
master_user = 'slave',
master_password = '123456',
master_log_file = 'mysql-bin.000006
',//第二步得到的管道号
master_log_pos = 410
;//第二步得到的端口号
2.开始主从复制服务
START SLAVE;
3.查看主从复制服务是否已经连接
show slave status
Slave_IO_Running Yes
Slave_SQL_Running Yes
关闭主从复制服务
stop SLAVE
【第四步】测试
在主数据库中新建一个表并保存,去副数据看是否存在。
评论