Strapi 的 v4.6.0 及更新版本中提供数据导出功能。请参阅 更新和迁移文档 以升级您的应用程序。
strapi export
命令用于从本地 Strapi 实例导出数据。默认情况下,strapi export
命令将数据导出为加密和压缩的 tar.gz.enc
文件,其中包括:
- 项目配置,
- 实体:您的所有内容,
- 链接:您的实体之间的关系,
- 资产:存储在上传文件夹中的文件,
- 模式,
metadata.json
文件。
以下文档详细介绍了自定义数据导出的可用选项。导出命令和所有可用选项均使用 Strapi CLI 运行。
- 管理员用户和 API 令牌不会被导出。
- 来自第三方提供商(例如 Cloudinary 或 AWS S3)的媒体不会包含在导出中,因为这些文件不存在于上传文件夹中。
命名导出文件
导出的数据包含在 .tar
文件中,该文件使用 export_YYYYMMDDHHMMSS
格式自动命名。您可以选择通过在 strapi export
命令中传递 --file
或 -f
选项来命名导出的文件。不要包含文件扩展名,因为将根据提供的选项自动设置文件扩展名。
示例:使用自定义文件名导出数据
yarn strapi export --file my-strapi-export
配置数据加密
默认的 strapi export
命令使用 aes-128-ecb
加密方式加密您的项目数据,并添加文件扩展名 .enc
。要使用加密,您需要使用 -k
或 --key
选项传递加密密钥,或在提示时输入加密密钥。加密密钥是一个没有最低字符数的 string
。
鼓励使用强加密密钥来保护项目中的敏感数据。OpenSSL 是生成加密密钥的资源。以下示例命令在终端中生成加密密钥:
openssl rand -base64 48
要禁用加密,请使用 strapi export
命令传递 --no-encrypt
选项。
示例:导出不加密的数据
yarn strapi export --no-encrypt
Example: Export data with the encryption --key
option
yarn strapi export --key my-encryption-key
禁用数据压缩
默认的 strapi export
命令使用 gzip
压缩来压缩您的项目数据并添加 .gz
文件扩展名。
要禁用压缩,请使用 strapi export
命令传递 --no-compress
选项。
示例:导出不压缩的数据
yarn strapi export --no-compress
仅导出选定类型的数据
默认的 strapi export
命令会导出您的内容(实体和关系)、文件(资产)、项目配置和架构。--only
选项允许您通过传递逗号分隔的字符串(类型之间没有空格)仅导出列出的项目。可用值为 content
、files
和 config
。架构始终会导出,因为架构匹配用于 strapi import
。
图像等媒体由数据库中的文件(资产)和实体组成。如果您使用 --only
标志导出 content
,资产数据库记录仍会包含在内,并且可能会呈现为断开的链接。
示例:仅导出实体和关系
yarn strapi export --only content
从导出中排除项目
默认的 strapi export
命令会导出您的内容(实体和关系)、文件(资产)、项目配置和架构。--exclude
选项允许您通过将这些项目传递到逗号分隔的字符串中(类型之间没有空格)来排除内容、文件和项目配置。您无法排除架构,因为架构匹配用于 strapi import
。
图像等媒体由数据库中的文件(资产)和实体组成。如果您使用 --exclude
标志删除资产,则数据库记录仍包含在内,并且可能会呈现为断开的链接。
示例:导出不包括资产、实体和关系的数据
yarn strapi export --exclude files,content