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

Django项目中从sqlite3迁移数据表至PostgreSQL的最简方案

Django项目中SQLite3迁移至PostgreSQL的最简方法

以下是基于Django原生工具的最简迁移流程,无需额外第三方工具:

  • 备份SQLite数据
    使用Django的dumpdata命令导出全量数据,排除自动生成的权限和内容类型表(避免导入时冲突):

    python manage.py dumpdata --exclude auth.permission --exclude contenttypes > data.json
    
  • 切换PostgreSQL数据库配置
    修改项目根目录下的settings.py,替换DATABASES配置为PostgreSQL信息:

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.postgresql',
            'NAME': '你的数据库名称',
            'USER': '数据库用户名',
            'PASSWORD': '数据库密码',
            'HOST': 'localhost',
            'PORT': '5432',
        }
    }
    
  • 初始化PostgreSQL数据库
    先在PostgreSQL中创建对应数据库,可通过命令行执行:

    createdb 你的数据库名称
    

    (也可以通过pgAdmin等图形化工具创建)

  • 生成PostgreSQL表结构
    执行Django迁移命令,创建与原SQLite一致的表结构:

    python manage.py migrate
    
  • 导入备份数据
    使用loaddata命令将之前导出的JSON数据导入PostgreSQL:

    python manage.py loaddata data.json
    

注意事项

  • 确保PostgreSQL服务处于运行状态(Linux可执行systemctl start postgresql,Windows需在服务列表中启动)。
  • 若数据量较大,导出/导入过程可能耗时较长,但这是最适配Django的原生方案,兼容性最佳。
  • 若项目中有自定义的模型或特殊字段,dumpdata会自动处理跨数据库的类型兼容问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 16:10:26