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

如何解决Ubuntu部署Graphite时django.db.utils.OperationalError数据库不存在问题

解决Graphite迁移PostgreSQL数据库时提示"database does not exist"的问题

问题原因

Django的migrate命令不会自动创建PostgreSQL数据库,必须手动提前创建对应的数据库实例。

解决步骤

  1. 切换到PostgreSQL超级用户并进入命令行:
sudo -u postgres psql
  1. 在PostgreSQL命令行中创建指定的数据库:
CREATE DATABASE "graphite.db";

注意:由于你的数据库名包含.db后缀,需要用双引号包裹以避免PostgreSQL解析错误;更规范的做法是去掉.db后缀(比如直接命名为graphite),同时修改local_settings.py里的NAME字段为'graphite'。

  1. 授权graphite用户拥有该数据库的全部权限:
GRANT ALL PRIVILEGES ON DATABASE "graphite.db" TO graphite;
  1. 退出PostgreSQL命令行:
\q
  1. 重新执行迁移命令:
sudo graphite-manage migrate auth

额外检查点

  • 确认PostgreSQL服务正在运行:sudo systemctl status postgresql,如果未启动则执行sudo systemctl start postgresql并设置开机自启sudo systemctl enable postgresql。
  • 验证graphite用户连接数据库是否正常:psql -U graphite -d "graphite.db" -h 127.0.0.1 -p 5432,输入密码后能进入则说明连接正常。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 16:06:11