Mysql/MariaDB主从同步复制备份,新手教程,一步步学Mysql主从同步

最近博客没有收录了,要坚持更新博客,所以吧,把以前的老内容翻出来,发发博客。

准备:
1、主数据库使用CentOS7.2操作系统,MariaDB版本是10.2.12,IP是192.168.11.34。
2、从数据库也使用CentOS7.2操作系统,MariaDB版本也是10.2.12,IP是192.168.11.31。
两台机器环境都一样,保证可以互通,如果开启防火墙的一定记得将Mysql的3306端口允许开放。

配置主数据库Master
1、设置数据库配置文件
在主服务器(192.168.11.34)上打开MariaDB的配置文件:/etc/my.cnf,找到如下配置项,如果没有请自行添加。
server-id = 1
log-bin = mysql-bin
server-id = 1  #是指数据库的唯一ID号,默认从1开始。
log-bin = mysql-bin启用二进制日志,备份复制其实就是根据日志来的。


2、重启MariaDB数据库
/etc/init.d/mariadb restart

3、建立账户并授权从数据库访问
进入Mysql命令行模式下,输入:
grant replication slave on *.* to 'slave'@'%' identified by '123456x';
以上命令在主数据库中创建了一个专门用于数据备份的账号,账号名为slave,密码为123456x,
允许从数据库访问。

重载权限使之立即生效。
flush privileges;


4、检查主数据库的master状态
Mysql的命令行中输入show master status;,会列出当前主数据库用户同步复制的关键参数:
MariaDB [(none)]> show master status;
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000004 |     2259 |              |                  |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)
我们需要记下File和Position两项的值,他们分别表示bin日志文件名和数据偏移量,mysql-bin.000004  2259


配置从数据库Slave

1、设置从数据库配置文件:/etc/my.cnf。
server-id = 2
log-bin = mysql-bin
replicate-do-db = jinconcom
以上选项中,server-id = 2表示从数据库ID,一定不能和主数据库一样。如果的一主多从也不要重复。
log-bin = mysql-bin二进制日志。
replicate-do-db = helloweba设置了允许同步复制的数据库为helloweba,如果不设置则可注释掉该行。

2、重启数据库
和主数据库一样,配置好后要重启数据库使配置生效。

3、执行复制命令
进入从数据库命令行模式,输入命令:
change master to master_host='192.168.11.34',master_port=3306,master_user='slave',

master_password='123456x',master_log_file='mysql-bin.000004',master_log_pos=2259;
master_host是指主数据库服务器的IP(192.168.11.34),master_user是指登录连接主数据库的账号

(slave),master_password是指账号对应的密码,master_port是指主数据库的端口号(3306),

master_log_file就是主数据库master状态对应的File文件,master_log_pos就是主数据库master状态

对应的Position参数。

4、启动slave同步

数据库命令行模式下,输入start slave;命令:
MariaDB [(none)]> start slave;
Query OK, 0 rows affected (0.01 sec)


5、查看slave同步的状态
输入show slave status\G;命令:
查看Slave_IO_Running和Slave_SQL_Running是否都为yes(一定要全部为yes)。说明就OK了,

剩下可以测试是否可行了。

关键词: mysql主从同步

上一篇: 利用PHPWord生成你想要word文档 php生成word文档的代码
下一篇: MySQL/MariaDB主主数据同步配置教程,实现Mysql双向同步复制

目前还没有人评论,您发表点看法?
发表评论

评论内容 (必填):