Как создать резервную копию одной таблицы в базе данных postgres?

есть ли способ создать резервную копию одной таблицы в базе данных с помощью postgres? И как? Это также работает с командой pg_dump?

4 ответов


использовать --table рассказать pg_dump какую таблицу он должен резервировать:

pg_dump --host localhost --port 5432 --username postgres --format plain --ignore-version --verbose --file "<abstract_file_path>" --table public.tablename dbname

если вы находитесь на Ubuntu,

  1. войдите в свой пользователь postgres sudo su postgres
  2. pg_dump -d <database_name> -t <table_name> > file.sql

убедитесь, что вы выполняете команду, где postgres пользователь имеет права на запись (пример:/tmp)

редактировать

если вы хотите сбросить .sql на другом компьютере вам может потребоваться пропустить информацию о владельце, которая будет сохранена .sql-файл.

вы можете использовать pg_dump --no-owner -d <database_name> -t <table_name> > file.sql


помощью pg_dump -ч локальный -5432 п-у Постгреса -д базы данных mydb -Т таблицы my_table > резервное копирование.в SQL

вы можете взять резервную копию одной таблицы, но я бы предложил взять резервную копию всей базы данных, а затем восстановить любую таблицу вам нужно. Это всегда хорошо иметь резервную копию всей базы данных.

9 способов использования pg_dump


Если вы предпочитаете графический пользовательский интерфейс, вы можете использовать pgAdmin III (Linux/Windows/OS X). Просто щелкните правой кнопкой мыши на столе, затем "резервное копирование". Это создаст для вас.

enter image description here

enter image description here

enter image description here