为什么我不能连接到远程mysql数据库?

时间:2016-06-06 19:27:22

标签: python mysql jdbc

我获得了一些凭据,但我似乎在这里遗漏了一些东西,因为在尝试建立连接时脚本出错了。

import mysql.connector

def test_sql_query():
    db = mysql.connector.connect(host='hostname', database='db', user='dbuser,' password='dbpass', port='000')
    cur = db.cursor()
    if db.is_connected():
        print('Connected to MySQL database')
    try:
        sql_command = "select * from test where test like '%FileUploadAgent%' and status='00' order by test desc;"
        cur.execute(sql_command)
        db.commit()
        rows = cur.fetchall()
        for row in rows:
            print "   ", row[1][1]
    except:
        print "did not work"
    db.close()

我获得了以下凭据:host,user,passwd,driver,jdbc.url,port

在我的sql脚本中,我无处使用驱动程序或jdbc.url。这两件事是什么,他们需要建立数据库连接。这就是我无法连接的原因吗?

2 个答案:

答案 0 :(得分:0)

您可能需要检查是否允许远程数据库远程连接。

How to allow remote connection to mysql

答案 1 :(得分:0)

此行缺少逗号:

db = mysql.connector.connect("host='hostname' database='db' user='dbuser' password='dbpass' port='000'")

替换为

db = mysql.connector.connect(host='hostname', user='dbuser', passwd='dbpass', db='db')