关于数据库:MySQL55主从同步配置

43次阅读

共计 1539 个字符,预计需要花费 4 分钟才能阅读完成。

前言:

本文章是在同处局域网内的两台 windows 电脑,且 MySQL 是 5.5 以上版本下进行的一主多从同步配置,并且应用的是集成环境工具 PHPStudy 为例。最初就是 ThinkPHP5 的分布式的连贯,读写拆散配置,当前会用代码简略测试读写拆散的成果。

数据库局部:

一. 主库 (master) 设置。

办法 / 步骤 1:

phpstudy 至多开启 MySQL 服务,并找到配置文件 mysql.ini 并进入。

办法 / 步骤 2:

进入 mysql-ini 文件找到“[mysqld]”节点,增加以下配置,实现后重启服务。

server-id=1
log-bin=mysql-bin
binlog-do-db=repair_computer
binlog-do-db=jinde
binlog-do-db=test
binlog-ignore-db=weiqing

办法 / 步骤 3:

验证配置是否胜利,能够应用 navicat for mysql 工具新建查问或者间接应用命令。

(1). 查看 server-id,命令“SHOW VARIABLES LIKE ‘server_id’;”

(2). 查看主库的状态(须要同步的数据库及不必同步的数库 下图中 file 和 position 在从库配置中会用到(每次批改主服 my.ini 文件 file 和 position 参数都会变)

 办法 / 步骤 4:查看主库电脑的局域网 IP 地址并且也增加一个给从库连贯的用户账号并调配权限(本地是测试的能够间接将 root 账户主机凋谢)

办法 / 步骤 5:

到这里主库 master 的配置就没有了。

二. 从库 (slave) 设置。

办法 / 步骤 1:

开启 MySQL 服务并找到 mysql.ini 文件的 [mysqld] 节点下,增加以下配置

server-id=2
log-bin=mysql-bin
slave-net-timeout=60
replicate-do-db=repair_computer
replicate-do-db=jinde
replicate-do-db=test
replicate-ignore-db=weiqing

办法 / 步骤 2:

重启服务,而后将主库的几个须要同步的数据导入到从库(表名需统一). 

办法 / 步骤 3:

关上 mysql 命令面板,输出以下命令。
(1).  stop slave;    进行从库
(2). change master to master_host=’2192.168.1.112’, master_user=’repl’, master_password=’repl’, master_log_file=’mysql-bin.000003’, master_log_pos=1937; 对于 File 和 Position(’mysql-bin.000003′ 1937)
是主库配置中的第 3 步失去的 主库中输出命令 show master status,后面几个就是主库的 IP 地址和用户账号密码了。
(3). start slave;    开启从库

办法 / 步骤 4:

检测主从是否买通,输出命令“show slave status \G;”,查看“Slave_IO_Running”和“Slave_SQL_Running”是否都为 yes。

办法 / 步骤 5:

能够去主库的同步的表中轻易增加数据,而后再查看从表是否同步即可 TP5 局部:主库 (master)IP:192.168.1.112
从库(slave) IP: 192.168.1.1021. 找到 ThinkPHP5 的 databases.php 文件,deploy 设置为 1(分布式),具体能够参考 TP5 的在线文档。

 读写拆散只需将 rw_separate 设置为 true,并且后面的 IP 地址默认是主库。测试读操作是否会落到从表只需将从表的某个数据进行批改而后在代码中应用查问。

正文完
 0