gpt4 book ai didi

mysql - Django - 将数据库从 sqlite 迁移到 mysql

转载 作者:行者123 更新时间:2023-11-30 21:54:58 27 4
gpt4 key购买 nike

我正在尝试将我的 sqlite 数据库迁移到 mysql。我使用了 dumdata/loaddata 命令:

python manage.py dumpdata > datadump.json

接下来将我的 settings.py 更改为

# DATABASES = {
# 'default': {
# 'ENGINE': 'django.db.backends.sqlite3',
# 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
# }
# }

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'testowa',
'USER': 'testowy',
'PASSWORD': 'mypassword',
'HOST': 'localhost',
'PORT': '3306',
}
}

并运行 python manage.py loaddata datadump.json

我得到一个错误:

django.db.utils.ProgrammingError: (1146, "Table 'testowa.constance_config' doesn't exist")

有什么想法吗?

最佳答案

Django 需要

1) 对新数据库使用 migrate 命令(如果您使用的是 authrouter,请指定数据库:

python manange.py migrate --database=yourdatabasename

2) 具有逻辑顺序的转储数据(例如,如果在 table1 中您有一个指向 table2 的外键,则 table2 必须在 table1 之前导入)

3) 要创建逻辑顺序,只需转储单个模型即可

./manage.py dumpdata myapp1.fist_model myapp1.second_model > ordered_file.json

4) 加载数据

关于mysql - Django - 将数据库从 sqlite 迁移到 mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45586104/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com