Доброго времени суток!
Есть дамп БД, сделанный с помощью pg_dump. Нужно развернуть БД из дампа с помощью psql. Сам я чайник, никогда ничем подобным не занимался. С помощью putty подключился к серваку по SSH, нашел папку, где лежит дамп, что дальше?
Вот здесь http://postgresql.ru.net/manual/backup-dump.html#BACKUP-DUMP-RESTORE прчитал следующее:
Текстовые файлы, созданные pg_dump предназначаются для последующего чтения программой psql. Общий вид команды для восстановления дампа: psql имя_БД < файл_дампа где файл_дампа — это файл, содержащий вывод команды pg_dump. База данных, заданная параметром имя_БД не будет создана данной командой, так что вы должны создать её сами из базы template0 перед запуском psql (например, с помощью команды createdb -T template0 имя_БД).
Сразу встает вопрос. createdb -T template0 имя_БД - это команда выполняется какой программой? Почему именно template0 (или это просто для примера?)? БД с именем "имя_БД" будет создано для какого юзера (при входе в интерфейс pgadmin нужно ввести логин-пароль, у юзеров с разными логинами доступ к разным базам, это как-то должно быть отражено в команде?)?
И если не трудно, напишите, как должна выглядеть правильная последовательность команд, чтобы восстановить БД из дампа с известным именем, просто я в этом совсем не разбираюсь, не уверен, что интуитивно что-нибудь не сломаю.
> Сразу встает вопрос.
> Сразу встает вопрос. createdb -T template0 имя_БД - это команда выполняется какой программой?
createdb - это и есть программа. Вернее shell-скрипт, предназначенный для создания БД из операционной системы
> Почему именно template0?
Потому что это стандартный шаблон. Никто не мешает вам создать свой и пользоваться им, но БД же надо с чего-то начать? Вот поэтому и template0.
> БД с именем "имя_БД" будет создано для какого юзера
Чтобы creaetedb сработало, вам надо подключиться к серверу PostgreSQL с каким-то пользователем. Чаще всего это делается с postgres, но могут быть и другие варианты. У команды createdb есть ключи, позволяющие задать пользователя, с которым подключаться, а также и пароль (если он нужен)
> как должна выглядеть правильная последовательность команд
Как она должна выглядеть в общем виде - написано в мануале. А как в вашем конкретном случае - это вы сами должны решить. Я например понятия не имею как у вас настроена авторизация подключения к БД в pg_hba.conf. Какие у вас настройки локали, и вообще сделан ли ваш дамп в текстовом виде (если в бинарном, то надо pg_restore использовать).