【发布时间】:2014-07-05 08:32:13
【问题描述】:
我有一个非常基本的 PHP 页面,我从该页面连接到 MySQL 数据库。
我的 MySQL .ini 文件如下:
skip-show-database
local-infile=0
bind-address=::1
我现在了解到通过共享内存进行连接更快、更安全,因此我将 .ini 文件更改为:
skip-show-database
local-infile=0
skip-networking
enable-named-pipe
shared-memory
bind-address=::1
通过这些设置,我可以使用 mysql.exe 命令从 DOS 访问数据库,没有任何问题,但是如果我尝试重新加载我的 PHP 页面,我会收到以下错误:
由于目标机器主动拒绝,无法建立连接。
我正在通过以下方式连接到数据库:
$con=mysqli_connect("localhost", "serveradmin", "XXXXXXXXXXXXXXXXXX", "mysql");
我注意到使用 TCP/IP 的数据库端口是 3306,但使用共享内存时它是 0。
我错过了什么?会是这样吗?
【问题讨论】:
-
你试过在.ini中显式设置端口吗?
-
我建议远离共享内存,改用套接字。
-
我必须在 my.ini 中进行哪些更改才能使用套接字?
标签: php mysql shared-memory