PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

migrasi dari sqlite ke postgresql di Django

Saya telah memutuskan untuk menjelaskan instruksi dari awal:

  1. Instal Postgres di komputer Anda.

    • Instal pertama sudo apt-get install libpq-dev python-dev yang merupakan dependensi Postgres untuk bekerja dengan Django dengan sempurna.
    • Kemudian, masukkan sudo apt-get install postgresql postgresql-contrib perintah untuk menginstal Postgres.
  2. Akses ke Postgres menggunakan sudo su - postgres perintah.

  3. Buat basis data baru. createdb <dbname>

  4. Buat pengguna database (dengan kata sandi). createuser -P <username>

  5. Akses shell menggunakan psql perintah.

  6. Berikan pengguna baru ini akses ke database baru Anda dengan GRANT ALL PRIVILEGES ON DATABASE <dbname> TO <username>; perintah.

  7. Buang data yang ada. python3 manage.py dumpdata > datadump.json

  8. Instal paket Postgres. pip install psycopg2

  9. Ubah konfigurasi settings.py menjadi berikut:

DATABASES = {
 'default': {
     'ENGINE': 'django.db.backends.postgresql_psycopg2',
     'NAME': '<dbname>',
     'USER': '<username>',
     'PASSWORD': '<password>',
     'HOST': 'localhost',
     'PORT': '',  
 }
}

  1. Pastikan Anda dapat terhubung ke Postgres DB. python3 manage.py migrate --run-syncdb

  2. Jalankan ini pada shell Django untuk mengecualikan data tipe konten.

python3 manage.py shell

>>> from django.contrib.contenttypes.models import ContentType
>>> ContentType.objects.all().delete()
>>> quit()
  1. Terakhir, muat data Anda. python3 manage.py loaddata datadump.json


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Fungsi Escape untuk ekspresi reguler atau pola LIKE

  2. Atur Urutan Dengan untuk mengabaikan tanda baca per kolom

  3. psycopg2 cursor.execute() dengan parameter query SQL menyebabkan kesalahan sintaks

  4. pgAdmin 4 versi. 1.5 - tidak ada pesan kesalahan

  5. Paksa Liquibase untuk memetakan Blob ke BYTEA di PostgreSQL