Не удается найти файлы базы данных в postgresql ubuntu

#sql #database #postgresql #ubuntu

#sql #База данных #postgresql #ubuntu

Вопрос:

Кажется, я не могу найти основные файлы БД моей базы данных postgresql в ubuntu. Я перечислил каталог в psql с помощью команды SHOW_DIRECTORY, и он указал мне местоположение «/var / lib /postgresql /10 / main». Но когда я захожу в этот каталог, я не вижу файлов БД, которые у меня есть. Я вижу только такие файлы, как pg_dynshmen, pg_notify, pg_stat и т. Д., А также папки — базовые и глобальные. У меня есть 4 базы данных, которые включают 2 шаблона, но ни один из них здесь. Что я делаю не так?

Ответ №1:

Подкаталог base содержит базы данных и global глобальные объекты (пользователи и т. Д.).

Но … НЕ занимайтесь этим напрямую. Если вы действительно не знаете, что делаете, и не восстанавливаете поврежденную базу данных, все, что вы, вероятно, сделаете, это уничтожите свои данные.

Обычно вы выполняете резервное копирование своих баз данных с pg_dump помощью or pg_restore или via pg_basebackup и WAL shipping, если это то, что вы хотите сделать.

Комментарии:

1. О, так я должен сделать это ‘pg_dump -U postgres -O db -f db.sql’ в качестве владельца БД из каталога назначения?

2. ДА. -Fc это тоже типичный флаг для использования. Это приведет к созданию дампа «пользовательского» формата, который, грубо говоря, представляет собой архивированный дамп, из которого pg_restore можно извлекать фрагменты, а также восстанавливать всю базу данных.