连接到数据库时出现“接口错误:2003”

Seb*_*ian 5 python mysql database

我正在尝试使用 MySQL Connection/Python 连接到我的数据库。

这是我得到的输出:

Traceback (most recent call last):
  File "bh2000.py", line 33, in <module>
    cnx = mysql.connector.connect(**config)
  File "/Library/Python/2.7/site-packages/mysql/connector/__init__.py", line 155, in connect
    return MySQLConnection(*args, **kwargs)
  File "/Library/Python/2.7/site-packages/mysql/connector/connection.py", line 123, in __init__
    self.connect(**kwargs)
  File "/Library/Python/2.7/site-packages/mysql/connector/connection.py", line 430, in connect
    self._open_connection()
  File "/Library/Python/2.7/site-packages/mysql/connector/connection.py", line 393, in _open_connection
    self._socket.open_connection()
  File "/Library/Python/2.7/site-packages/mysql/connector/network.py", line 375, in open_connection
    errno=2003, values=(self.get_address(), _strioerror(err)))
mysql.connector.errors.InterfaceError: 2003: Can't connect to MySQL server on 'host xxx.db.1and1.com:3306' (8 nodename nor servname provided, or not known)
Run Code Online (Sandbox Code Playgroud)

这是我正在使用的代码:

import mysql.connector

cnx = mysql.connector.connect(user='xxx', password='xxx',
                              host='xxx.db.1and1.com',
                              database='xxx')
cnx.close()
Run Code Online (Sandbox Code Playgroud)

我哪里错了?

pan*_*ish 4

  • 您指定了正确的端口吗?
  • 你的 MySQL 服务器正在运行吗?
  • 防火墙是否阻止访问?
  • 尝试从 MySQL 服务器中删除匿名用户帐户?

如果未指定,默认端口为 3306。否则您的代码没有任何问题。问题出在您的 MySQL 服务器上,或者连接被您的防火墙或服务器防火墙阻止。确保端口 3306 已打开且未被阻止。

db = mysql.connector.connect(user='xxx', password='xxx', host='xxx.db.1and1.com', port=3306)
Run Code Online (Sandbox Code Playgroud)