返回介绍

下载

编译与部署

开始使用

操作手册

最佳实践

扩展功能

设计文档

SQL 手册

开发者手册

Apache 社区

CREATE ENCRYPTKEY

发布于 2021-09-30 01:42:47 字数 2965 浏览 907 评论 0 收藏 0

Description

Syntax

CREATE ENCRYPTKEY key_name
    AS "key_string"

Parameters

key_name: 要创建密钥的名字, 可以包含数据库的名字。比如:db1.my_key

key_string: 要创建密钥的字符串

此语句创建一个自定义密钥。执行此命令需要用户拥有 ADMIN 权限。

如果 key_name 中包含了数据库名字,那么这个自定义密钥会创建在对应的数据库中,否则这个函数将会创建在当前会话所在的数据库。新密钥的名字不能够与对应数据库中已存在的密钥相同,否则会创建失败。

Example

  1. 创建一个自定义密钥

     CREATE ENCRYPTKEY my_key AS "ABCD123456789";
    
  2. 使用自定义密钥

    使用自定义密钥需在密钥前添加关键字 KEY/key,与 key_name 空格隔开。

     mysql> SELECT HEX(AES_ENCRYPT("Doris is Great", KEY my_key));
     +------------------------------------------------+
     | hex(aes_encrypt('Doris is Great', key my_key)) |
     +------------------------------------------------+
     | D26DB38579D6A343350EDDC6F2AD47C6               |
     +------------------------------------------------+
     1 row in set (0.02 sec)
    
     mysql> SELECT AES_DECRYPT(UNHEX('D26DB38579D6A343350EDDC6F2AD47C6'), KEY my_key);
     +--------------------------------------------------------------------+
     | aes_decrypt(unhex('D26DB38579D6A343350EDDC6F2AD47C6'), key my_key) |
     +--------------------------------------------------------------------+
     | Doris is Great                                                     |
     +--------------------------------------------------------------------+
     1 row in set (0.01 sec)
    

Keyword

CREATE,ENCRYPTKEY

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文