Например, в том что вы пытаетесь запустить утилиту от root'а, а не от postgres. А утилита вполне может не быть в пути root'а точно также как утилиты createdb и createuser.
на сервере который указан в первом посте произвел даунгрейд до 8.3 и продолжил эксперименты на другом сервере
[root@crematoria /]# uname -rm8.2-RELEASE-p2 i386
установку произвел через pkg_add -r поэтому версия 8.4.7, а не 8.4.8 как в первом посте, но для наличия утилиты pg_upgrade это же не существенно?
[root@crematoria /usr/ports/shells]# pkg_info|grep postgres
postgresql-client-8.4.7 PostgreSQL DATABASE(client)
postgresql-server-8.4.7 The most advanced open-source DATABASE available anywhere
автодополнение выдает одинаковые результаты и для root и для pgsql
2.
можно ли одновременно с версией 8.3 установить на сервер версию 8.4. будут ли они работать (если для кадого из них использовать разные кластеры и не запускать их одновременно, а только по одному)
[pgsql@crematoria /]$ which pg_upgrade
[pgsql@crematoria /]$
У меня на Linux'е тоже такой команды нет, хотя она есть в мануале. Странно всё это.
Цитата:
верной ли будет последовательность действий по переходу с 8.3 на 8.4
верно
Цитата:
можно ли одновременно с версией 8.3 установить на сервер версию 8.4. будут ли они работать (если для кадого из них использовать разные кластеры и не запускать их одновременно, а только по одному)
Можно. Только поскольку обычно собранные версии хотят работать с одними и тем же каталогами, вам как-то нужно решить эту проблему. Например пересобрать оба пакета, используя кастомные пути, типа /usr/local/postgresql/8.3, /usr/local/postgresql/8.4
Или ещё проще - поднять виртуальную машину и там изгаляться.
Например, в том что вы
Например, в том что вы пытаетесь запустить утилиту от root'а, а не от postgres. А утилита вполне может не быть в пути root'а точно также как утилиты createdb и createuser.
на сервере который указан в
на сервере который указан в первом посте произвел даунгрейд до 8.3 и продолжил эксперименты на другом сервере
установку произвел через pkg_add -r поэтому версия 8.4.7, а не 8.4.8 как в первом посте, но для наличия утилиты pg_upgrade это же не существенно?
автодополнение выдает одинаковые результаты и для root и для pgsql
и более того
и
может такое быть что для утилита pg_upgrade не входит в состав пакета для freebsd?
что посоветуете?
1. верной ли будет
1.
верной ли будет последовательность действий по переходу с 8.3 на 8.4
делаем полный дамп кластера
останавливаем постгрес
# /usr/local/etc/rc.d/postgresql stop
бэкапим директорию data
# mv /usr/local/pgsql/data /usr/local/pgsql/data.old
обновляем постгрес
инициализируем новый кластер
# /usr/local/etc/rc.d/postgresql initdb --locale=C
сравниваем postgresql.conf со старым, изменяем что нужно.
запускаем постгрес
# /usr/local/etc/rc.d/postgresql start
2.
можно ли одновременно с версией 8.3 установить на сервер версию 8.4. будут ли они работать (если для кадого из них использовать разные кластеры и не запускать их одновременно, а только по одному)
[pgsql@crematoria /]$ which
У меня на Linux'е тоже такой команды нет, хотя она есть в мануале. Странно всё это.
верно
Можно. Только поскольку обычно собранные версии хотят работать с одними и тем же каталогами, вам как-то нужно решить эту проблему. Например пересобрать оба пакета, используя кастомные пути, типа /usr/local/postgresql/8.3, /usr/local/postgresql/8.4
Или ещё проще - поднять виртуальную машину и там изгаляться.
спасибо. обновился, перенес
спасибо.
обновился, перенес базы, все в порядке.