前言:

本文章是在同处局域网内的两台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.102

1. 找到ThinkPHP5的databases.php文件,deploy设置为1(分布式),具体可以参考TP5的在线文档。

2. 读写分离只需将rw_separate设置为true,并且前面的IP地址默认是主库。测试读操作是否会落到从表只需将从表的某个数据进行修改然后在代码中使用查询。

3. 写操作可以在代码中执行插入数据,然后分别查看主库和从库是否同步就可以了。

MySQL5.5+配置主从同步并结合ThinkPHP5设置分布式数据库的更多相关文章

  1. mysql5.5 Replication 主从同步

    mysql5.5 Replication 主从同步 ------------------[主]------------------[mysqld]server-id=1 log-bin=mysql-b ...

  2. MYSQL配置主从同步

    MYSQL配置主从同步 mysql主服务器配置 vim /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql. ...

  3. Mysql配置主从同步的基本步骤

    # 配置主从同步的基本步骤 #总结为如下的步骤: # .在主服务器上,必须开启二进制日志机制和配置一个独立的ID # .在每一个从服务器上,配置一个唯一的ID,创建一个用来专门复制主服务器数据的账号 ...

  4. mysql 在Linux 配置 主从同步

    一.主服务器相关配置 1.创建同步账户并指定服务器地址 [root@localhost ~]mysql -uroot -pmysql>use mysqlmysql>grant replic ...

  5. percona-mysql5.7.24使用xtrabackup工具配置主从同步

    主从配置详细过程: 环境准备: 配置好服务器,主从服务器都安装并启动mysql数据库 # 添加读写账号和只读账号,应用配置中,写主库用读写账号,统计从库数据yoga只读账号 grant select, ...

  6. centos6.6手动安装mysql5.5并配置主从同步

    0.实验环境 主机IP(Master) 192.168.61.150 centos6.6 从机IP(Slave)   192.168.61.157 centos6.6 1.查看centos系统版本 [ ...

  7. Mysql5.7.13主从同步(复制)配置

    主从同步是分布式mysql数据库相当重要的配置,现在我在虚拟机上完成主从配置,系统是CenterOS6.5,mysql版本是5.7.13 主服务器的ip是192.168.19.139 副服务器的ip是 ...

  8. MySQL5.7 搭建主从同步

    性能更好的新服务器申请下来了,我们决定在2台新服务器上使用mysql5.7,并且使用主从同步.读写分离架构,很不幸这个任务落到了我的头上.读写分离是在业务代码中实现的,在此不做详述,介绍一下我搭建My ...

  9. mysql数据库配置主从同步

    MySQL主从同步的作用 .可以作为一种备份机制,相当于热备份 .可以用来做读写分离,均衡数据库负载 MySQL主从同步的步骤 一.准备操作 .主从数据库版本一致,建议版本5.5以上 .主从数据库数据 ...

  10. mariadb配置主从同步遇到的问题

    一:ERROR: No query specified 解决方案: \G后面不能再加分号;,因为\G在功能上等同于;,如果加了分号,那么就是;;(2个分号),SQL语法错误 二:主从同步不成功 Sla ...

随机推荐

  1. 解析草稿-造价管理-工程经济-P190-例4.2.3

    原题 计算步骤 需要记忆的概念 excel计算文件 [腾讯文档]例题

  2. ChatGPT会对我们日常生活带来什么影响?这些技术会改变我们学习阅读工作方式吗?

    ChatGPT会对我们日常生活带来什么影响?这些技术会改变我们学习阅读工作方式吗? AI 这个话题很火,我也一直在关注着,很多人甚至觉得 AI 会改变世界,也许你会好奇:ChatGPT 会在三年内终结 ...

  3. 解决pod健康检查问题

    解决pod健康检查问题 引自:Solving the mystery of pods health checks failures in Kubernetes.原文中的某些描述并不清晰,本文作了调整. ...

  4. PaddlePaddle 自动求导

    自动求导 在 PaddlePaddle 中使用自动求导来计算导数. 要求:$ f(x)=\sin{x} $,绘制 \(f(x)\) 和 \(\dfrac{\mathrm{d}f(x)}{\mathrm ...

  5. 数据治理之关键环节元数据管理开源项目datahub探索

    @ 目录 概述 定义 核心功能 概念 元数据应用 其他开源 架构 概览 组件 元数据摄取架构 服务体系结构 本地部署 环境要求 安装 摄取样例 摄取入门 介绍 核心概念 命令行MySQL摄取示例 配置 ...

  6. 2021-02-26:一个数组arr是二叉树的中序遍历结果,每条边的开销是父节点和子节点的乘积,总开销是所有边的开销之和。请问最小总开销是多少?

    2021-02-26:一个数组arr是二叉树的中序遍历结果,每条边的开销是父节点和子节点的乘积,总开销是所有边的开销之和.请问最小总开销是多少? 链接:https://www.nowcoder.com ...

  7. 2022-01-27:供暖器。 冬季已经来临。 你的任务是设计一个有固定加热半径的供暖器向所有房屋供暖。 在加热器的加热半径范围内的每个房屋都可以获得供暖。 现在,给出位于一条水平线上的房屋 hous

    2022-01-27:供暖器. 冬季已经来临. 你的任务是设计一个有固定加热半径的供暖器向所有房屋供暖. 在加热器的加热半径范围内的每个房屋都可以获得供暖. 现在,给出位于一条水平线上的房屋 hous ...

  8. vue全家桶进阶之路48:Vue3 跨域配置devServer的参数和设置

    devServer 是一个用于配置开发服务器的选项对象.它可以用来配置服务器的各种选项,例如代理,端口号,HTTPS 等. 以下是一些常用的 devServer 参数和设置: port:指定开发服务器 ...

  9. python通过变量名称的反射,获取变量的引用

    有一些极端情况下,例如变量名称是动态的,我们无法直接调用变量名,如何获取到变量的引用呢? aa = [globals()["xxxx"]]

  10. 简要介绍django框架

    Django是一个高级的Python Web框架,它鼓励快速开发和干净.实用的设计. Django遵循MVC(模型-视图-控制器)设计模式,使得开发者能够更轻松地组织代码和实现功能.以下是Django ...