You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django生产环境迁移遇MySQL 1142错误:用户缺少REFERENCES权限

Django生产环境MySQL迁移权限问题解决

错误原因

生产环境使用的MySQL用户test_user缺少对目标数据库中django_content_type表的REFERENCES权限,导致执行auth.0001_initial迁移时失败——该迁移需要创建关联到django_content_type的外键,必须具备此权限。

解决步骤

  1. 登录生产环境MySQL服务器,使用拥有超级权限的账号(如root)执行授权命令:

    -- 仅授予REFERENCES权限,解决当前问题
    GRANT REFERENCES ON `你的数据库名`.* TO 'test_user'@'22.161.40.219';
    FLUSH PRIVILEGES;
    

    替换你的数据库名为Django项目实际使用的数据库名称。

  2. 可选:授予完整必要权限
    为避免后续迁移或运行时出现其他权限问题,可以一次性授予Django所需的核心权限:

    GRANT CREATE, ALTER, DELETE, INSERT, SELECT, UPDATE, REFERENCES ON `你的数据库名`.* TO 'test_user'@'22.161.40.219';
    FLUSH PRIVILEGES;
    
  3. 重新执行迁移
    回到Django项目目录,运行迁移命令继续完成剩余操作:

    python manage.py migrate
    

内容的提问来源于stack exchange,提问作者lolz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 10:03:33