Здравствуйте, подскажите при обновлении постгре с 12 до 13 базы

удаляются или может перемещаются в какую нибудь old папку?

russian software it database dba

21 ответов

Нет. Обновляются бинарники.

Да как сделаете. Или как сделали за вас создатели дистрибутива.

Из какого списка? Pg_database?

Например, постгрес для дебиана и для винды -- просто поставится рядом. Виндовому постгресу при установке, кажэтся, можно указать папку с базой -- и если указать предыдущую, то ничего с ней не сделается и новый сервер просто не запустится. Например, в докере если обновить офицыальный образ и подсунуть ему старый volume -- то постгрес тожэ не запустится. Например, правильным методом сейчас считается запуск pg_upgrade (запуск его требует внимательно ознакомиться с документацыей). В случае debian и подобных -- pg_upgradecluster (который относительно простая обёртка для pg_upgrade, к тому жэ прописывающая новую базу в список кластеров debian). Например, в докере пытаться сделать pg_upgrade -- это очень нетривиальная задача, большынство или выгружают базы через pg_dumpall или обновляются через синхронизацыю логических реплик.

Rick- Автор вопроса
El Grizlo
Из какого списка? Pg_database?

этой команды даже нет в убунту. я смотрю список через psql \l

Rick- Автор вопроса
Ilya Anfimov
Например, постгрес для дебиана и для винды -- прос...

в этом и вся загвоздка у меня нет каталога с постгре12 где лежало бы все

Rick- Автор вопроса
El Grizlo
А каталог кластера прежний?

тут не знаю, я глянул при обновлении

Rick
тут не знаю, я глянул при обновлении

Какие бд были до обновлентя и после?

Rick
в этом и вся загвоздка у меня нет каталога с постг...

Убунта, говорите? Там постгрес дебиановский. pg_lsclusters для начала.

Rick- Автор вопроса
Ilya Anfimov
Убунта, говорите? Там постгрес дебиановский. pg_l...

ток один кластер. старого нет 13 main 5432 online postgres /var/lib/postgresql/13/main /var/log/postgresql/postgresql-13-main.log

Rick- Автор вопроса
El Grizlo
Какие бд были до обновлентя и после?

до были postgres template0 template1 zabbix. а после забикс не вернулся

Rick
ток один кластер. старого нет 13 main 5432 onl...

Скорее всего -- старый кластер стартовал всякими левыми методами. После upgrade либо затёрся переписанный скрипт/unit запуска либо они просто подрались за порт 5432 и новый выиграл. Поищите старую базу. В /var/lib/postgresql/13/main она не могла лежать примерно никак, так что, скорее всего, ещё где-то жывая вполне. Ещё можно порт нового сменить с 5432 на 5433 -- если верно предположэние, что подрались из-за порта -- то после ребута оба поднимутся.

Rick- Автор вопроса
Ilya Anfimov
Скорее всего -- старый кластер стартовал всякими л...

у меня в /etc/postgresql/ остался ток 13 каталог. но порт махнул на всякий случай. щас првоерю при ребуте

Rick
у меня в /etc/postgresql/ остался ток 13 каталог. ...

>остался ток 13 каталог. Опять жэ, дажэ удаление сервера обычно не удаляет этот каталог. Только --purge по-моему, и только файлы, про которые пакетный менеджэр знает. Я бы предположыл, что он был какой-нибудь самосборный вообще и лежал в /usr/local/etc/postgresql где-нибудь. Или в /var/postgres не знаю.

Rick
у меня в /etc/postgresql/ остался ток 13 каталог. ...

В большынстве случаев locate -- быстрее будет. Дажэ если он не установлен, и надо сделать apt-get install slocate и updatedb.

Ilya Anfimov
>остался ток 13 каталог. Опять жэ, дажэ удаление...

Если он самочборный то есть ненулевой шанс вообще все угробить просто установив общую версию из пакета)

Rick- Автор вопроса

второго сервера нет через нет стат смотрю используемые порты(

El Grizlo
Если он самочборный то есть ненулевой шанс вообще ...

Ну, разве что в смысле -- придётся подбирать потом параметры сборки, чтобы собрать постгрес, который сможэт прочитать эту базу.

Rick
второго сервера нет через нет стат смотрю использу...

Это я и предполагал. Вряд ли у вас старый сервер был не на 5432, а порт 5432 занят ужэ новым сервером.

Похожие вопросы