выгрузка всех баз с pg_dumpall на srv1 с последующим восстановлением на srv2
Доброго!
Хотелось бы выгрузить все базы данных 1C на
srv1 Win10, PostgreSQL 9.6, 1С 8.3
и загрузить их на
srv2 Win10, PostgreSQL 9.6, 1С 8.3
установка PostgreSQL 9.6 и на srv1 и на srv2 с одного дистрибутива все по умолчанию
делаю в командной строке от имени администратора
на srv1>
на srv2>
в ответ частично получаю "кракозябры", из читаемого цитирую
чего не так нажимаю?
спасибо!
Хотелось бы выгрузить все базы данных 1C на
srv1 Win10, PostgreSQL 9.6, 1С 8.3
и загрузить их на
srv2 Win10, PostgreSQL 9.6, 1С 8.3
установка PostgreSQL 9.6 и на srv1 и на srv2 с одного дистрибутива все по умолчанию
делаю в командной строке от имени администратора
на srv1>
pg_dumpall > d:\alldb.dump
на srv2>
psql -f d:\alldb.dump postgres
в ответ частично получаю "кракозябры", из читаемого цитирую
psql:alldb.dump:1: неверная команда \
psql:alldb.dump:2: неверная команда \.!
psql:alldb.dump:4: неверная команда \!
psql:alldb.dump:25: неверная команда \.!
...
psql:alldb.dump:195: ОШИБКА: для символа с последовательностью байт 0x98 из кодировки "WIN1251" нет эквивалента в "UTF8"
psql:testalldb.dump:196: ОШИБКА: ошибка синтаксиса (примерное положение: "")
СТРОКА 1: !9 !& U ! 0 X U !0 Q T...
...
и т.д.
psql:alldb.dump:2: неверная команда \.!
psql:alldb.dump:4: неверная команда \!
psql:alldb.dump:25: неверная команда \.!
...
psql:alldb.dump:195: ОШИБКА: для символа с последовательностью байт 0x98 из кодировки "WIN1251" нет эквивалента в "UTF8"
psql:testalldb.dump:196: ОШИБКА: ошибка синтаксиса (примерное положение: "")
СТРОКА 1: !9 !& U ! 0 X U !0 Q T...
...
и т.д.
чего не так нажимаю?
спасибо!
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(5) да, все кодировки, локали один в один.
даже подумалось, что результат дампа зависит от локали терминала )
но нет, не зависит.
нашел засаду )
перемудрил, рассказываю:
захотелось мне определиться со временем, которое займет процедура выгрузки всех баз, чтобы спланировать переезд на новый сервер.
и торкнуло ж меня сваять скриптик на PS, чтобы показал он мне сколько, времени потребуется на дамп
и полученный этим скриптиком alldb.dump я пытался залить на srv2...
не понятно по какой причине, в такой обертке pg_dumpall выдает дамп раза в 1,5 больше и не пригодный к восстановлению.
при запуске из классической командной строки все "ОК"
кстати говоря, pg_dump, завернутый также, отрабатывает совершенно нормально.
даже подумалось, что результат дампа зависит от локали терминала )
но нет, не зависит.
нашел засаду )
перемудрил, рассказываю:
захотелось мне определиться со временем, которое займет процедура выгрузки всех баз, чтобы спланировать переезд на новый сервер.
и торкнуло ж меня сваять скриптик на PS, чтобы показал он мне сколько, времени потребуется на дамп
$StartTime=(Get-Date)
pg_dumpall > alldb.dump
$EndTime=(Get-Date)
$SpentTime=$EndTime-$StartTime
$Duratiom='{0:mm} min {0:ss} sec' -f $SpentTime
Write-Host $Duratiom
Показатьи полученный этим скриптиком alldb.dump я пытался залить на srv2...
не понятно по какой причине, в такой обертке pg_dumpall выдает дамп раза в 1,5 больше и не пригодный к восстановлению.
при запуске из классической командной строки все "ОК"
кстати говоря, pg_dump, завернутый также, отрабатывает совершенно нормально.
(6)Утилита pg_dumpall предназначена для записи («выгрузки») всех баз данных кластера Postgres Pro в один файл в формате скрипта. Этот файл содержит команды SQL, так что передав его на вход psql, можно восстановить все базы данных. Для формирования этого файла вызывается pg_dump для каждой базы данных в кластере
Скорее всего как раз каждый раз вызывая pg_dump для очередной базы у вас в вывод в файл дампа попадало время формирования. Но это не точно)
Скорее всего как раз каждый раз вызывая pg_dump для очередной базы у вас в вывод в файл дампа попадало время формирования. Но это не точно)
(7) не, не сходится, я прост запускал скрипт PS с одной строкой
он жеж внутри себя pg_dump зовет, а не выходит наружу каждый раз )
да и наскоро сляпанный cmd
выдал пригодный дамп для последующей загрузки
pg_dumpall > alldb.dump
он жеж внутри себя pg_dump зовет, а не выходит наружу каждый раз )
да и наскоро сляпанный cmd
echo Начло: %date% %time%
pg_dumpall > alldb.dump
echo Конец %date% %time%
выдал пригодный дамп для последующей загрузки
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот