Выгрузка и импорт базы данных
Команда EXPORT DATABASE позволяет выгрузить содержимое базы данных в указанный каталог. Команда IMPORT DATABASE позволяет затем снова загрузить содержимое.
Примеры
Выгрузить базу данных в целевой каталог 'target_directory' в формате CSV:
EXPORT DATABASE 'target_directory';
Выгрузить в каталог 'target_directory', используя заданные параметры для сериализации CSV:
EXPORT DATABASE 'target_directory' (FORMAT CSV, DELIMITER '|');
Выгрузить в каталог 'target_directory', таблицы сериализованы как Parquet:
EXPORT DATABASE 'target_directory' (FORMAT PARQUET);
Выгрузить в каталог 'target_directory', таблицы сериализованы как Parquet, сжаты с помощью ZSTD, с размером блока строк 100 000:
EXPORT DATABASE 'target_directory' (
FORMAT PARQUET,
COMPRESSION ZSTD,
ROW_GROUP_SIZE 100_000
); Перезагрузить базу данных:
IMPORT DATABASE 'source_directory';
В качестве альтернативы, используйте PRAGMA:
PRAGMA import_database('source_directory'); Подробнее о записи файлов Parquet см. на странице «Файлы Parquet» в разделе «Импорт данных» в разделе импорта данных и страницу COPY
EXPORT DATABASE
Команда EXPORT DATABASE выгружает все содержимое базы данных — включая информацию о схеме, таблицы, представления и последовательности — в определённый каталог, который затем можно загрузить повторно. Созданный каталог будет структурирован следующим образом:
target_directory/schema.sql target_directory/load.sql target_directory/t_1.csv ... target_directory/t_n.csv
Файл schema.sql содержит инструкции схемы, которые находятся в базе данных. Он содержит любые CREATE SCHEMA, CREATE TABLE, CREATE VIEW и CREATE SEQUENCE команды, необходимые для повторного построения базы данных.
Файл load.sql содержит набор инструкций COPY для повторной загрузки данных из CSV-файлов. Файл содержит одну инструкцию COPY для каждой таблицы, найденной в схеме.
Синтаксис
IMPORT DATABASE
Базу данных можно перезагрузить, повторно выполнив команду IMPORT DATABASE или вручную, выполнив schema.sql за которым следует load.sql, чтобы перезагрузить данные.
Синтаксис
© Copyright 2018–2024 Stichting DuckDB Foundation
Licensed under the MIT License.
https://duckdb.org/docs/sql/statements/export.html