Django从sqlite3切换数据库服务器到postgresql
Tags:
安装postgresql 服务器
# ubuntu
# centos
安装python依赖
# ubuntu 环境
sudo apt-get install libpg-dev
pip install psycopg2
# centos7(failed: need path with postgres/version/bin)
yum install postgresql-libs
pip install psycopg2
# centos7
yum install libpqxx-devel
pip instlal psycopg2
备份当前的数据
# 忽略session, admin操作记录以及每次自动创建的对象
./manage.py dumpdata --indent=4 -e sessions -e admin -e contenttypes -e auth.Permission > data.json
# 备注
# 如果需要备份contrib.auth.Permission或者contrib.contenttypes.Contenttype 需要使用--natural-foreign
# 如果需要重新开始primary_key,使用--natural-primary
配置django
# settings.py
DATABASES = {
'default': {
'ENGINGE': 'django.db.backends.postgresql',
'NAME': 'dbname',
'USER': 'dbuser',
'PASSWORD': 'password',
'HOST': '127.0.0.1',
'PORT': '5432'
}
}
恢复数据库
./manage.py loaddata data.json
Written on October 10, 2016