通过Python连接远程MySQL数据库

use*_*838 15 python mysql

我尝试过以下脚本,但遗憾的是无效.我正在使用免费的MySQL数据库提供程序.有任何想法吗?

import MySQLdb

myDB = MySQLdb.connect(host="208.11.220.249",port=3306,user="XXXXX",passwd="XXXXX",db="XXXXX")
cHandler = myDB.cursor()
cHandler.execute("SHOW DATABASES")
results = cHandler.fetchall()
for items in results:
    print items[0]
Run Code Online (Sandbox Code Playgroud)

目前,我收到以下错误:

super(Connection, self).__init__(*args, **kwargs2)
_mysql_exceptions.OperationalError: (1044, "Access denied for user 'XXXXX'@'%' to database 'XXXXX'")
Run Code Online (Sandbox Code Playgroud)

sol*_*anv 9

 GRANT ALL
 ON  *.*
 TO user@192.168.39.17  -- client ip address
 IDENTIFIED BY 'pwd';
Run Code Online (Sandbox Code Playgroud)

编辑

这是您在数据库上运行的SQL,以确保可以user访问所有内容.pwduser密码.

基本上,此答案假定连接问题是凭据问题.


Ran*_*dra 6

这就是我要做的

  1. 查看该端口是否实际在该计算机上打开.
  2. 在您要连接的计算机上,打开console/cmd/terminal并查看是否可以使用连接mysql -u XXXX -h 208.11.220.249 -p.如果您的mysql客户端无法连接,那么您无法使用python进行连接