2017-07-28 57 views
0

我可以登录,在我的本地使用空密码根:MySQL不能做root身份登录本地主机上,即使使用sudo

sudo mysql -u root 

我想与PyMySQL做到这一点在Python:

try: 
    sql_conn = pymysql.connect(host='localhost', user='root', 
          password='') 
except: 
    print('exception') 

但即使我运行我的Python脚本为rootsudo,我也会遇到异常。我该如何解决这个问题(安全性不是问题,孤立的测试环境)。

+2

这是数据库的root用户,而不是系统的root用户。 – 2017-07-28 12:21:05

+0

如果你的mysql是5.7.x或更高版本...尝试创建一个mysql用户参考:https://github.com/PyMySQL/mysqlclient-python/issues/71 –

+1

我假设你使用'auth_socket'作为你的根目录用户(尝试在你的第一个命令中指定一个错误的(=任何)密码,你仍然可以登录)。您可以更改(mysql)root帐户以使用正常密码(所以基本上做与完​​成相反的操作[here](https://stackoverflow.com/questions/39968082/how-can-i-reset-default- root-user-behavior-on-mysql-5-7))或使用其他用户。 – Solarflare

回答

0

尝试

import pymysql 
    conn = pymysql.connect(host='ServerIP', port=3306, user='remoteMe', passwd='mypassword', db='myDB') 
相关问题