Linux服务器开启rsync下MySQL设置主从同步的过程

2014-11-24 17:59:10 · 作者: · 浏览: 1

1.从数据库服务器开启rsync


vi /etc/rsyncd.conf


编辑rsync配置


/usr/bin/rsync --daemon


启动rsync


2.停止日志收集服务器的crontab


/etc/init.d/cron stop


3.停止主数据库rsync


ps aux |grep rsync


kill 进程号


4.停止主数据库crontab


/etc/init.d/cron stop


6.在主数据库设置从数据库的同步帐号


GRANT REPLICATION SLAVE ON *.* TO 'name'@'ip' IDENTIFIED BY 'password';


7.编辑主数据库配置


vi /etc/my.cnf


在mysqld下增加


[mysqld]


log-bin = /home/mysql/log/mysql-bin.log


server-id = 1


配置完需要重启mysql


./bin/mysqladmin -uroot -p shutdown


./bin/mysqld_safe &


5.登录主数据库,加上只读锁


flush tables with read lock;


6.获取二进制日志名和偏移量


show master status;


7.将主数据库数据库文件打包


tar -cvf data.tar data


8.恢复主服务器读写操作


unlock tables;


9.打包完发送至从服务器


rsync -ua d name@ip::modname


10.停止从服务器mysql


./bin/mysqladmin -uroot -p shutdown


11.从服务器解压文件


tar -xvf data.tar -C /home/mysql


12.编辑从服务器配置


vi /etc/my.cnf


在mysqld下增加


[mysqld]


server-id = 2


其中server-id不要和主服务器的server-id重复


13.使用--skip-slave-start选项启动从数据库


./bin/mysqld_safe --skip-slave-start &


14.对从数据库服务器做相应设置,指定复制使用的用户,主数据库服务器的IP、端口以及开始执行复制的日志文件和位置


CHANGE MASTER TO


MASTER_HOST='ip',


MASTER_PORT=3306,


MASTER_USER='name',


MASTER_PASSWORD='password',


MASTER_LOG_FILE='日志名',


MASTER_LOG_POS=位置;


15.在从服务器上,启动slave


start slave;


16.查看slave状态


show slave status\G