【问题标题】:Mysql ([Errno 111] Connection refused)")Mysql ([Errno 111] 连接被拒绝)")
【发布时间】:2021-06-08 14:26:51
【问题描述】:

我想将 python 与 MySQL 连接起来。在我的本地计算机上,我得到它是这样的:

connection = pymysql.connect(host='127.0.0.1',
                             user='test',
                             password='password',
                             database='database_name')

这对我有用。但是当我尝试在 VPS 上执行此操作时,我遇到了这个错误:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/pymysql/connections.py", line 920, in connect
    **kwargs)
  File "/usr/lib/python3.6/socket.py", line 724, in create_connection
    raise err
  File "/usr/lib/python3.6/socket.py", line 713, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "save_payments.py", line 13, in <module>
    database='payment_reg')
  File "/usr/lib/python3/dist-packages/pymysql/__init__.py", line 90, in Connect
    return Connection(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/pymysql/connections.py", line 699, in __init__
    self.connect()
  File "/usr/lib/python3/dist-packages/pymysql/connections.py", line 967, in connect
    raise exc
pymysql.err.OperationalError: (2003, "Can't connect to MySQL server on '127.0.0.1' ([Errno 111] Connection refused)")

怎么了? VPS admin告诉我mysql中的unix socket,但我不知道如何实现。

【问题讨论】:

标签: python mysql python-3.x pymysql unix-socket


【解决方案1】:

当使用错误的端口时,

curl -I localhost:33006

我得到错误“卷曲:(7)无法连接到本地主机端口33006:连接被拒绝

你可能需要更换端口吗?

conn = pymysql.connect(
    host='localhost', 
    #charset='utf8mb4'
    port=3306, 
    user='root', 
    passwd='', 
    db='Work'
    )

有时使用地址启动应用程序可能会产生不同的结果

if __name__ == '__main__':
    app.run_server(host='127.0.0.1', port='8050', debug=True)

if __name__ == '__main__':
    app.run_server(host='0.0.0.0', port='8050', debug=True)

可能还有很多原因,比如打开防火墙。你看过sql server上的日志吗?这样就可以找到任何原因 sql server 没有响应

【讨论】:

    【解决方案2】:

    问题出在 mysql 设置中。它只监听套接字连接。我添加了 bind-address = 127.0.0.1 my.cnf 中,并评论了单词套接字的所有行))))

    【讨论】:

      猜你喜欢
      • 2019-12-13
      • 2020-11-22
      • 2014-09-14
      • 2021-08-23
      • 2016-11-12
      • 2011-08-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多