Здесь показаны различия между двумя версиями данной страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
postgres:dump [2021/11/13 18:50] werwolf [Определенную таблицу] |
postgres:dump [2023/01/12 12:18] (текущий) |
||
|---|---|---|---|
| Строка 18: | Строка 18: | ||
| </code> | </code> | ||
| * где **dmosk** — имя учетной записи; опция **W** потребует ввода пароля. | * где **dmosk** — имя учетной записи; опция **W** потребует ввода пароля. | ||
| + | |||
| ==== Сжатие данных ==== | ==== Сжатие данных ==== | ||
| Строка 141: | Строка 142: | ||
| </code> | </code> | ||
| ==== Только данные ==== | ==== Только данные ==== | ||
| + | |||
| <code bash> | <code bash> | ||
| - | pg_dump --data-only users > /tmp/users.data.dump | + | pg_dump --data-only -U parser_wb -d parser_wb > /var/dump/dump.sql |
| </code> | </code> | ||
| + | |||
| + | Только комманда insert | ||
| + | |||
| + | <code bash> | ||
| + | pg_dump --data-only --inserts -U parser_wb -d parser_wb > /var/dump/dump.sql | ||
| + | </code> | ||
| + | |||
| + | |||
| ==== Использование pgAdmin ==== | ==== Использование pgAdmin ==== | ||
| Строка 210: | Строка 220: | ||
| CREATE DATABASE users WITH OWNER 'postgres' ENCODING 'UTF8' LC_COLLATE = 'ru_RU.UTF-8' LC_CTYPE = 'ru_RU.UTF-8' TEMPLATE = template0; | CREATE DATABASE users WITH OWNER 'postgres' ENCODING 'UTF8' LC_COLLATE = 'ru_RU.UTF-8' LC_CTYPE = 'ru_RU.UTF-8' TEMPLATE = template0; | ||
| </code> | </code> | ||
| + | |||
| ==== Базовая команда ==== | ==== Базовая команда ==== | ||
| Строка 218: | Строка 229: | ||
| Пример: | Пример: | ||
| <code bash> | <code bash> | ||
| - | psql users < /tmp/users.dump | + | psql parser_wb < /tmp/users.dump |
| </code> | </code> | ||
| + | |||
| + | |||
| + | |||
| ==== С авторизацией ==== | ==== С авторизацией ==== | ||
| При необходимости авторизоваться при подключении к базе вводим: | При необходимости авторизоваться при подключении к базе вводим: | ||
| <code bash> | <code bash> | ||
| - | psql -U dmosk -W users < /tmp/users.dump | + | psql -U parser_wb -d parser_wb < /var/dump/dump.sql |
| + | </code> | ||
| + | * где **parser_wb ** — имя учетной записи; опция **W** потребует ввода пароля. | ||
| + | |||
| + | <code bash> | ||
| + | cat /var/dump/dump.sql | grep 'INSERT INTO public.brands' > /var/dump/brands.sql | ||
| + | cat /var/dump/dump.sql | grep 'INSERT INTO public.card_products' > /var/dump/card_products.sql | ||
| + | cat /var/dump/dump.sql | grep 'INSERT INTO public.stocks_jsons' > /var/dump/table.sql | ||
| + | cat /var/dump/dump.sql | grep 'INSERT INTO public.shippings' > /var/dump/table.sql | ||
| + | cat /var/dump/dump.sql | grep 'INSERT INTO public.suppliers' > /var/dump/table.sql | ||
| + | cat /var/dump/dump.sql | grep 'INSERT INTO public.servers' > /var/dump/table.sql | ||
| + | cat /var/dump/dump.sql | grep 'INSERT INTO public.server_proxies' > /var/dump/table.sql | ||
| </code> | </code> | ||
| - | * где **dmosk** — имя учетной записи; опция **W** потребует ввода пароля. | ||
| ==== Из файла gz ==== | ==== Из файла gz ==== | ||
| Строка 268: | Строка 292: | ||
| {{https://www.dmosk.ru/img/miniinstruktions/postgresql-dump-05.jpg|Выбираем файл с дампом}}И кликаем по **Восстановить**: | {{https://www.dmosk.ru/img/miniinstruktions/postgresql-dump-05.jpg|Выбираем файл с дампом}}И кликаем по **Восстановить**: | ||
| - | {{https://www.dmosk.ru/img/miniinstruktions/postgresql-dump-06.jpg|Восстанавливаем данные}}==== Использование pg_restore ==== | + | {{https://www.dmosk.ru/img/miniinstruktions/postgresql-dump-06.jpg|Восстанавливаем данные}} |
| + | ==== Использование pg_restore ==== | ||
| Данная утилита предназначена для восстановления данных не текстового формата (в одном из примеров создания копий мы тоже делали резервную копию не текстового формата). | Данная утилита предназначена для восстановления данных не текстового формата (в одном из примеров создания копий мы тоже делали резервную копию не текстового формата). | ||
| Из бинарника: | Из бинарника: | ||
| + | <code bash> | ||
| pg_restore -Fc users.bak | pg_restore -Fc users.bak | ||
| + | </code> | ||
| Из тарбола: | Из тарбола: | ||
| + | <code bash> | ||
| pg_restore -Ft users.tar | pg_restore -Ft users.tar | ||
| + | </code> | ||
| С создание новой базы: | С создание новой базы: | ||
| + | <code bash> | ||
| pg_restore -Ft -C users.tar | pg_restore -Ft -C users.tar | ||
| + | </code> | ||
| ===== Возможные ошибки ===== | ===== Возможные ошибки ===== | ||
| Строка 321: | Строка 346: | ||
| Решение: запускаем восстановление с опцией **-v ON_ERROR_STOP=1**, например: | Решение: запускаем восстановление с опцией **-v ON_ERROR_STOP=1**, например: | ||
| + | <code bash> | ||
| psql -v ON_ERROR_STOP=1 users < /tmp/users.dump | psql -v ON_ERROR_STOP=1 users < /tmp/users.dump | ||
| + | </code> | ||
| Теперь, когда возникнет ошибка, система прекратит выполнять операцию и выведет сообщение на экран. | Теперь, когда возникнет ошибка, система прекратит выполнять операцию и выведет сообщение на экран. | ||