数据库管理员会负责维护数据的隐私和完整性。针对数据的脱敏,通常的方案是:应用端实现或者引入加密机等。

不过现在MySQL8.0实现了数据脱敏这个功能,可以减少应用的复杂性、减少开发的工作量,也能友好的保护了数据的隐私和完整性。

在8.0.13企业版中推出插件“data_masking.so”,可以实现数据的脱敏操作。

可以实现例如:银行卡号中的后四位为X字符、生产随机数据、例如电子邮件地址和支付卡号等...

具体操作可以参考

https://dev.mysql.com/doc/refman/8.0/en/data-masking-usage.html

如果没有预算购买企业版MySQL,但迫切需要这个功能,该如何操作。

Percona MySQL Server实现了类似的功能。

在Percona Server 8.0.17-8的版本中,目前作为实验功能,具体操作文档如下:

https://www.percona.com/community-blog/2019/12/13/percona-server-for-mysql-8-0-new-data-masking-feature/

https://www.percona.com/doc/percona-server/LATEST/security/data-masking.html

不过Percona在实现的过程中,引入新的概念字典,可以直接使用Percona提供的字典,也可以根据Percona提供的字典进行修改。

简单举例

1.1创建表

1.2 创建视图做比对

1.3 结果对比

目前Percona MySQL Server 对此功能没有GA,现在不能在生产环境使用

少量数据:未来的规划中 可以使用逻辑备份,备份还原到新的数据库中。

大量数据:克隆原始数据(应该是物理备份之类的..)

大量数据:主从复制、或者proxysql的多路复用

更详细的介绍可以看percona的文档(扩展阅读第二个)

扩展阅读

https://dev.mysql.com/doc/refman/8.0/en/data-masking-usage.html

https://www.percona.com/community-blog/2019/12/13/percona-server-for-mysql-8-0-new-data-masking-feature/

https://www.percona.com/doc/percona-server/LATEST/security/data-masking.html

字典地址:

https://raw.githubusercontent.com/philipperemy/name-dataset/master/names_dataset/first_names.all.txt

https://raw.githubusercontent.com/philipperemy/name-dataset/master/names_dataset/last_names.all.txt

测试表地址:

https://github.com/datacharmer/test_db

关于「3306π」社区围绕 MySQL 核心技术,将互联网行业中最重要的数据化解决方案带到传统行业中;囊括其他开源技术Redis、MongoDB、HBase、Hadoop、ElasticSearch、Storm、Spark等;分享干货知识,即便是赞助商,也要求如此,拒绝放水。

13新功能_新功能简介|MySQL8.0数据查询脱敏相关推荐

  1. python新媒体运营_新媒体运营数据怎么做?

    运营数据的分析的是用户,而只有内容才能吸引到用户的眼光,优质内容的展示不仅靠媒体人的说辞,还要依靠工具的修饰,增加用户的粘性.所以分享一些好的新媒体工具,工具用得对才玩得动新媒体运营数据! 一.新媒体 ...

  2. 用python做一个数据查询软件_使用Python实现NBA球员数据查询小程序功能

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 以下文章来源于早起Python ,作者投稿君 一.前言 有时将代码转成带有界面的程序,会极大地方便 ...

  3. python进行数据查询_使用Python实现NBA球员数据查询小程序功能

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. 以下文章来源于早起Python ,作者投稿君 一.前言 有时将代码转成带有界面的程序,会极大地方便 ...

  4. 凝思mysql服务器搭建_凝思8安装mysql8.0.21安装记录 及问题处理

    凝思8安装mysql8.0.21安装记录 及问题处理 https://www.cndba.cn/cndba/q8624806/article/4349https://www.cndba.cn/cndb ...

  5. win10mysql-8.0.13的安装_win10下安装配置mysql-8.0.13

    1.下载mysql-8.0.13安装包 https://dev.mysql.com/downloads/mysql/ 选择zip安装包下载就好. 2.解压到你要安装的目录 3.创建my.ini配置文件 ...

  6. 始化mysql系统库_安装和初始化mysql-8.0.11-winx64

    一.下载解压,设置配置文件 [mysql] ; 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] ;设置3306端口 port = 3306 ; ...

  7. mysql数据库64免安装_【文】MySQL-8.0.18-winx64免安装配置

    引言:最近手里撸了几个活,需要用到数据库.又不想太麻烦去安装MySQL.翻找u盘.发现了以前下载的MySQL8.0.18它是压缩包,果断上手去年元旦三天前下载的,有点意思开始配置! 1.首先解压文件, ...

  8. MySQL8.0 数据备份与恢复

    尽管采取了一些管理措施来保证数据库的安全,但是不确定的意外情况总是有可能造成数据的损失,例如意外的停电.管理员不小心的操作失误都可能会造成数据的丢失.保证数据安全最重要的一个措施是确保对数据进行定期备 ...

  9. 查询字符串位置_带合并单元格的数据查询套路,有用

    小伙伴们好啊,相信大家都被合并单元格的问题困扰过吧,今天就和大家分享一个带合并单元格的数据查询问题.在下面这个图中,A列是带合并单元格的部门,B列是该部门的员工名单. 现在需要根据D2单元格中的姓名, ...

最新文章

  1. Rendering failed with a known bug ,Please try a rebuild
  2. AI新基建如何构建?浪潮给出了一个答案
  3. 三维重建新应用:精确还原凶杀现场细节!
  4. django1.4日志模块配置及使用
  5. leetcode 46 全排列
  6. linux下的加密解密学习
  7. qt android meta data,Qt小技巧5.解决Failed to extract plugin meta data问题
  8. npm package.json中的dependencies和devDependencies的区别
  9. CTF——PHP审计——变量覆盖
  10. BeanDefinition构建示例
  11. 安卓学习 之 Activity(二)
  12. pytorch机器学习_机器学习— PyTorch
  13. java perl5compiler,Java中正则表达式使用方法详解(四)
  14. 大道至简 读后有感
  15. 记录——《C Primer Plus (第五版)》第十章编程练习第一题
  16. html的hello,world
  17. UNIX环境高级编程
  18. 【深度学习】NLP|用GRU模型给周董写首歌
  19. MATLAB 产生带宽信号
  20. 高等数学——驻点,拐点,极值点

热门文章

  1. 【文末赠书】牛顿:伸向未知量的利爪
  2. 加加减减的奥秘——从数学到魔术的思考(三)
  3. 做数学题比统一世界更爽,你会怎么做呢?
  4. 费尔马小定理素数java_利用费马小定理判断素数
  5. python3 批量定义多个变量_Python 3.8 新功能大揭秘
  6. 谷歌浏览器服务器协议url,谷歌浏览器在地址栏输入URL到页面展示时中间发生了什么?...
  7. java.equal例子_Java中的== 和equals()方法详解与实例
  8. Android Studio Process 'command ...\aapt.exe'' finished with non-zero exit value 1
  9. 如何构建流量无损的在线应用架构 | 专题开篇
  10. 一款跑在云上的定制容器专属 OS 来了——LifseaOS | 龙蜥技术