2010-09-15 67 views
3

我無法通過php連接到mysql。它在PHP中執行mysql_connect()函數時,會在apache錯誤日誌中產生[error] [client 127.0.0.1] PHP Warning: mysql_connect(): No such file or directory錯誤消息。無法從PHP連接到MySQL:「mysql_connect():沒有這樣的文件或目錄」

$ php -m | grep mysql 
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20090626/msql.so' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20090626/msql.so, 9): image not found in Unknown on line 0 
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20090626/php_mysql.dll' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20090626/php_mysql.dll, 9): image not found in Unknown on line 0 
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20090626/php_mysqli.dll' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20090626/php_mysqli.dll, 9): image not found in Unknown on line 0 
mysql 
mysqli 
mysqlnd 
pdo_mysql 

$ mysqladmin -h `hostname` --port=3306 version 
/usr/local/mysql/bin/mysqladmin: connect to server at 'heapzero.local' failederror: 'Host '192.168.1.36' is not allowed to connect to this MySQL server' 

PHP版本:

$ php --version 
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20090626/msql.so' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20090626/msql.so, 9): image not found in Unknown on line 0 
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20090626/php_mysql.dll' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20090626/php_mysql.dll, 9): image not found in Unknown on line 0 
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20090626/php_mysqli.dll' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20090626/php_mysqli.dll, 9): image not found in Unknown on line 0 
PHP 5.3.2 (cli) (built: Aug 7 2010 00:04:41) 
Copyright (c) 1997-2010 The PHP Group 
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies 

的MySQL版本:

運行php -m命令時,請找到相應的警告信息

mysql --version 
/usr/local/mysql/bin/mysql Ver 14.14 Distrib 5.1.50, for apple-darwin10.3.0 (i386) using readline 5.1 

我花了很多時間試圖解決這個問題。請建議!謝謝!

+0

@heapzero - 這可能是更好的問堆棧溢出。我正在投票決定將其遷移到那裏,請不要轉貼,如果其他人同意遷移,應該轉移。 – JNK 2010-09-15 12:54:51

+0

這是什麼確切的平臺?你是如何安裝MySQL的? '$ mysqladmin -h \'主機名\'--port = 3306版本'在我的Snow Leopard上可以正常工作,但我看起來MySQL的版本低於你(5.0.51),儘管我最近OSX(10.6.4)。 – 2010-09-15 15:50:46

回答

7

如果您使用的是Mac OS X Lion中,嘗試改變服務器/主機名到IP地址來代替。
示例:代替localhost,在PHP代碼中使用127.0.0.1

+0

在使用lampp時,它也發生在我身上,它看起來和lampp使用的Unix套接字有衝突,而分發mysql使用的套接字 – 2014-10-03 06:05:48

相關問題