mysql主从复制(replication)

来源:互联网 发布:云计算软件 编辑:程序博客网 时间:2024/06/05 17:59

环境

linux
mysql5.6
一台作为master: 192.168.134.29
一台作为slave: 192.168.134.30
分别创建test数据库

create database test default character set utf8 collate utf8_general_ci;

创建复制账号

在master的服务器上的mysql中创建一个账号,并提供复制权限:

GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'slave'@'192.168.134.30' IDENTIFIED BY 'slave';

master和slave配置

更改my.conf
master上的配置:

[mysqld]server-id=1auto-increment-increment=2auto-increment-offset=1log-binbinlog-do-db=testbinlog-format=mixed

slave上的配置:

server-id=2binlog-do-db=test

指定slave的master

注:很多网上的教程会配master-host之类的,但是这种配置已经废弃了。
在slave服务器上的mysql中执行

CHANGE MASTER TO MASTER_HOST='192.168.134.29',MASTER_USER='slave',MASTER_PASSWORD='slave'

分别重启服务器。
最简单的mysql replication就完成了。
那么,如果需要指定表复制呢?
在master上加上:

replicate-wild-do-table=test.logreplicate-wild-do-table=test.user

如果数据库名字都不一样呢?
在slave上加上

replicate-rewrite-db=test->test_new

是不是觉得差不多了?别开玩笑了,就看看官方文档吧!
mysql官方文档

1 0
原创粉丝点击