Назад | Перейти на главную страницу

переход с Postgres 8.1 на 9.0

Мы переходим с одного сервера с postgres 8.1 на другой с 9.0. Мы хотели использовать slony для репликации между ними, и на этом новом сервере уже есть slony-I 2. Однако он не работает с postgres 8.1, хотя Slony 1.2 работает.

Как лучше всего перенести наши базы данных на новый сервер? Slony 1.2 на обоих, slony 2.0 на обоих, дамп и импорт или что-то еще?

Лучшим и действительно единственным надежным способом сделать такое крупное изменение будет:

  1. Проверьте, работает ли PostgreSQL 9 с вашим приложением - нужно ли обновлять коннекторы ODBC? Ваши SQL-запросы по-прежнему работают правильно?
  2. Выгрузите базу данных и перезагрузите ее в новую базу данных - это приведет к простоям.

Я бы сказал, это будет зависеть от того, примете ли вы время простоя. Если это не критично круглосуточно, я бы выбрал время для дампа и восстановления и посмотрел, сколько времени потребуется, прежде чем делать это по-настоящему.

В противном случае, если вы не собираетесь продолжать репликацию после переключения на новый сервер, вы потратите много времени на установку старой версии slony, настройку репликации, ожидание, пока все будет скопировано, переход на новый мастер-сервер, затем закрыл все бездельники.

Если вы собираетесь обновить старый сервер и продолжить репликацию, вы, вероятно, в конечном итоге выполните все вышеперечисленное с помощью Slony 1.2, а затем обновитесь до Slony 2.0. Можно также сделать дамп и восстановить, а затем сразу перейти к настройке Slony 2.0.

Если вы собираетесь продолжить репликацию между 9.0 и 8.1, то продолжайте и используйте slony, чтобы скопировать все заново и оставить его работающим в slony 1.2 после переключения (инструкции по переключению, приведенные выше, делают прежний мастер подчиненным нового мастера, так что репликация автоматически "меняет направление").