技术文章 > 数据库 > MySQL > 正文

mysql怎么重新配置主从服务器

FXL

具体方法:

(推荐教程:mysql数据库学习教程

1、重启MySQL从服务器的mysql数据库:

登录从服务器执行命令:

#service mysqld restart

2、停止从数据库mysql上slave服务器的主从同步:

为了防止主从数据不同步,需要先停止slave上的同步服务。登录从数据库mysql,执行命令:

#mysql -uroot -p

然后执行:

>STOP SLAVE;

3、对主服务器上主master数据库服务器的数据加锁:

为了避免在备份的时候对数据库进行更新操作,必须对数据库加锁。

登录从数据库mysql,执行命令:

#mysql -uroot -p

然后执行:

>FLUSH TABLES WITH READ LOCK;

ps:如果是web服务器也可以关闭Apache和Nginx服务,效果是一样的。

4、备份主服务器master数据库的数据

执行命令:

#mysqldump -u slaveusername  -p p2p > back.sql.gz

然后可以通过命令:#gunzip back.sql.gz 进行解压

5、重置master服务

登录从数据库mysql,执行命令:

#mysql -uroot -p

然后执行:

>RESET MASTER;

重置master服务的目是删除所有的二进制日志,创建一个.000001的空日志。

RESET MASTER并不会影响SLAVE服务器上的工作状态,但盲目的执行这个命令会导致slave找不到master的binlog,造成同步失败。当前我们正是要重置同步,所以必须要执行它。

6、对master服务器的数据库解锁

执行:

>UNLOCK TABLES;

ps;如果你停止了Apache和Nginx,请开启它们。

7、将master上的备份文件拷贝到slave服务器上

scp -r root@[slave的ip地址] ~/back.sql :/home

8、删除slave服务器上的旧数据

ps:删除之前请务必确认该备份的是否都备份了。

登录从数据库mysql,执行命令:

#mysql -uroot -p

然后执行:

>DROP DATABASE p2p;

9、导入数据到slave服务器上

执行:

>SOURCE /home/back.sql;

或者直接执行命令:

#mysql -u root -p p2p < 文件名

10、重置slave服务

执行:

>RESET SLAVE;

执行RESET SLAVE的目的是清除slave上的同步位置,删除所有旧的同步日志,使用新的日志重新开始。

ps:执行RESET SLAVE之前必须先停止slave服务(STOP SLAVE),在第二步以停止了它。

11、开启slave服务

执行:

>START SLAVE;

12、在slave服务器上检查同步状态

执行:

>SHOW SLAVE STATUS\G

检查同步状态是否成功。

免费视频教程
本文原创发布python学习网,转载请注明出处,感谢您的尊重!
相关文章
 mysql怎么合并数据表
 mysql导出数据出现乱码怎么办
 mysql数据库无法启动怎么办
 mysql怎样修改数据库名
相关视频章节
 MySQL的数据类型
 MySQL的运算符
 配置MySQL数据库
 Mysql数据库教程
视频教程分类