加密和压缩函数

TiDB 支持使用 MySQL 5.7 中提供的大部分加密和压缩函数

支持的函数

函数名功能描述
MD5()                                                            计算字符串的 MD5 校验和      
PASSWORD()计算并返回密码字符串
RANDOM_BYTES()返回随机字节向量
SHA1(), SHA()                                                  计算 SHA-1 160 位校验和              
SHA2()                                                          计算 SHA-2 校验和                      
AES_DECRYPT()使用 AES 解密
AES_ENCRYPT()使用 AES 加密
COMPRESS()返回经过压缩的二进制字符串
UNCOMPRESS()解压缩字符串
UNCOMPRESSED_LENGTH()                            返回字符串解压后的长度
CREATE_ASYMMETRIC_PRIV_KEY()创建私钥
CREATE_ASYMMETRIC_PUB_KEY()创建公钥
CREATE_DH_PARAMETERS()创建 DH 共享密钥
CREATE_DIGEST()从字符串创建摘要
ASYMMETRIC_DECRYPT()使用公钥或私钥解密密文
ASYMMETRIC_DERIVE()从非对称密钥导出对称密钥
ASYMMETRIC_ENCRYPT()使用公钥或私钥加密明文
ASYMMETRIC_SIGN()从摘要创建签名
ASYMMETRIC_VERIFY()验证签名字符串是否匹配摘要字符串

不支持的函数

  • DES_DECRYPT()DES_ENCRYPT()OLD_PASSWORD()ENCRYPT():这些函数在 MySQL 5.7 中被废弃,并且已在 MySQL 8.0 中移除。
  • VALIDATE_PASSWORD_STRENGTH() 函数。
  • 只在 MySQL 企业版中支持的函数。见 Issue #2632