Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在OSX上连接到正确的MySQL数据库?(两个mysqld实例正在运行)_Php_Mysql_Macos_Mamp - Fatal编程技术网

Php 如何在OSX上连接到正确的MySQL数据库?(两个mysqld实例正在运行)

Php 如何在OSX上连接到正确的MySQL数据库?(两个mysqld实例正在运行),php,mysql,macos,mamp,Php,Mysql,Macos,Mamp,我有两个MySQL服务器实例在我的机器上运行。一个是与MAMP捆绑在一起的mysql包,另一个是我下载的64位安装,因此我可以使用我的python库 这完全是为了发展 两者都在运行: :~ zachary$ ps -awwx | grep mysql 1944 ?? 0:00.02 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysq

我有两个MySQL服务器实例在我的机器上运行。一个是与MAMP捆绑在一起的mysql包,另一个是我下载的64位安装,因此我可以使用我的python库

这完全是为了发展

两者都在运行:

:~ zachary$ ps -awwx | grep mysql
 1944 ??         0:00.02 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/MyMachine-2.local.pid
 2016 ??         0:10.17 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/data/MyMachine-2.local.err --pid-file=/usr/local/mysql/data/MyMachine-2.local.pid
 6824 ??         0:00.02 /bin/sh /Applications/MAMP/Library/bin/mysqld_safe --port=8889 --socket=/Applications/MAMP/tmp/mysql/mysql.sock --lower_case_table_names=0 --pid-file=/Applications/MAMP/tmp/mysql/mysql.pid --log-error=/Applications/MAMP/logs/mysql_error_log
 6894 ??         0:00.36 /Applications/MAMP/Library/libexec/mysqld --basedir=/Applications/MAMP/Library --datadir=/Applications/MAMP/db/mysql --user=mysql --lower_case_table_names=0 --log-error=/Applications/MAMP/logs/mysql_error_log.err --pid-file=/Applications/MAMP/tmp/mysql/mysql.pid --socket=/Applications/MAMP/tmp/mysql/mysql.sock --port=8889
然而,我的PHP似乎只想连接到MAMP的MySQL服务器。我相信mysql_connect()允许您指定端口,但我不确定如何处理这个问题

谢谢

编辑:当您在MAMP安装中使用MySQL_connect()时,似乎MAMP对自己的MySQL服务器有偏好——不知道为什么——有人能解释一下吗?但我可以使用以下语法连接到手动安装的MySQL服务器:

mysql_connect(':/tmp/mysql.sock', 'username', 'pw');

看起来MAMP正在端口8889上运行,而另一个实例在默认端口(3306)上运行。当然,运行
netstat-lnp
查看所有侦听进程都在使用哪些端口。(警告:再次检查netstat的选项,因为我是Linux用户,而不是Mac用户)。

AJ正确。
并连接到特定端口上的MySQL服务器(3306除外)


@Zachary Burt-来自Linux手册页:-l,--侦听仅显示侦听套接字--数字,-n显示数字地址,而不是试图确定符号主机、端口或用户名-p、 --program显示每个套接字所属程序的PID和名称。您有一个语法错误,我根据函数文档修复了该错误:
mysql_connect("{$mysqlServerNameOrIp}:{$mysqlSpecificServerPort}", 'username', 'password');