python连接到数据库没有连接

时间:2014-04-02 09:23:27

标签: python sql database

我有一个简单的问题

当我通过python将数据放入本地主机服务器的数据库时,我会执行以下操作

db= MySQLdb.connect("localhost", "root", "pass", "Database")

现在我只为我和我朋友分享的主持人服务器

Cpanel数据库部分的快照如附件所示。

enter image description here

现在我应该在以下代码中输入什么来连接数据库

db= MySQLdb.connect( , , ,)

我试过这个但是失败了]

db= MySQLdb.connect("moeenmh.com","moeenmh_ahmed","<mypass>","moeenmh_ahmed")

我为自己创建的用户是moeenmh_ahmed并拥有密码]

错误为"Access denied for user 'moeenmh_ahmed'@'91.74.98.6' (using password: YES)")

2 个答案:

答案 0 :(得分:0)

您的数据库名称必须是全名,而不仅仅是_ahmed部分。所以它应该是moeemnh_adhmed。协议应该是'TCP'用于远程连接。

另外,检查是否已为远程连接配置MySQL。所以首先尝试使用以下方式连接到它:
mysql -u moeenmh_ahmed -h moeenmh.com -p

请参阅以下设置权限的答案:https://stackoverflow.com/a/12844804/1431750。引用:

  

你必须把它作为root:

GRANT ALL PRIVILEGES ON *.* TO  'USERNAME'@'IP'  IDENTIFIED  BY  'PASSWORD';
     

其中IP是您要允许访问的IP,USERNAME是您用来连接的用户

     

如果您想允许从任何IP访问,只需输入%而不是IP

     

然后你只需要把

FLUSH PRIVILEGES
     

或重启mysql服务器,就是这样

答案 1 :(得分:0)

我可以从Cpanel屏幕截图中看到moeenmh_ahmed无法访问moeenmh_ahmed数据库。 您可以在Cpanel文档中看到如何执行此操作: http://docs.cpanel.net/twiki/bin/view/AllDocumentation/CpanelDocs/MySQLDatabases#Define用户权限