Найти в Дзене
IT - Это просто

Установка и настройка Django PostgreSQL

Оглавление

Всем салют, друзья! Продолжаем наш курс:

Вступайте в группу - vk.com/mrsisadm - там больше интересного!!!

Сейчас мы узнаем, что SQLite - это очень мощная встроенная система управления реляционными базами данных, которая предлагает действительно потрясающий набор инструментов для управления примерно всеми видами данных. Но когда дело доходит до многопользовательских приложений (когда несколько пользователей хотят использовать одни и те же базы данных), это не очень хорошо. Поэтому рекомендуется выбирать полнофункциональную систему управления реляционными базами данных, а не SQLite.

Некоторыми примерами полнофункциональной СУБД являются базы данных MySQL, PostgreSQL, Oracle.

Django очень гибок в плане изменения баз данных.

Итак, в этой статье мы увидим, как изменить базу данных с SQLite на PostgreSQL.

Давайте начнем.

Шаг 1. Установите PostgreSQL

Чтобы установить PostgreSQL для Django в Ubuntu:

Откройте терминал и введите эти две команды.

sudo apt-get update

sudo apt-get install python-pip python-dev libpq-dev postgresql postgresql- contrib

Чтобы установить PostgreSQL для Django в Windows:

Загрузите установщик с официального сайта:  https://www.postgresql.org/download/windows/

И следуйте инструкциям, указанным в ссылке. При установке необходимо ввести пароль и номер порта. Запишите это.

Чтобы установить PostgreSQL для Django в Mac OS:

Как и в случае с Windows, вам необходимо загрузить установщик с официального сайта:  https://www.postgresql.org/download/macosx/

При установке необходимо ввести пароль и номер порта. Запишите это.

Шаг 2: настройка пользователя и базы данных

Войдите, используя свой пароль.

Здесь я использую Ubuntu 18.04 и получаю доступ к PostgreSQL из терминала, поэтому мне нужно переключиться на пользовательский postgres, который был создан при установке PostgreSQL.

Чтобы переключить пользователя на postgres, откройте терминал и введите

sudo su - postgres

-2

Теперь вы готовы войти в сеанс оболочки для пользователя postgres. Войдите в сеанс Postgres, набрав:

psql
psql

Теперь создайте базу данных, набрав:

СОЗДАТЬ БАЗУ ДАННЫХ myproject ;

-4

Выберите имя базы данных, которое больше подходит для вашего проекта. Поскольку это всего лишь пример, я использую здесь  myproject.

Теперь создайте пользователя, который будет использовать только что созданную базу данных. Чтобы создать тип пользователя:

СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ myuser С ПАРОЛЕМ mypassword;

-5

Итак, наш пользователь и база данных созданы.

Теперь, наконец, дайте пользователю права доступа к типу базы данных:

ПРЕДОСТАВЛЯЙТЕ ВСЕ ПРИВИЛЕГИИ НА БАЗЕ ДАННЫХ myproject пользователю  myuser;

-6

Теперь просто введите \ q, чтобы вернуться в сеанс оболочки пользователя postgres, затем введите exit.

-7

Это все о настройке базы данных.

Шаг 4: Установите psycopg2

psycopg2 - самый популярный адаптер базы данных PostgreSQL для работы с Python. Чтобы установить pycopg2, введите:

pip install django psycopg2

-8

Примечание.  Я использую pip3 вместо pip, потому что в моем Ubuntu Linux установлены обе версии.

Шаг 5: отредактируйте файл настроек вашего проекта

Откройте файл настроек вашего проекта в режиме записи и перейдите в раздел БАЗЫ ДАННЫХ.

-9

Здесь видно, что sqlite3 связан с нашим проектом. Чтобы изменить его на PostgreSQL, просто измените эти строки как:

БАЗЫ ДАННЫХ = {

'по умолчанию': {

'ДВИГАТЕЛЬ': 'django.db.backends.postgresql',

"ИМЯ": "мойпроект",

'ПОЛЬЗОВАТЕЛЬ': ' myuser ,

'ПАРОЛЬ': 'мой пароль',

'HOST': 'localhost',

«ПОРТ»: «5432»

}

}

-10

В приведенном выше коде NAME, USER, PASSWORD - это имя базы данных, имя вашего пользователя и пароль, которые мы создали при создании пользователя.

И ПОРТ - это тот же номер, который я рекомендовал записать при установке PostgreSQL.

Шаг 6: перенесите свой проект

Итак, мы установили PostgreSQL и настроили файл settings.py. Теперь последний шаг - перенос вашего проекта.

Откройте каталог проекта в терминале и введите:

сервер запуска python manage.py

-11

Все настроено, тестируется и запускается ваш проект.

Это все о замене базы данных с SQLite на PostgreSQL.

Примечание.  Если во время миграции вы столкнетесь с таким предупреждением, как:

UserWarning: пакет psycopg2 wheel будет переименован в версии 2.8; чтобы продолжить установку из двоичного файла, используйте вместо него «pip install psycopg2-binary». Подробнее см .: <http://initd.org/psycopg/docs/install.html#binary-install-from-pypi>.

«» »)

Вы можете решить эту проблему, установив psycopg2-binary, используя следующую команду:

pip install psycopg2-binary

Если у вас есть какие-либо вопросы, связанные с установкой и настройкой Django PostgreSQL, сообщите нам об этом в поле для комментариев.