在mac os mavericks上尝试使用mysql、php和apache连接到localhost
我正在尝试使用apache和php在本地连接mysql。我可以使用mysql workbench连接到mysql,也可以将php与apache一起使用,但是我不能使用php连接到mysql。 当我尝试时,我得到以下信息:在mac os mavericks上尝试使用mysql、php和apache连接到localhost,php,mysql,macos,apache,localhost,Php,Mysql,Macos,Apache,Localhost,我正在尝试使用apache和php在本地连接mysql。我可以使用mysql workbench连接到mysql,也可以将php与apache一起使用,但是我不能使用php连接到mysql。 当我尝试时,我得到以下信息: Warning: mysql_connect(): Connection refused in /Library/WebServer/Documents/login.php on line 25 代码如下: mysql_connect($connection= mysql_c
Warning: mysql_connect(): Connection refused in /Library/WebServer/Documents/login.php on line 25
代码如下:
mysql_connect($connection= mysql_connect("localhost", "RainyCats", "********");
我也用根试过:
mysql_connect($connection= mysql_connect("localhost", "root", "********");
系统首选项中的mysql首选项窗格显示服务器正在运行,我已将所有权限授予RainyCats
我已经创建了从/private/var/mysql/mysql.sock到/tmp/mysql.sock的指向mysql.sock的符号链接
my.cnf文件位于etc/my.cnf中
我使用dmg安装了mysql
编辑:我有php版本:5.4.24和Apache:2.2.26
谢谢,,
Rainy我在Mountain Lion操作系统上也遇到了同样的问题,这可能是背后的套接字错误。 对于Macos上的本地服务器,您必须在php代码中指定mysql服务器使用的套接字文件:
$username = 'myusername';
$password = 'mypassword';
$host = 'localhost:/tmp/mysql.sock';
$database = 'mydatabase';
#connect to the database or die
$link = mysql_connect($host, $username, $password);
if (!$link) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db ($database);
- 首先,你会告诉我“好的,但是我的套接字文件到底在哪里?”
- 获得路径后,在php代码中使用它:
$username = 'myusername'; $password = 'mypassword'; $host = 'localhost:/tmp/mysql.sock'; $database = 'mydatabase'; #connect to the database or die $link = mysql_connect($host, $username, $password); if (!$link) { die('Could not connect: ' . mysql_error()); } mysql_select_db ($database);
希望这有帮助…感谢您的帮助,情况略有改变:Mysql服务器实例不会从系统首选项开始,它只是旋转然后说停止。我也无法从终端启动它,如果我将主机更改为127.0.0.1,我的php将连接到mysql。我尝试通过终端连接时遇到的错误是:错误2002(HY000):无法通过套接字“/tmp/MySQL.sock”连接到本地MySQL服务器(2)