Error number: 3827; Symbol: ER_CANNOT_SET_DATABASE_ENCRYPTION; SQLSTATE: HY000
Message: Database default encryption differ from ‘default_table_encryption’ setting, and user doesn’t have enough privilege.
错误说明:
ER_CANNOT_SET_DATABASE_ENCRYPTION错误号为3827,当在MySQL中尝试设置数据库加密时会出现此错误。MySQL不允许仅按照加密请求单独设置数据库,而应该将整个实例加密。
当尝试在MySQL中将某个数据库设置为加密时,服务器会返回此错误。此问题可能出现在尝试使用MySQL的ALTER DATABASE语法针对某个数据库开启安全性或加密时。此错误属于MySQL安全性针对整个客户端服务器实例的一致性检查之一。
解决方法:
可以使用 ALTER INSTANCE 语法来解决这个问题。 ALTER INSTANCE 可以用于让所有连接的数据库都被加密。它可以通过改变 mysqld 启动参数配置文件在常规加密操作中启用加密,并且此错误可以避免。此外, MySQL 5.7 和更高版本还包括以下两个选项,可用于让每个连接安装加密:
— enable-encrypted-connections和–enable-encrypted-tmp-files。