1

我最近在我的 Opensuse 开发服务器上安装了 Zend Server Community Edtion,它运行良好。唯一的问题是它没有连接到我的 MySql 服务器!!它不断抛出错误:

Message: PDO Connection Error: SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

在 /tmp/ 中查找,是的,没有 mysql.sock。但我仍然不知道该怎么做.. 我需要更改一些 apache 配置文件吗?或者改变mysql配置?

我真的需要帮助,因为我有一个大项目要做,我已经搜索了谷歌但没有任何运气。

这是您感兴趣的完整堆栈跟踪:

#0 /srv/www/zend/apache2/htdocs/zend.athand.eu/library/Doctrine/Connection/Mysql.php(101): Doctrine_Connection->connect()
#1 /srv/www/zend/apache2/htdocs/zend.athand.eu/library/Doctrine/Connection.php(1001): Doctrine_Connection_Mysql->connect()
#2 /srv/www/zend/apache2/htdocs/zend.athand.eu/library/Doctrine/Query/Abstract.php(976): Doctrine_Connection->execute('SELECT t.id AS ...', Array)
#3 /srv/www/zend/apache2/htdocs/zend.athand.eu/library/Doctrine/Query/Abstract.php(1026): Doctrine_Query_Abstract->_execute(Array)
#4 /srv/www/zend/apache2/htdocs/zend.athand.eu/application/models/Text.php(25): Doctrine_Query_Abstract->execute()
#5 /srv/www/zend/apache2/htdocs/zend.athand.eu/library/App/View/Helper/Text.php(27): Application_Model_Text->findText('introText')
#6 [internal function]: App_View_Helper_Text->Text('introText')
#7 /srv/www/zend/share/ZendFramework/library/Zend/View/Abstract.php(342): call_user_func_array(Array, Array)
#8 /srv/www/zend/apache2/htdocs/zend.athand.eu/application/modules/pwc/views/scripts/login/password.phtml(6): Zend_View_Abstract->__call('text', Array)
#9 /srv/www/zend/apache2/htdocs/zend.athand.eu/application/modules/pwc/views/scripts/login/password.phtml(6): Zend_View->text('introText')
#10 /srv/www/zend/share/ZendFramework/library/Zend/View.php(108): include('/srv/www/zend/a...')
#11 /srv/www/zend/share/ZendFramework/library/Zend/View/Abstract.php(880): Zend_View->_run('/srv/www/zend/a...')
#12 /srv/www/zend/share/ZendFramework/library/Zend/Controller/Action/Helper/ViewRenderer.php(897): Zend_View_Abstract->render('login/password....')
#13 /srv/www/zend/share/ZendFramework/library/Zend/Controller/Action/Helper/ViewRenderer.php(918): Zend_Controller_Action_Helper_ViewRenderer->renderScript('login/password....', NULL)
#14 /srv/www/zend/share/ZendFramework/library/Zend/Controller/Action/Helper/ViewRenderer.php(957): Zend_Controller_Action_Helper_ViewRenderer->render()
#15 /srv/www/zend/share/ZendFramework/library/Zend/Controller/Action/HelperBroker.php(277): Zend_Controller_Action_Helper_ViewRenderer->postDispatch()
#16 /srv/www/zend/share/ZendFramework/library/Zend/Controller/Action.php(523): Zend_Controller_Action_HelperBroker->notifyPostDispatch()
#17 /srv/www/zend/share/ZendFramework/library/Zend/Controller/Dispatcher/Standard.php(295): Zend_Controller_Action->dispatch('passwordAction')
#18 /srv/www/zend/share/ZendFramework/library/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))
#19 /srv/www/zend/share/ZendFramework/library/Zend/Application/Bootstrap/Bootstrap.php(97): Zend_Controller_Front->dispatch()
#20 /srv/www/zend/share/ZendFramework/library/Zend/Application.php(366): Zend_Application_Bootstrap_Bootstrap->run()
#21 /srv/www/zend/apache2/htdocs/zend.athand.eu/public/pwc/index.php(106): Zend_Application->run()
#22 {main}

如果您需要更多信息,我很乐意为您提供

4

4 回答 4

1

错误消息意味着 mysql.sock 位于其他位置。这在 Zend CE、MAMP、XAMPP 等应用程序中经常发生,您应该查看 mysql.sock 的位置(可能在 Zend CE 安装文件夹中的 tmp 文件夹中),然后您必须在代码中指定这个新位置,您通常可以为套接字位置指定一个可选参数。

于 2011-01-20T13:24:43.340 回答
0

我有非常强烈的印象,你没有打开 MySQL 模块

转到服务器设置-> 扩展并查找它

如果打开,请查看指令...

于 2011-01-20T13:16:51.537 回答
0

您可以在配置文件中进行配置:

resources.db.adapter                    = "pdo_mysql"
resources.db.params.host                = "localhost"
resources.db.params.username            = "root"
resources.db.params.password            = ""
resources.db.params.dbname              = "your db name"
resources.db.params.driver_options.1002 = "SET NAMES utf8"
resources.db.params.unix_socket         = "/var/run/mysqld/mysqld.sock"
于 2011-01-21T08:19:23.243 回答
0

这可能会解决问题

http://forums.zend.com/viewtopic.php?f=8&t=21873

于 2011-09-14T07:15:23.683 回答