powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Помогите перенести сервер базы данных с Linux на Windows
5 сообщений из 5, страница 1 из 1
Помогите перенести сервер базы данных с Linux на Windows
    #39451170
Сделал sql-backup c базы(командой pg_dump.exe --host servername --username "postgres" --no-password --format custom --blobs --verbose --file "D:\db.dump" --schema "s1" --schema "s2" "DatabaseName"), имеющей параметры кодировки UTF-8 LC_COLLATE = 'ru_RU.UTF8' LC_CTYPE = 'ru_RU.UTF8'. Пытаюсь импортнуть в базу c win1251 при помощи psql естесственно ничего не получается в консоли сообщения в непонятной кодировке. Решил вручную
без исталятора создать и запустить бд с нужной кодировкой:
@ECHO ON
@REM Set environment variables for PostgreSQL
@SET PATH="%CD%\bin";%PATH%
@SET PGDATA=%CD%\data
@SET PGDATABASE=postgres
@SET PGUSER=postgres
@SET PGPORT=5432
@REM Create new DB with Russian encoding only at first run
%CD%\bin\initdb -U postgres -A trust -E UTF8 --locale=russian_russia --lc-collate=russian_russia --lc-ctype=russian_russia --lc-messages=russian_russia --lc-monetary=russian_russia --lc-numeric=russian_russia --lc-time=russian_russia

@%CD%\bin\pg_ctl -D %CD%/data -l logfile start
@ECHO Press Enter to stop server
@pause
@%CD%\bin\pg_ctl -D %CD%/data stop
Если точно повторять локаль ru_Ru.UTF8 то ее postgres не находит.
Бекап поднимаю командой :psql -h localhost -U username -w database < db.dump
Полуаю сообщения вида: РОКА 1: REVOKE ALL ON TABLE incomebymonth FROM postgres;
^
ОШИБКА: отношение "incomebymonth" не существует
ОШИБКА: отношение "incomebymonth" не существует
ОШИБКА: ошибка синтаксиса (примерное положР
µРЅРёРµ: "")
СТРОКА 1: SELECT i.customer_id, c.cutomername, i.period_month, i.per...
...
Рейтинг: 0 / 0
Помогите перенести сервер базы данных с Linux на Windows
    #39451196
big-trot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Завитушкин--format custom

Данный формат нельзя использовать в psql. Используйте умолчательный (plain) формат. И укажите нужную кодировку. А так почитайте описание утилиты pg_dump.
...
Рейтинг: 0 / 0
Помогите перенести сервер базы данных с Linux на Windows
    #39451397
Павел Лузанов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Завитушкин,

pg_dump.exe ... --format custom ...
Используйте pg_restore для восстановления.

Если точно повторять локаль ru_Ru.UTF8 то ее postgres не находит.
Windows не понимает короткие имена локали, поэтому правильно Russian_Russia.

ОШИБКА: отношение "incomebymonth" не существует
Пропишите в postgresql.conf
lc_messages = American_America.UTF8

PostgreSQL в виндовой консоли неправильно работает с UTF и русскими буквами.
...
Рейтинг: 0 / 0
Помогите перенести сервер базы данных с Linux на Windows
    #39456058
Павел Лузанов, спасибо именно в этом крылось решение проблемы.
...
Рейтинг: 0 / 0
Помогите перенести сервер базы данных с Linux на Windows
    #39456059
big-trot, спасибо имеенно в этом крылось решение проблемы, сослепу не заметил что помимо вас еще один пользователь
ответил на данную тему
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Помогите перенести сервер базы данных с Linux на Windows
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]