Кодировку в Postgresql возможно сменить только у всего кластера сервера. Если имеются базы данных, то необходимой сделать копии этих баз. После действий описанных в данной статье иницилизируется новый кластер сервера.
Остановим сервер Pjstresql командой:
Удалить (или переместить старую базу):
Проинициализируем новую базу с необходимыми настройками:
Закоментируем в /etc/postgresql/8.2/main/postgresql.conf строчку
Запустить сервер:
После данных действий возможно будут проблемы с аутентификации пользователя postgres. Необходимо сменить пароль данного пользователя. Для этого правим файл /etc/postgresql/8.4/main/pg_hba.conf. Добавляем или изменяем чтобы в методах идентификации было:
Перезапускаем сервер:
Логинемся в postgres:
Меняем строчку в pg_hba.conf обратно. Например:
Остановим сервер Pjstresql командой:
/etc/init.d/postgresql stop
Удалить (или переместить старую базу):
mv /var/lib/postgresql/8.4/main /var/lib/postgresql/8.4/main.old
Проинициализируем новую базу с необходимыми настройками:
su -c "/usr/lib/postgresql/8.4/bin/initdb -E WIN1251 --locale=ru_RU.CP1251-8 -D /var/lib/postgresql/8.4/main" postgres
Закоментируем в /etc/postgresql/8.2/main/postgresql.conf строчку
ssl = true.
Запустить сервер:
/etc/init.d/postgresql start
После данных действий возможно будут проблемы с аутентификации пользователя postgres. Необходимо сменить пароль данного пользователя. Для этого правим файл /etc/postgresql/8.4/main/pg_hba.conf. Добавляем или изменяем чтобы в методах идентификации было:
local all all trust
Перезапускаем сервер:
/etc/init.d/postgresql restart
Логинемся в postgres:
sudo su postgres -c psql template
Меняем пароль:
ALTER USER postgres with PASSWORD 'password';
Меняем строчку в pg_hba.conf обратно. Например:
host all postgres md5
Комментариев нет:
Отправить комментарий