1. 备份mysql数据

使用Navicat转换,之前用Navicat 12由于版本过低连不了postgresql,所以换成了Navicat 16,

将mysql数据库中的数据导出csv

2. settings设置postgrespl:

DATABASES = {
    'default': {
        'ENGINE': "django.db.backends.postgresql",
        'NAME': "mos",          #数据库名字
        'USER': "postgres",     #账号
        'PASSWORD': "***",      #密码
        'HOST': "127.0.0.1",    #IP
        'PORT': 5432,                   #端口
    }
}

3. Django数据库的同步

python manage.py makemigrations
python manage.py migrate

这时报了一个错:

psycopg2.errors.UniqueViolation: duplicate key value violates unique constraint "adminconnect_task_pkey"

DETAIL:  Key (id)=(1) already exists.

发现是Django版本的问题,Django版本必须高于4.1

4. 同步数据到postgrespl

将第一步中导出的mysql数据导入到migrate新生成的数据表中

Thanks

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐