基于ThinkPHP5.1.15+MySQL演示主从同步配置与读写分离解决方案。
软件环境:ThinkPHP5.1.15+MariaDB 10.1.30(主服务器)+MySQL5.7(从服务器)+Win10
两台服务器IP分别为:192.168.199.234、192.168.199.237,已经为两个数据库创建了相同账号密码的账户。
首先我在TP项目的数据库配置文件中,设置了主从配置以及读写分离,配置代码如下:
第二步,修改主服务器的MySQL配置文件my.ini,主要代码如下:
第69行代码是启用二进制日志
第三步,通过show master status;查询主库状态,记录一下二进制日志文件和位置,在从服务器配置的时候要用。
第三步,修改从服务器数据库配置的server-id
默认情况下,server-id都是1,如果要设置主从必须要保存两台的server-id不同,因此只需改从服务器就可以,保存重启MySQL服务:
第四步,在从服务器上设置同步命令
其中,MASTER_LOG_FILE和MASTER_LOG_POS是第二步查询的结果。
第五步,启动slave进行
在从服务器上执行start slave;命令
然后执行show slave status命令,查看slave同步状态。如果Query OK,表示配置正确。
第六步,验证主从配置
在主库上执行一个update或者insert操作,验证一下数据。
我在后台系统设置中更新一下网站信息
根据日志可以看得出,已经实现了主从服务器以及读写分离
原文:https://blog.csdn.net/fanblog/article/details/81744106?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522159884506519724839865080%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=159884506519724839865080&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_ecpm_v3~pc_rank_v2-15-81744106.first_rank_ecpm_v3_pc_rank_v2&utm_term=mysql+%E6%95%B0%E6%8D%AE%E5%BA%93%E5%A6%82%E4%BD%95%E4%BF%9D%E8%AF%81%E5%86%99%E6%93%8D%E4%BD%9C%E6%98%AF%E4%B8%BB%E5%BA%93&spm=1018.2118.3001.4187