InterfaceError: 2003: Can't connect to MySQL server on 'localhost:3306' (13 Permission denied)
InterfaceError: 2003: Can't connect to MySQL server on 'localhost:3306' (13 Permission denied)
我正在尝试使用 python CGI 框架在 apache2 服务器上托管应用程序。该程序在编译时工作正常,没有错误。
当我在网络浏览器上尝试时,出现错误。
InterfaceError: 2003: Can't connect to MySQL server on 'localhost:3306' (13 Permission denied)
我已经尝试安装 mysql-connector-python 并检查我是否遗漏了任何东西。一切似乎都很好。下面是详细的错误代码。
def connectdb():
mydb = mx.connect(host='localhost',user='******',passwd='********',database='searchdb')
cur=mydb.cursor()
return mydb,cur
尝试访问程序时出错。
Traceback (most recent call last):
File "/var/www/html/ftest.py", line 116, in <module>
mydb,cur=connectdb()
File "/var/www/html/ftest.py", line 55, in connectdb
mx.connect(host='localhost',user='*****',passwd='********',database='searchdb')
File "/usr/lib/python2.7/site-packages/mysql/connector/__init__.py", line 98, in connect
return MySQLConnection(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/mysql/connector/connection.py", line 118, in __init__
self.connect(**kwargs)
File "/usr/lib/python2.7/site-packages/mysql/connector/connection.py", line 382, in connect
self._open_connection()
File "/usr/lib/python2.7/site-packages/mysql/connector/connection.py", line 345, in _open_connection
self._socket_open_connection()
File "/usr/lib/python2.7/site-packages/mysql/connector/network.py", line 386, in _open_connection
errno=2003, values=(self.get_address(), _strioerror(err)))
InterfaceError: 2003: Can't connect to MySQL server on 'localhost:3306' (13 Permission denied)
这是我遇到的错误。熟悉这个问题的朋友请告诉我。
谢谢。
一些要检查的东西,假设这是一台 Linux 机器:
确保您可以使用相同的用户名和密码进行本地连接。
mysql -u [youruser] -p
如果 SELinux 是 运行,确保 "httpd_can_network_connect_db" 布尔值设置为开。检查 sudo getsebool httpd_can_network_connect_db
。如果返回为 "off,",则将其设置为 "on" 和 sudo setsebool -P httpd_can_network_connect_db on
。 (确保包含 -P,否则如果系统重新启动,它将恢复为原始值。)
我正在尝试使用 python CGI 框架在 apache2 服务器上托管应用程序。该程序在编译时工作正常,没有错误。 当我在网络浏览器上尝试时,出现错误。
InterfaceError: 2003: Can't connect to MySQL server on 'localhost:3306' (13 Permission denied)
我已经尝试安装 mysql-connector-python 并检查我是否遗漏了任何东西。一切似乎都很好。下面是详细的错误代码。
def connectdb():
mydb = mx.connect(host='localhost',user='******',passwd='********',database='searchdb')
cur=mydb.cursor()
return mydb,cur
尝试访问程序时出错。
Traceback (most recent call last):
File "/var/www/html/ftest.py", line 116, in <module>
mydb,cur=connectdb()
File "/var/www/html/ftest.py", line 55, in connectdb
mx.connect(host='localhost',user='*****',passwd='********',database='searchdb')
File "/usr/lib/python2.7/site-packages/mysql/connector/__init__.py", line 98, in connect
return MySQLConnection(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/mysql/connector/connection.py", line 118, in __init__
self.connect(**kwargs)
File "/usr/lib/python2.7/site-packages/mysql/connector/connection.py", line 382, in connect
self._open_connection()
File "/usr/lib/python2.7/site-packages/mysql/connector/connection.py", line 345, in _open_connection
self._socket_open_connection()
File "/usr/lib/python2.7/site-packages/mysql/connector/network.py", line 386, in _open_connection
errno=2003, values=(self.get_address(), _strioerror(err)))
InterfaceError: 2003: Can't connect to MySQL server on 'localhost:3306' (13 Permission denied)
这是我遇到的错误。熟悉这个问题的朋友请告诉我。
谢谢。
一些要检查的东西,假设这是一台 Linux 机器:
确保您可以使用相同的用户名和密码进行本地连接。
mysql -u [youruser] -p
如果 SELinux 是 运行,确保 "httpd_can_network_connect_db" 布尔值设置为开。检查
sudo getsebool httpd_can_network_connect_db
。如果返回为 "off,",则将其设置为 "on" 和sudo setsebool -P httpd_can_network_connect_db on
。 (确保包含 -P,否则如果系统重新启动,它将恢复为原始值。)