10

我有 MySQL 基础“测试”,root 上没有密码。我可以在那里登录

mysql -uroot test # all fine

我想用sqlalchemy. 我尝试使用这些 URL:

mysql+mysqldb://root@localhost/test

mysql+mysqldb://root:@localhost/test

但是它们都因错误而失败:

sqlalchemy.exc.OperationalError: (OperationalError)
    (1045, "Access denied for user
    'root'@'localhost' (using password: NO)") None None

我应该如何在没有密码的情况下访问基地?

编辑

我也试过:

mysql://root@/test
mysql+mysqldb://root@/test

使用带有密码的本地虚拟帐户,它可以正常工作。

4

2 回答 2

4

尝试: mysql://root@localhost/test?

具体来说: engine = create_engine('mysql://root@localhost/test?')

于 2013-10-04T07:49:01.567 回答
3

您在命令行上拥有的等效 sqlalchemy url 是

mysql://root@/test

MySQL 认为通过标准 unix 套接字连接的 root 用户(-h在命令行客户端中没有)与通过 tcp 连接的相同用户名是不同的用户

于 2013-04-05T11:45:00.700 回答