我遇到的问题是这样的:有A,B,C三台服务器,C为服务器,B可以用PHP成功连接上C机器的mysql,而A机器则不能连接!
可以说,肯定不是代码有什么问题,服务器上的mysql设置也是没什么问题的,因为B机器都是可以的。
肯定是A机器的设置有问题!
在网上一顿搜,各种说mysql授权问题的,以及修改php.ini的,修改防火墙的,事实上都不是这些问题导致的。
最后想到了SELINUX的问题,对比了下AB两台机器,果然设置不一样!估计就是它的问题,有戏!
进行了如下设置:
root下,用vim打开文件文件/etc/selinux/config
修改SELINUX的值:
#SELINUX=enforcing
SELINUX=disabled
保存并退出。
重启生效,如果不想重启,命令行输入
setenforce
0
回车,OK
你好,远程云主机上的MySQL有几种方式
1、原生
mysqli_connect(host,username,password,dbname,port,socket)2、框架
如ThinkPHP框架,在database.php中可以直接配置远程链接参数
// 服务器地址'hostname' => '你的IP',
// 数据库名
'database' => '',
// 用户名
'username' => '',
// 密码
'password' => '',
// 端口
'hostport' => '',
// 连接dsn
其他的框架,您可以看下框架的手册,按照手册一步步来配置
希望对你有帮助!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)