Django Sqlite3 数据库向MySQL迁移

本文详细介绍了如何在Django项目中将SQLite数据库迁移至MySQL数据库,并同步数据,包括建立从库、复制表结构和数据、调整配置和解决静态文件路径问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

整合了两个URL而来。。

1,http://www.phodal.com/blog/django-mezzanine-sqlite3-migrate-mysql/

2,http://www.ziqiangxuetang.com/django/django-data-migration.html

A.先建立一个SLAVE数据库

DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.sqlite3",
        "NAME": "dev.db",
        "USER": "",
        "PASSWORD": "",
        "HOST": "",
        "PORT": "",
    },
    "slave": {
        "ENGINE": "django.db.backends.mysql",
        "NAME": "phodal",
        "USER": "root",
        "PASSWORD": "",
        "HOST": "",
        "PORT": "",
    },
}

B.然后,在MYSQL建立空的数据库,将表结果从主库弄到从库:

CREATE DATABASE phodal CHARACTER SET utf8 COLLATE utf8_general_ci;

python ./manage.py syncdb --database slave

C.确保每个APP的SQL过程语句生成,没有的话,运行以下语句:

python manage.py makemigrations FAT

D.将SQLITE主库的数据导出:

python manage.py dumpdata > mysite_all_data.json

E.切换主库和从库的setting.py设置,将MYSQL设置为主库,导入数据。

python manage.py loaddata mysite_all_data.json

  如果静态文件CSS.JS指向错误,则运行:

   python manage.py collectstatic

  然后将静态文修的放到合适的位置。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值