数据导出
¥Data export
strapi export
命令用于从本地 Strapi 实例导出数据。默认情况下,strapi export
命令将数据导出为加密和压缩的 tar.gz.enc
文件,其中包括:
¥The strapi export
command is used to export data from a local Strapi instance. By default, the strapi export
command exports data as an encrypted and compressed tar.gz.enc
file which includes:
-
项目配置,
¥the project configuration,
-
实体:你的所有内容,
¥entities: all of your content,
-
链接:你的实体之间的关系,
¥links: relations between your entities,
-
资源:文件存储在上传文件夹中,
¥assets: files stored in the uploads folder,
-
模式,
¥schemas,
-
metadata.json
文件。¥the
metadata.json
file.
以下文档详细介绍了自定义数据导出的可用选项。导出命令和所有可用选项均使用 Strapi 命令行接口。
¥The following documentation details the available options to customize your data export. The export command and all of the available options are run using the Strapi CLI.
-
不会导出管理员用户和 API 令牌。
¥Admin users and API tokens are not exported.
-
来自第三方提供者(例如 Cloudinary 或 AWS S3)的媒体不包含在导出中,因为这些文件不存在于上传文件夹中。
¥Media from a 3rd party provider (e.g., Cloudinary or AWS S3) are not included in the export as those files do not exist in the upload folders.
命名导出文件
¥Name the export file
导出的数据包含在 .tar
文件中,该文件使用 export_YYYYMMDDHHMMSS
格式自动命名。你可以选择通过使用 strapi export
命令传递 --file
或 -f
选项来命名导出的文件。请勿包含文件扩展名,因为系统将根据提供的选项自动设置文件扩展名。
¥Exported data are contained in a .tar
file that is automatically named using the format export_YYYYMMDDHHMMSS
. You can optionally name the exported file by passing the --file
or -f
option with the strapi export
command. Do not include a file extension as one will be set automatically depending on options provided.
示例:使用自定义文件名导出数据
¥Example: Export data with a custom filename
- yarn
- npm
yarn strapi export --file my-strapi-export
npm run strapi export -- --file my-strapi-export
配置数据加密
¥Configure data encryption
默认 strapi export
命令使用 aes-128-ecb
加密对项目数据进行加密,并添加文件扩展名 .enc
。要使用加密,你需要使用 -k
或 --key
选项传递加密密钥,或者在出现提示时输入加密密钥。加密密钥是 string
,没有最小字符数。
¥The default strapi export
command encrypts your project data using aes-128-ecb
encryption and adds the file extension .enc
. To use encryption you need to pass an encryption key using the -k
or --key
option or enter an encryption key when prompted. The encryption key is a string
with no minimum character count.
鼓励使用强加密密钥来保护项目中的敏感数据。开放式 SSL 是用于生成加密密钥的资源。以下示例命令在终端中生成加密密钥:
¥Strong encryption keys are encouraged to protect sensitive data in your project. OpenSSL is a resource for generating encryption keys. The following example commands generate encryption keys in a terminal:
- Mac/Linux
- Windows
openssl rand -base64 48
node -p "require('crypto').randomBytes(48).toString('base64');"
要禁用加密,请使用 strapi export
命令传递 --no-encrypt
选项。
¥To disable encryption, pass the --no-encrypt
option with the strapi export
command.
示例:导出数据不加密
¥Example: Export data without encryption
- yarn
- npm
yarn strapi export --no-encrypt
npm run strapi export -- --no-encrypt
示例:使用加密 --key
选项导出数据
¥Example: Export data with the encryption --key
option
- yarn
- npm
yarn strapi export --key my-encryption-key
npm run strapi export -- --key my-encryption-key
禁用数据压缩
¥Disable data compression
默认 strapi export
命令使用 gzip
压缩来压缩项目数据并添加 .gz
文件扩展名。
¥The default strapi export
command compresses your project data using gzip
compression and adds the .gz
file extension.
要禁用压缩,请使用 strapi export
命令传递 --no-compress
选项。
¥To disable compression, pass the --no-compress
option with the strapi export
command.
示例:导出数据不压缩
¥Example: Export data without compression
- yarn
- npm
yarn strapi export --no-compress
npm run strapi export -- --no-compress
仅导出选定类型的数据
¥Export only selected types of data
默认 strapi export
命令导出你的内容(实体和关系)、文件(资源)、项目配置和架构。--only
选项允许你通过传递逗号分隔的字符串(类型之间不带空格)来仅导出列出的项目。可用值为 content
、files
和 config
。架构始终会导出,因为架构匹配用于 strapi import
。
¥The default strapi export
command exports your content (entities and relations), files (assets), project configuration, and schemas. The --only
option allows you to export only the listed items by passing a comma-separated string with no spaces between the types. The available values are content
, files
, and config
. Schemas are always exported, as schema matching is used for strapi import
.
图片等媒体由文件(资源)和数据库中的实体组成。如果你使用 --only
标志导出 content
,资源数据库记录仍包含在内,并且可能渲染为损坏的链接。
¥Media such as images consist of the file (asset) and the entity in the database. If you use the --only
flag to export content
, the asset database records are still included, and could render as broken links.
示例:仅导出实体和关系
¥Example: Export only entities and relations
- yarn
- npm
yarn strapi export --only content
npm run strapi export -- --only content
从导出中排除项目
¥Exclude items from export
默认 strapi export
命令导出你的内容(实体和关系)、文件(资源)、项目配置和架构。--exclude
选项允许你通过以逗号分隔的字符串传递这些项目来排除内容、文件和项目配置,类型之间不带空格。你无法排除架构,因为架构匹配用于 strapi import
。
¥The default strapi export
command exports your content (entities and relations), files (assets), project configuration, and schemas. The --exclude
option allows you to exclude content, files, and the project configuration by passing these items in a comma-separated string with no spaces between the types. You can't exclude the schemas, as schema matching is used for strapi import
.
图片等媒体由文件(资源)和数据库中的实体组成。如果你使用 --exclude
标志来删除资源,数据库记录仍然包含在内,并且可能渲染为损坏的链接。
¥Media such as images consist of the file (asset) and the entity in the database. If you use the --exclude
flag to remove assets, the database records are still included, and could render as broken links.
示例:导出不包括资源、实体和关系的数据
¥Example: Export data excluding assets, entities, and relations
- yarn
- npm
yarn strapi export --exclude files,content
npm run strapi export -- --exclude files,content