码迷,mamicode.com
首页 > 数据库 > 详细

一个mysql主从复制的配置案例

时间:2014-10-12 02:23:17      阅读:224      评论:0      收藏:0      [点我收藏+]

标签:mysql replicate

环境为主库是111.111.111.110 从库为111.111.111.111

1.  主库创建数据库复制专用用户

 

--在主库上执行,创建用户repl

mysql uroot

grant replication slave,replication client on *.* to repl@‘111.111.111.%‘ identified by ‘repl‘;

exit;

 

--修改配置文件/etc/my.cnf

cp /etc/my.cnf /etc/my.cnf.bak

vi /etc/my.cnf

修改主库参数如下

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

user=mysql

log-bin=mysql-bin

old_passwords=1

server_id = 110

sync_binlog = 1

relay_log = /var/lib/mysql/mysql-relay-bin

# enable log_slave_updates

log_slave_updates = 1

skip_slave_start

[mysqld_safe]

log-error=/var/log/mysqld.log

pid-file=/var/run/mysqld/mysqld.pid

 

2.关闭数据库

--在主库上执行

service mysqld stop

 3.备份主库

--在主库上执行

tar zcvf /tmp/mysql.tar.gz /var/lib/mysql

4.将主库的备份传送到从库

--在主库上执行

rsync -auzvP --bwlimit=10240 /tmp/mysql.tar.gz 111.111.111.111: /tmp/mysql.tar.gz

rsync auzvP --bwlimit=1024 /etc/my.cnf 111.111.111.111:/etc/my.cnf

 

 

5.在备库恢复主库的备份

--在备库执行

mv /var/lib/mysql /var/lib/mysqlbak

mv /tmp/mysql.tar.gz /var/lib/

tax xvf /var/lib/mysql.tar.gz

 

6.在备库修改配置文件/etc/my.cnf

--在备库执行

--修改配置文件/etc/my.cnf

vi /etc/my.cnf

修改参数如下

 

[mysqld]

 

server_id = 111

 

 

7.在备库启动数据库

--在备库执行

 

service mysqld start

 

8.在主库上启动数据库

service mysqld start

mysql uroot p

show master status;

 

 

9.根据上一步获取到的bin log文件名和position在备库启用复制

--在备库执行(将命令master_log_file=‘mysql-bin.0000099‘,master_log_pos=5中的值mysql-bin.0000099和0 修改为上一步获取到的值)

change master to master_host=‘111.111.111.110‘,

master_user=‘repl‘,

master_password=‘repl‘,

master_log_file=‘mysql-bin.00000xx‘,

master_log_pos=0;

 

--启动复制进程

start slave;

show slave status\G

show processlist\G

 

 

 

本文出自 “ORACLE/DB2/MYSQL” 博客,谢绝转载!

一个mysql主从复制的配置案例

标签:mysql replicate

原文地址:http://383610.blog.51cto.com/373610/1562618

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!