文章内容

2021/7/16 18:40:35,作 者: 黄兵

(MySQLdb._exceptions.OperationalError) (1142, "CREATE command denied to user ''@'' for table ''")

最近在使用SQLAlchemy初始化数据库的时候,出现了如下错误提示:

sqlalchemy.exc.OperationalError: (MySQLdb._exceptions.OperationalError) (1142, "CREATE command denied to user 'User'@'1.1.1.1' for table 'alembic_version'")

出现以上错误的原因:
用户的权限不足,具体看看执行的sql语句:
CREATE TABLE alembic_version (
        version_num VARCHAR(32) NOT NULL,
        CONSTRAINT alembic_version_pkc PRIMARY KEY (version_num)
)

可以看到这里需要用到CREATE这个命令,我们查看由于是否可以执行CREATE这条sql命令:

show grants for 'User'@'%';

这里查询User的权限,具体结果如下:


可以看到并没有赋予用户CREATE权限。

解决方案:

根据项目情况,如果项目允许修改用户权限,直接修改用户权限,如果无法修改权限,直接换有权限的用户建表。


参考资料:

1、MySQL之权限管理


黄兵个人博客原创。

转载请注明出处:黄兵个人博客 -  (MySQLdb._exceptions.OperationalError) (1142, "CREATE command denied to user ''@'' for table ''")

分享到:

发表评论

评论列表