加入收藏 | 设为首页 | 会员中心 | 我要投稿 常州站长网 (https://www.0519zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL复制(2) 主备库都为空的情况下创建主备复制

发布时间:2016-08-08 08:49:21 所属栏目:MySql教程 来源:站长网
导读:本文适用于新安装的主库和备库,假定主备库为空,如果你是从已存在的主库复制,请转到《[MySQL] 复制(3)- 创建主备复制(从另一个服务器开始复制)》 主库的
本文适用于新安装的主库和备库,假定主备库为空,如果你是从已存在的主库复制,请转到《[MySQL] 复制(3)- 创建主备复制(从另一个服务器开始复制)》

主库的配置

主库需要打开二进制日志,并制定一个唯一的server id,my.cnf文件中增加或修改如下内容:

server_id=60  
log-bin = /data/mysql/log/mysql-bin

备库的配置

备库my.cnf的配置如下:

server_id=61  
read_only=1  
log_bin = /data/mysql/log/mysql-bin    
log_slave_updates = 1    
relay_log = /data/mysql/log/mysqld-relay-bin

和主库类似,备库也要指定一个唯一的server id,还有备库的二进制日志最好和主库的命名一致,方便以后切换。 此外,relay_log用于配置中继日志,log_slave_updates=1表示允许备库将其重放的事件也记录在其自身的二进制日志 中,read_only=1表示备库为只读。

创建复制账号我们需要在主库创建一个用户,备库的I/O线程将以该用户连接到主库读取二进制日志。

GRANT REPLICATION SLAVE ON *.* TO repluser@'192.168.1.%' IDENTIFIED BY 'replpwd';

最好在备库里也创建这样一个用户,方便以后切换。

启动复制

首先,我们要获得主库当前的二进制日志和其偏移量:

show master status;  
+------------------+----------+--------------+------------------+  
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |  
+------------------+----------+--------------+------------------+  
| mysql-bin.000003 |      245 |              |                  |  
+------------------+----------+--------------+------------------+

然后,在备库执行如下语句连接主库获取二进制日志:

change master to
      master_host='192.168.1.60',  
      master_user='repluser',  
      master_password='replpwd',  
      master_log_file='mysql-bin.000003',  
      master_log_pos=245;

(编辑:常州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读