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
,