第 19 章 导入和导出域
导入和导出域作为 JSON 文件。
在本章中,您将了解使用 JSON 文件导入和导出域的不同方法。
导出并导入到单个文件可生成大量文件,因此如果您的数据库包含 500 多个用户,请将 导出到一个目录,而不是单个文件。使用目录执行更好,因为目录提供程序对每个"页面" (用户的一个文件)使用单独的事务。每个文件和每个事务的用户的默认计数为 fifty。增大到更大的数字会导致执行时间指数级增长。
所有红帽构建的 Keycloak 节点都需要在使用 kc.[sh|bat] import | export 命令前停止。这样可确保生成的操作不会与并发请求产生一致性问题。它还确保从与服务器实例相同的计算机上运行导入或导出命令不会产生端口或其他冲突。
19.1. 为数据库连接参数提供选项 复制链接链接已复制到粘贴板!
当使用 导出和导入命令时,红帽构建的 Keycloak 需要了解如何连接到存储域、客户端、用户和其他实体信息的数据库。如 配置红帽构建的 Keycloak 所述,这些信息可作为命令行参数、环境变量或配置文件提供。对每个命令使用- help 命令行选项查看可用选项。
有些配置选项是构建时间配置选项。默认情况下,如果红帽构建的 Keycloak 检测到构建时间参数的变化,则会自动为 命令重新构建。
导出和导入
如果您使用 build 命令构建红帽构建的 Keycloak 版本,如 配置红帽 Keycloak 构建 中所述,请使用命令行选项 优化功能,让红帽构建 Keycloak 跳过一个更快的启动时间。执行此操作时,请从命令行删除构建时间选项,仅保留运行时选项。
如果您没有使用优化功能,则 导入 或导出 命令会隐式为您创建或更新优化镜像 - 如果您从与服务器实例相同的机器运行该命令,则这可能会影响服务器下次启动。