MYSQL主从数据库同步备份配置的方法


Posted in MySQL onMay 26, 2021

下文分步骤给大家介绍的非常详细,具体详情请看下文吧。

一、准备

用两台服务器做测试:

Master Server: 192.0.0.1/Linux/MYSQL 4.1.12
Slave Server: 192.0.0.2/Linux/MYSQL 4.1.18  

    做主从服务器的原则是,MYSQL版本要相同,如果不能满足,最起码从服务器的MYSQL的版本必须高于主服务器的MYSQL版本

二、配置master服务器

1. 登录Master服务器,编辑my.cnf

#vim /etc/my.cnf

在[mysqld]段添加以下内容:

log-bin=mysql-bin
server-id=1
binlog-do-db=extmail
binlog-ignore-db=mysql,test

解释:log-bin项是让Master服务器记录二进制日志这个是必须的;
server-id=master_id 其中master_id必须为1到232?1之间的一个正整数值;
binlog-do-db=database 是要记录日志的数据库;
binlog-ignore-db 是不要记录日志的数据库名,多个数据库中间用逗号(,)隔开;

2.从master服务器添加要从slave服务器访问master服务器的有权限的帐号,看下面命令就知道了:

mysql> grant replication slave on *.*
-> to 'abc'@'192.0.0.2' identified by '123';

格式:mysql> GRANT REPLICATION SLAVE ON *.*
   -> TO '帐号'@'从服务器IP或主机名' IDENTIFIED BY '密码';

3. 重起Mysql

4. 备份master数据库数据

# mysqldump --master-data extmail > extmail_backup_20071120.sql

要加--master-data 选项,这里备份master服务器的数据,后面要导入slave服务器。

5. 察看Master状态

mysql> show master status;
+------------------+----------+--------------+------------------+
| File       | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000002 |    79 | extmail   | mysql,test    |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

三、配置slave服务器

1. 编辑my.cnf

# vim /etc/my.cnf

在[mysqld]段添加以下内容:

server-id=2
master-host=192.0.0.1
master-port=3306
master-user=abc
master-password=123
master-connect-retry=60

解释:

slave服务器的server-id不能与master相同,多台slave之间server-id也不能相同。
master-host 是 master服务器的主机名或者IP地址
master-user和master-password是前面我们在master上建用户名和密码
master-connect-retry 是如果从服务器发现主服务器断掉,重新连接的时间差

2. 把从主数据库服务器备份出来的数据库导入到从服务器中,也就是我们前面的extmail_backup_20071120.sql

# mysqladmin create extmail
# mysql extmail < extmail_backup_20071120.sql

3. 重起mysql服务器

4. 停止slave服务,设置主服务器的各种参数

mysql> slave stop;
mysql> change master to
-> MASTER_HOST='192.0.0.1',
-> MASTER_USER='abc',
-> MASTER_PASSWORD='123',
-> MASTER_LOG_FILE='mysql-bin.000002',
-> MASTER_LOG_POS=79;
mysql> slave start;

5. 查看主从服务器的状态

mysql> show processlist;

MySQL 相关文章推荐
MySQL慢查询的坑
Apr 28 MySQL
MySQL sql_mode的使用详解
May 08 MySQL
修改MySQL的数据库引擎为INNODB的方法
May 26 MySQL
MySql 8.0及对应驱动包匹配的注意点说明
Jun 23 MySQL
MySQL系列之三 基础篇
Jul 02 MySQL
MySQL里面的子查询的基本使用
Aug 02 MySQL
mysql分表之后如何平滑上线详解
Nov 01 MySQL
解决Mysql报错 Table 'mysql.user' doesn't exist
May 06 MySQL
mysql 获取相邻数据项
May 11 MySQL
mysql sql常用语句大全
Jun 21 MySQL
Mysql如何查看是否使用到索引
Dec 24 MySQL
MYSQL数据库使用UTF-8中文编码乱码的解决办法
May 26 #MySQL
Mysql效率优化定位较低sql的两种方式
May 26 #MySQL
Mysql中 unique列插入重复值该怎么解决呢
May 26 #MySQL
MySQL查看表和清空表的常用命令总结
May 26 #MySQL
MySQL中distinct与group by之间的性能进行比较
MySQL中distinct和count(*)的使用方法比较
May 26 #MySQL
MySQL中出现乱码问题的终极解决宝典
You might like
杏林同学录(一)
2006/10/09 PHP
php面向对象全攻略 (二) 实例化对象 使用对象成员
2009/09/30 PHP
php生成gif动画的方法
2015/11/05 PHP
PHP中empty,isset,is_null用法和区别
2017/02/19 PHP
php获取微信基础接口凭证Access_token
2018/08/23 PHP
PHP实现的支付宝支付功能示例
2019/03/26 PHP
CCPry JS类库 代码
2009/10/30 Javascript
js 链式延迟执行DOME
2012/01/04 Javascript
js显示时间 js显示最后修改时间
2013/01/02 Javascript
jquery清空textarea等输入框实现代码
2013/04/22 Javascript
自定义Angular指令与jQuery实现的Bootstrap风格数据双向绑定的单选与多选下拉框
2015/12/12 Javascript
微信小程序 底部导航栏目开发资料
2016/12/05 Javascript
json对象及数组键值的深度大小写转换问题详解
2018/03/30 Javascript
使用jquery DataTable和ajax向页面显示数据列表的方法
2018/08/09 jQuery
详解angularjs4部署文件过大解决过程
2018/12/05 Javascript
vue+elementUi 实现密码显示/隐藏+小图标变化功能
2020/01/18 Javascript
[00:23]魔方之谜解锁款式
2018/12/20 DOTA
Python中的urllib模块使用详解
2015/07/07 Python
Python对字符串实现去重操作的方法示例
2017/08/11 Python
python使用SMTP发送qq或sina邮件
2017/10/21 Python
Python爬虫的两套解析方法和四种爬虫实现过程
2018/07/20 Python
Python设计模式之桥接模式原理与用法实例分析
2019/01/10 Python
python dlib人脸识别代码实例
2019/04/04 Python
使用python telnetlib批量备份交换机配置的方法
2019/07/25 Python
PHP统计代码行数的小代码
2019/09/19 Python
关于tensorflow的几种参数初始化方法小结
2020/01/04 Python
pytorch的梯度计算以及backward方法详解
2020/01/10 Python
初学者学习Python好还是Java好
2020/05/26 Python
使用Python封装excel操作指南
2021/01/29 Python
多重CSS背景动画实现方法示例
2014/04/04 HTML / CSS
大学辅导员事迹材料
2014/02/05 职场文书
电视购物广告词
2014/03/19 职场文书
初三学习计划书范文
2014/04/30 职场文书
领导干部群众路线个人对照检查材料思想汇报
2014/09/30 职场文书
主持稿开场白
2015/06/01 职场文书
如何利用Matlab制作一款真正的拼图小游戏
2021/05/11 Python