django更换mysql数据库

作者:admin 发布日期:2024年4月16日 09:11 浏览量:51

1 导出原有数据: python -Xutf8 manage.py dumpdata --natural-primary --natural-foreign -o db.json
2 在目标数据库(MySQL / PostgreSql)里创建一个空的库
3 在 settings.py 里切换到新的数据库
4 建立新的数据库表结构 python manage.py migrate
5 导入原有数据: python manage.py loaddata db.json

附上几种数据库配置,方便使用

db_config = {
    'sqlite': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
        'OPTIONS': {
            'timeout': 20,
        }
    },
    'pgsql': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': '数据库名称',
        'USER': '用户名',
        'PASSWORD': '密码',
        'HOST': '数据库服务器地址',
        'PORT': 5432,
    },
    'mysql': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': '数据库名称',
        'USER': '用户名',
        'PASSWORD': '密码',
        'HOST': '数据库服务器地址',
        'PORT': 3306,
    }
}
# 这里可以方便切换不同数据库
DATABASES = {'default': db_config['pgsql']}

中:

MySQL 需要安装 mysqlclient 包

PostgreSql 需要安装 psycopg2