PostgreSQL после обновления ArchLinux

Очередной pacman -Syyu на этот раз прошел не столь незаметно как прежде. Отвалились все django-проектики, которые работают с postgresql. Причина проста — несовместимость формата БД версии 9.6 (стояла прежде) с версией 10.0-1 (которая стала после обновления), о чем радостно сообщил journalctl -xe:

ноя 27 11:35:44 archlinux systemd[1]: Starting PostgreSQL database server...
-- Subject: Начинается запуск юнита postgresql.service
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel

--
-- Начат процесс запуска юнита postgresql.service.
ноя 27 11:35:44 archlinux postgres[17505]: An old version of the database format was found.
ноя 27 11:35:44 archlinux postgres[17505]: You need to dump and reload before using PostgreSQL 9.6.
ноя 27 11:35:44 archlinux postgres[17505]: See http://www.postgresql.org/docs/9.6/static/upgrading.html

ноя 27 11:35:44 archlinux sudo[17502]: pam_unix(sudo:session): session closed for user root
ноя 27 11:35:44 archlinux systemd[1]: postgresql.service: Control process exited, code=exited status=1
ноя 27 11:35:44 archlinux systemd[1]: postgresql.service: Failed with result 'exit-code'.
ноя 27 11:35:44 archlinux systemd[1]: Failed to start PostgreSQL database server.
-- Subject: Ошибка юнита postgresql.service
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel

--
-- Произошел сбой юнита postgresql.service.
--
-- Результат: RESULT.

Читать дальше

Перенос БД Django-проекта с MySQL на PostgreSQL

Для экспериментов и наведения порядка в коде проекта пришлось поднять его копию в песочнице. Отличия, правда, некоторые имеются: не apache2 в ней, но nginx, и не MySQL/MariaDB, но PostgreSQL.

С первым отличием справляться долго не пришлось. Поднял очередной virtualenv, да почти копипастой с других проектов в песочнице создал два конфига (один для nginx, второй для gunicorn).

А вот перенести БД не так просто и быстро. Вернее, и просто, и быстро, если уже опыт имеется. А мне раньше не приходилось.

Читать дальше