以TP5.1为例,lamp环境下配置部署mysql读写分离

以TP5.1为例,lamp环境下配置部署mysql读写分离

环境:

主服务器:192.168.72.232 系统 Centos7 localhost
从服务器:192.168.72.152 系统 Centos7 localhost
(以下为两台服务器mysql正确安装完毕)

首先下载TP5.1框架,然后配置config.php->database.php数据库配置文件,如下图所示,“服务器地址”,默认第一个是主服务器,后面是从服务器,如果用户名,密码,端口号不一样的话,要每个都按照顺序写上以“,”逗号分隔开,如果一样的话,可以只写一个如下图,数据库部署方式,选择“1”(分布式主从服务器),从服务器序号,可以不用配置。
在这里插入图片描述

配置mysql远程连接访问

增加远程访问权限
登录mysql

MariaDB [(none)]> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
MariaDB [mysql]> grant all privileges on *.* to root@'%' identified by 'root' with grant option;
Query OK, 0 rows affected (0.03 sec)
MariaDB [mysql]> flush privileges;
Query OK, 0 rows affected (0.01 sec)

说明:GRANT ALL PRIVILEGES ON . TO ‘账号’@’%’ IDENTIFIED BY ‘密码’ WITH
GRANT OPTION;   //提权 flush privileges;  //刷新

在这里插入图片描述
至此,看似配置已经结束了,但是在服务器上部署项目之后,一直无法访问,页面报错提示如下:
在这里插入图片描述
很显然,提示的问题是数据库无法连接访问,此刻,可以确定的是数据库,通过外部的navicat可以正常连接,也在外部phpstudy环境下部署了同样一套代码,没有任何的修改,数据库是可以正常连接访问的,只是在192.168.72.232主服务器本地部署就提示数据库无法连接访问,然后基本可以确定的是lamp环境中Apache在作祟,尝试着百度了“centos Apache无法解析mysql ip连接”

同一服务器上,使用php中mysql_connect连接MySQL数据库,只能localhost联结,无法通过IP访问(以GRANT ALL PRIVILEGES ON给权限了)。报错:Can’t connect to mysql server on ‘ip或域名’ (13),如果用命令行连接MySQL,则一切正常,

原来是Linux限制了httpd对外访问的权限。将其开启即可:

httpd访问网络配置httpd_can_network_connect

1、查看httpd_can_network_connect的值是否为off(例如:httpd_can_network_connect --> off)

getsebool -a | grep httpd_can_network_connect

结果如下
在这里插入图片描述

[root@localhost ~]# getsebool -a | grep httpd_can_network_connect
httpd_can_network_connect --> off
httpd_can_network_connect_cobbler --> off
httpd_can_network_connect_db --> off

2、执行如下命令打开:

Linux命令,临时配置,重启后失效

setsebool httpd_can_network_connect=1

(永久配置)写入配置文件的命令,重启后保留

setsebool -P httpd_can_network_connect 1

在这里插入图片描述

3、 重新验证httpd_can_network_connect
getsebool -a | grep httpd_can_network_connect

4、 重启http

systemctl restart httpd

至此,读写分离就正式完成了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值