Форум программистов, компьютерный форум, киберфорум
PostgreSQL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/21: Рейтинг темы: голосов - 21, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 11.02.2017
Сообщений: 3
1

Обновление Postgresql 9.1 - 9.6

11.02.2017, 13:43. Показов 3930. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день!
Прошу вашей помощи по обновлению версии Postgresql c версии 9.1 до версии 9.6 при помощи pg_upgrade
Вдохновившись инструкцией pg_upgrade я приступил к действию
Порядок моих действий:
Останавливаю Postgresql 9.1
Код
service postgresql stop
Переименовываю паку с БД
Код
mv /var/lib/pgsql-root/var/lib/pgsql /var/lib/pgsql-root/var/lib/pgsql.old
Копирую папку bin от старого Postgresql 9.1
Код
cp -R /usr/bin /usr/bin91
Устанавливаю свежий Postgresql 9.6
Код
apt-get install postgresql9.6-server postgresql9.6-contrib
Инициализирую новую БД
Код
/etc/init.d/postgresql initdb
Правлю конфиги нового Postgresql 9.6.
Запускаю новый Postgresql 9.6 для проверки
Код
service postgresql start
Останавливаю новый Postgresql
Код
service postgresql stop
Запускаю консоль в режиме пользователя postgres, ибо pg_upgrade работает под этим пользователем
Код
su - postgres -s /bin/bash
Выполняю pg_upgrade
Код
pg_upgrade -b /usr/bin91 -B /usr/bin -d /var/lib/pgsql.old/data -D /var/lib/pgsql/data -c -v
Но в итоге получаю вот это:
Кликните здесь для просмотра всего текста
-bash-3.2$ pg_upgrade -b /usr/bin91 -B /usr/bin -d /var/lib/pgsql.old/data -D /var/lib/pgsql/data -c -v
Running in verbose mode
Performing Consistency Checks
-----------------------------
Checking cluster versions ok
pg_control values:

First log file ID after reset: 0
First log file segment after reset: 8
pg_control version number: 903
Catalog version number: 201105231
Database system identifier: 6385094122559799295
Latest checkpoint's TimeLineID: 1
Latest checkpoint's NextXID: 0/21786
Latest checkpoint's NextOID: 31711
Latest checkpoint's NextMultiXactId: 1
Latest checkpoint's NextMultiOffset: 0
Latest checkpoint's oldestXID: 1280
Latest checkpoint's oldestXID's DB: 1
Latest checkpoint's oldestActiveXID: 0
Maximum data alignment: 8
Database block size: 8192
Blocks per segment of large relation: 131072
WAL block size: 8192
Bytes per WAL segment: 16777216
Maximum length of identifiers: 64
Maximum columns in an index: 32
Maximum size of a TOAST chunk: 1996
Date/time type storage: 64-bit integers
Float4 argument passing: by value
Float8 argument passing: by value
Current pg_control values:

pg_control version number: 960
Catalog version number: 201608131
Database system identifier: 6385146603478635820
Latest checkpoint's TimeLineID: 1
Latest checkpoint's full_page_writes: on
Latest checkpoint's NextXID: 0:1161
Latest checkpoint's NextOID: 13017
Latest checkpoint's NextMultiXactId: 1
Latest checkpoint's NextMultiOffset: 0
Latest checkpoint's oldestXID: 1154
Latest checkpoint's oldestXID's DB: 1
Latest checkpoint's oldestActiveXID: 0
Latest checkpoint's oldestMultiXid: 1
Latest checkpoint's oldestMulti's DB: 1
Latest checkpoint's oldestCommitTsXid:0
Latest checkpoint's newestCommitTsXid:0
Maximum data alignment: 8
Database block size: 8192
Blocks per segment of large relation: 131072
WAL block size: 8192
Bytes per WAL segment: 16777216
Maximum length of identifiers: 64
Maximum columns in an index: 32
Maximum size of a TOAST chunk: 1996
Size of a large-object chunk: 2048
Date/time type storage: 64-bit integers
Float4 argument passing: by value
Float8 argument passing: by value
Data page checksum version: 0


Values to be changed:

First log segment after reset: 000000010000000000000002
"/usr/bin91/pg_ctl" -w -l "pg_upgrade_server.log" -D "/var/lib/pgsql.old/data" -o "-p 50432 -b -c listen_addresses='' -c unix_socket_permissions=0700 -c unix_socket_directory='/var/lib/pgsql'" start >> "pg_upgrade_server.log" 2>&1

*failure*
There were problems executing ""/usr/bin91/pg_ctl" -w -l "pg_upgrade_server.log" -D "/var/lib/pgsql.old/data" -o "-p 50432 -b -c listen_addresses='' -c unix_socket_permissions=0700 -c unix_socket_directory='/var/lib/pgsql'" start >> "pg_upgrade_server.log" 2>&1"
Consult the last few lines of "pg_upgrade_server.log" for
the probable cause of the failure.

connection to database failed: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/lib/pgsql/.s.PGSQL.50432"?


could not connect to old postmaster started with the command:
"/usr/bin91/pg_ctl" -w -l "pg_upgrade_server.log" -D "/var/lib/pgsql.old/data" -o "-p 50432 -b -c listen_addresses='' -c unix_socket_permissions=0700 -c unix_socket_directory='/var/lib/pgsql'" start
Failure, exiting
-bash-3.2$ echo $PGPORT

-bash-3.2$

Что я делаю не так? что с этим делать - connections on Unix domain socket "/var/lib/pgsql/.s.PGSQL.50432"?

А это логи:
Кликните здесь для просмотра всего текста
command: "/usr/bin91/pg_ctl" -w -l "pg_upgrade_server.log" -D "/var/lib/pgsql.old/data" -o "-p 50432 -b -c config_file='/var/lib/pgsql.old/data/postgresql.conf' -c listen_addresses='' -c unix_socket_permissions=0700 -c unix_socket_directory='/var/lib/pgsql'" start >> "pg_upgrade_server.log" 2>&1
waiting for server to start..../usr/bin91/postgres: неверный ключ — «b»
/usr/bin91/postgres: неверный ключ — «b»
Try "postgres --help" for more information.
......... stopped waiting
pg_ctl: could not start server
Examine the log output.

Что за ключ «b» как его убрать? Откуда pg_upgrade берет параметры запуска? Может есть какой-то конфиг pg_upgrade?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.02.2017, 13:43
Ответы с готовыми решениями:

Обновление данных СУБД PostgreSQL из datagridview
Здравствуйте. Помогите пожалуйста с кнопкой "Обновить". Данные считываются: // Создадим новый...

Обновление данных СУБД PostgreSQL из datagridview через Npgsql
Добрый день! У меня есть БД в СУБД PostgreSQL и я хочу работать с ней из-под C# приложения. Есть...

Не могу установить обновление KB2670838 (Обновление платформы для Windows 7)
Не могу установить обновление KB2670838(Обновление платформы для Windows 7). Запускаю .msu файл,...

Обновление базы и ошибка: Обновление невозможно. База данных или объект доступны только для чтения.
Помогите пожалуйста! asp не может обновить базу. Про ошибку говорит Microsoft OLE DB Provider for...

4
1241 / 960 / 379
Регистрация: 02.09.2012
Сообщений: 2,936
12.02.2017, 03:20 2
Цитата Сообщение от le2xx Посмотреть сообщение
Копирую папку bin от старого Postgresql 9.1
Код
cp -R /usr/bin /usr/bin91
странная операция. у вас какая версия ubuntu??
Например, на последней 16.04.1, все лежит в /usr/lib/postgresql/.... , все остальное в /usr/bin это вызов враппера, который подставляет вызов соответствующего исполняемого файла из заданной версии. настройки лежат в /etc/postgresql-common
поэтому, мое мнение: хотя вся последовательность с виду и верная, но нужно разобраться с правильностью установки одновременно двух версий PG 9.1 и 9.6 - что, куда поставлено, где конфиги и т.д.
И еще с 9.1 сразу на 9.6 я ни разу не мигрировал, подозреваю есть какие-то подводные камни.
Например в офф. документации есть такие строки
If you are upgrading a pre-PostgreSQL 9.2 cluster that uses a configuration-file-only directory, you must pass the real data directory location to pg_upgrade, and pass the configuration directory location to the server, e.g. -d /real-data-directory -o '-D /configuration-directory'.
0
0 / 0 / 0
Регистрация: 11.02.2017
Сообщений: 3
12.02.2017, 19:31  [ТС] 3
У меня не Убунта у меня AltLinux. Наверное это слишком переходить с 9.1 сразу до 9.6, попробую с 9.1. до 9.2 и отпишусь.

Добавлено через 45 минут
Эксперимент не удался, ошибка точно такая же. A 2 postgresql сервера на АльтЛинукс не встает, один конфликтует с другим.
0
1241 / 960 / 379
Регистрация: 02.09.2012
Сообщений: 2,936
13.02.2017, 14:28 4
Цитата Сообщение от le2xx Посмотреть сообщение
A 2 postgresql сервера на АльтЛинукс не встает, один конфликтует с другим.
Печально, если так. Попробуйте в postgresql professional написать, может не откажут в бесплатном ответе, с вопросом "А что делать?" Они с год назад подписывали какую-то бумажку о сотрудничестве с АльтЛинукс. Может все это не слова и есть успешная история успеха апгрейда.
Ну или вариант долбаться через Текстовый! полный бакап.
0
0 / 0 / 0
Регистрация: 11.02.2017
Сообщений: 3
14.02.2017, 09:13  [ТС] 5
Скорее всего придется полный текстовый бекап делать и разворачивать. В прошлый раз эта операция заняла 3-е суток )). Ну ничего впереди 23 февраля целых 4 рабочих дня.
0
14.02.2017, 09:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.02.2017, 09:13
Помогаю со студенческими работами здесь

Обновление свойств компонентов на обновление состояния родителя
Компонент Clock отрисовывается 500 раз. Внутри тикает таймер и когда компонент один - все ОК....

Обновление связанных сущностей (каскадное обновление)
Доброго времени суток. У меня возникла проблема с обновлением сущности и связанной с ней...

Обновление релиза и обновление Типовой конфигураци
Господа, подскажите, в чем разница между обновлением Релиза и обновлением Типовой конфигурации. Как...

C# и PostGresql
Привет всем, вобщем я пока еще новичок в этом деле и только начинаю изучать пространства имен. Так...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru