加密和压缩函数

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

支持的函数

函数名功能描述
MD5()                                                            计算字符串的 MD5 校验和      
PASSWORD()计算并返回密码字符串
RANDOM_BYTES()返回随机字节向量
SHA1(), SHA()                                                  计算 SHA-1 160 位校验和              
SHA2()                                                          计算 SHA-2 校验和                      
SM3()                                                          计算 SM3 校验和(MySQL 中暂不支持该函数)          
AES_DECRYPT()使用 AES 解密
AES_ENCRYPT()使用 AES 加密
COMPRESS()返回经过压缩的二进制字符串
UNCOMPRESS()解压缩字符串
UNCOMPRESSED_LENGTH()                            返回字符串解压后的长度

相关系统变量

block_encryption_mode 变量设置 AES_ENCRYPT()AES_DECRYPT() 所使用的加密模式。

不支持的函数

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