MySQL 密钥环插件支持以下系统变量。使用它们来配置密钥环插件操作。除非安装了相应的密钥环插件,否则这些变量不可用(请参阅 第 8.4.4.3 节,“密钥环插件安装”)。
-
命令行格式 --keyring-aws-cmk-id=value
系统变量 keyring_aws_cmk_id
作用域 全局 动态 是 SET_VAR
提示适用否 类型 字符串 从 AWS KMS 服务器获取并由
keyring_aws
插件使用的 KMS 密钥 ID。除非安装了该插件,否则此变量不可用。此变量是必需的。如果未指定,则
keyring_aws
初始化失败。 -
命令行格式 --keyring-aws-conf-file=文件名
系统变量 keyring_aws_conf_file
作用域 全局 动态 否 SET_VAR
提示适用否 类型 文件名 默认值 平台特定
keyring_aws
插件的配置文件位置。除非安装了该插件,否则此变量不可用。在插件启动时,
keyring_aws
从配置文件中读取 AWS 秘密访问密钥 ID 和密钥。为了使keyring_aws
插件成功启动,配置文件必须存在并包含有效的秘密访问密钥信息,如 第 8.4.4.7 节,“使用 keyring_aws Amazon Web Services 密钥环插件” 中所述进行初始化。默认文件名是
keyring_aws_conf
,位于默认的密钥环文件目录中。 -
命令行格式 --keyring-aws-data-file
系统变量 keyring_aws_data_file
作用域 全局 动态 否 SET_VAR
提示适用否 类型 文件名 默认值 平台特定
keyring_aws
插件的存储文件位置。除非安装了该插件,否则此变量不可用。在插件启动时,如果分配给
keyring_aws_data_file
的值指定了一个不存在的文件,则keyring_aws
插件会尝试创建它(以及它的父目录,如果需要)。如果该文件确实存在,则keyring_aws
会将文件中包含的任何加密密钥读入其内存缓存。keyring_aws
不会在内存中缓存未加密的密钥。默认文件名是
keyring_aws_data
,位于默认的密钥环文件目录中。 -
命令行格式 --keyring-aws-region=value
系统变量 keyring_aws_region
作用域 全局 动态 是 SET_VAR
提示适用否 类型 枚举 默认值 us-east-1
有效值 af-south-1
ap-east-1
ap-northeast-1
ap-northeast-2
ap-northeast-3
ap-south-1
ap-southeast-1
ap-southeast-2
ca-central-1
cn-north-1
cn-northwest-1
eu-central-1
eu-north-1
eu-south-1
eu-west-1
eu-west-2
eu-west-3
me-south-1
sa-east-1
us-east-1
us-east-2
us-gov-east-1
us-iso-east-1
us-iso-west-1
us-isob-east-1
us-west-1
us-west-2
keyring_aws
插件的 AWS 区域。除非安装了该插件,否则此变量不可用。 -
命令行格式 --keyring-hashicorp-auth-path=value
系统变量 keyring_hashicorp_auth_path
作用域 全局 动态 是 SET_VAR
提示适用否 类型 字符串 默认值 /v1/auth/approle/login
keyring_hashicorp
插件在 HashiCorp Vault 服务器中启用 AppRole 身份验证的身份验证路径。除非安装了该插件,否则此变量不可用。 -
命令行格式 --keyring-hashicorp-ca-path=file_name
系统变量 keyring_hashicorp_ca_path
作用域 全局 动态 是 SET_VAR
提示适用否 类型 文件名 默认值 空字符串
MySQL 服务器可访问的本地文件的绝对路径名,该文件包含供
keyring_hashicorp
插件使用的格式正确的 TLS 证书颁发机构。除非安装了该插件,否则此变量不可用。如果未设置此变量,则
keyring_hashicorp
插件将在不使用服务器证书验证的情况下打开 HTTPS 连接,并信任 HashiCorp Vault 服务器提供的任何证书。为了确保安全,必须假设 Vault 服务器不是恶意的,并且不可能进行中间人攻击。如果这些假设无效,请将keyring_hashicorp_ca_path
设置为受信任的 CA 证书的路径。(例如,对于 证书和密钥准备 中的说明,这是company.crt
文件。) -
命令行格式 --keyring-hashicorp-caching[={OFF|ON}]
系统变量 keyring_hashicorp_caching
作用域 全局 动态 是 SET_VAR
提示适用否 类型 布尔值 默认值 OFF
是否启用
keyring_hashicorp
插件使用的可选内存密钥缓存来缓存 HashiCorp Vault 服务器中的密钥。除非安装了该插件,否则此变量不可用。如果启用了缓存,则插件会在初始化期间填充它。否则,插件仅在初始化期间填充密钥列表。启用缓存是一种折衷方案:它可以提高性能,但会在内存中保留敏感密钥信息的副本,这出于安全目的可能并不可取。
keyring_hashicorp_commit_auth_path
系统变量 keyring_hashicorp_commit_auth_path
作用域 全局 动态 否 SET_VAR
提示适用否 类型 字符串 此变量与
keyring_hashicorp_auth_path
相关联,在keyring_hashicorp
插件初始化期间,它将从此变量获取其值。除非安装了该插件,否则此变量不可用。如果初始化成功,它将反映插件操作实际使用的“已提交”值。有关其他信息,请参阅 keyring_hashicorp 配置。keyring_hashicorp_commit_ca_path
系统变量 keyring_hashicorp_commit_ca_path
作用域 全局 动态 否 SET_VAR
提示适用否 类型 字符串 此变量与
keyring_hashicorp_ca_path
相关联,在keyring_hashicorp
插件初始化期间,它将从此变量获取其值。除非安装了该插件,否则此变量不可用。如果初始化成功,它将反映插件操作实际使用的“已提交”值。有关其他信息,请参阅 keyring_hashicorp 配置。keyring_hashicorp_commit_caching
系统变量 keyring_hashicorp_commit_caching
作用域 全局 动态 否 SET_VAR
提示适用否 类型 字符串 此变量与
keyring_hashicorp_caching
相关联,在keyring_hashicorp
插件初始化期间,它将从此变量获取其值。除非安装了该插件,否则此变量不可用。如果初始化成功,它将反映插件操作实际使用的“已提交”值。有关其他信息,请参阅 keyring_hashicorp 配置。keyring_hashicorp_commit_role_id
系统变量 keyring_hashicorp_commit_role_id
作用域 全局 动态 否 SET_VAR
提示适用否 类型 字符串 此变量与
keyring_hashicorp_role_id
相关联,在keyring_hashicorp
插件初始化期间,它将从此变量获取其值。除非安装了该插件,否则此变量不可用。如果初始化成功,它将反映插件操作实际使用的“已提交”值。有关其他信息,请参阅 keyring_hashicorp 配置。keyring_hashicorp_commit_server_url
系统变量 keyring_hashicorp_commit_server_url
作用域 全局 动态 否 SET_VAR
提示适用否 类型 字符串 此变量与
keyring_hashicorp_server_url
相关联,在keyring_hashicorp
插件初始化期间,它将从此变量获取其值。除非安装了该插件,否则此变量不可用。如果初始化成功,它将反映插件操作实际使用的“已提交”值。有关其他信息,请参阅 keyring_hashicorp 配置。keyring_hashicorp_commit_store_path
系统变量 keyring_hashicorp_commit_store_path
作用域 全局 动态 否 SET_VAR
提示适用否 类型 字符串 此变量与
keyring_hashicorp_store_path
相关联,在keyring_hashicorp
插件初始化期间,它将从此变量获取其值。除非安装了该插件,否则此变量不可用。如果初始化成功,它将反映插件操作实际使用的“已提交”值。有关其他信息,请参阅 keyring_hashicorp 配置。-
命令行格式 --keyring-hashicorp-role-id=value
系统变量 keyring_hashicorp_role_id
作用域 全局 动态 是 SET_VAR
提示适用否 类型 字符串 默认值 空字符串
HashiCorp Vault AppRole 身份验证角色 ID,供
keyring_hashicorp
插件使用。除非安装了该插件,否则此变量不可用。该值必须采用 UUID 格式。此变量是必需的。如果未指定,则
keyring_hashicorp
初始化将失败。 -
命令行格式 --keyring-hashicorp-secret-id=value
系统变量 keyring_hashicorp_secret_id
作用域 全局 动态 是 SET_VAR
提示适用否 类型 字符串 默认值 空字符串
HashiCorp Vault AppRole 身份验证密钥 ID,供
keyring_hashicorp
插件使用。除非安装了该插件,否则此变量不可用。该值必须采用 UUID 格式。此变量是必需的。如果未指定,则
keyring_hashicorp
初始化将失败。此变量的值很敏感,因此显示时其值会被
*
字符屏蔽。 -
命令行格式 --keyring-hashicorp-server-url=value
系统变量 keyring_hashicorp_server_url
作用域 全局 动态 是 SET_VAR
提示适用否 类型 字符串 默认值 https://127.0.0.1:8200
HashiCorp Vault 服务器 URL,供
keyring_hashicorp
插件使用。除非安装了该插件,否则此变量不可用。该值必须以https://
开头。 -
命令行格式 --keyring-hashicorp-store-path=value
系统变量 keyring_hashicorp_store_path
作用域 全局 动态 是 SET_VAR
提示适用否 类型 字符串 默认值 空字符串
HashiCorp Vault 服务器中的存储路径,当
keyring_hashicorp
插件提供适当的 AppRole 凭据时,该路径是可写的。除非安装了该插件,否则此变量不可用。要指定凭据,请设置keyring_hashicorp_role_id
和keyring_hashicorp_secret_id
系统变量(例如,如 keyring_hashicorp 配置 中所示)。此变量是必需的。如果未指定,则
keyring_hashicorp
初始化将失败。 -
命令行格式 --keyring-okv-conf-dir=dir_name
系统变量 keyring_okv_conf_dir
作用域 全局 动态 是 SET_VAR
提示适用否 类型 目录名 默认值 空字符串
keyring_okv
插件使用的配置信息的目录的路径名。除非安装了该插件,否则此变量不可用。该位置应该是仅供keyring_okv
插件使用的目录。例如,不要将目录放在数据目录下。默认的
keyring_okv_conf_dir
值为空。为了使keyring_okv
插件能够访问 Oracle Key Vault,必须将该值设置为包含 Oracle Key Vault 配置和 SSL 材料的目录。有关设置此目录的说明,请参阅 第 8.4.4.6 节“使用 keyring_okv KMIP 插件”。该目录应具有限制性模式,并且只能由用于运行 MySQL 服务器的帐户访问。例如,在 Unix 和类 Unix 系统上,要使用
/usr/local/mysql/mysql-keyring-okv
目录,以下命令(以root
身份执行)将创建该目录并设置其模式和所有权cd /usr/local/mysql mkdir mysql-keyring-okv chmod 750 mysql-keyring-okv chown mysql mysql-keyring-okv chgrp mysql mysql-keyring-okv
如果分配给
keyring_okv_conf_dir
的值指定的目录不存在,或者该目录不包含能够建立与 Oracle Key Vault 的连接的配置信息,则keyring_okv
会将一条错误消息写入错误日志。如果尝试对keyring_okv_conf_dir
进行运行时分配导致错误,则变量值和密钥环操作将保持不变。 -
系统变量 keyring_operations
作用域 全局 动态 是 SET_VAR
提示适用否 类型 布尔值 默认值 ON
是否启用了密钥环操作。此变量在密钥迁移操作期间使用。请参阅 第 8.4.4.11 节“在密钥环密钥库之间迁移密钥”。修改此变量所需的权限是
ENCRYPTION_KEY_ADMIN
以及SYSTEM_VARIABLES_ADMIN
或已弃用的SUPER
权限。