MySQL 8.0 Query Rewrite支持DML
发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,MySQL 8.0 Query Rewrite支持SELECT INSERT UPDETE DELETE REPLACE语句重写这个功能要点赞,比如开发上线时,有个SQL查询字段索引忘记加了,直接把线
千家信息网最后更新 2025年01月19日MySQL 8.0 Query Rewrite支持DML
MySQL 8.0 Query Rewrite支持SELECT INSERT UPDETE DELETE REPLACE语句重写
这个功能要点赞,比如开发上线时,有个SQL查询字段索引忘记加了,直接把线上CPU打满,此时,你可以将SQL重写,让业务先报错,别打死数据库,然后马上通知开发回滚,等加完索引后再上线。
安装插件
mysql -S /tmp/mysql_hcy.sock -p123456 <./install_rewriter.sql
查看是否生效
SHOW GLOBAL VARIABLES LIKE 'rewriter_enabled';
编写重写规则
insert into query_rewrite.rewrite_rules(pattern, replacement, pattern_database) values ("SELECT * from sbtest1 limit ?","SELECT k,c from sbtest1 limit ?","test");
意思为:
将以下语句
SELECT * from sbtest1 limit ?;
改写成:
SELECT k,c from sbtest1 limit ?;
注:问号?为变量
执行规则生效
CALL query_rewrite.flush_rewrite_rules();
演示
mysql> SELECT * from sbtest1 limit 1\G;*************************** 1. row ***************************k: 499284c: 83868641912-28773972837-60736120486-75162659906-27563526494-20381887404-41576422241-93426793964-56405065102-335184323301 row in set, 1 warning (0.00 sec) ERROR: No query specified mysql> show warnings\G*************************** 1. row *************************** Level: Note Code: 1105Message: Query 'SELECT * from sbtest1 limit 1' rewritten to 'SELECT k,c from sbtest1 limit 1' by a query rewrite plugin1 row in set (0.00 sec)
索引
规则
语句
开发
支持
业务
功能
变量
字段
意思
插件
数据
数据库
要点
问号
马上
查询
演示
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
质谱网络数据库
软件开发为何要有版本控制
网络安全组策略
服务器 虚拟内存设置
数据库汇总怎么用
为什么喜欢计算机网络技术
nas服务器系统教程
南宁广科网络技术
网络安全手抄报内容 小学生
所有软件开发核心技术
软件开发协议书百度文库
数据库技术及应用考研视频
嵌入式和软件开发的区别
会计人员网络安全责任书
台湾服务器游戏加速云主机
信息化软件开发过程有哪些
有泰拉瑞亚正版服务器吗
湘西软件开发专业职校
黑客服务器管理
滁州app软件开发定制
grc 网络安全
北京超乐软件开发有限公司
h5可以直接操作本地数据库吗
双非网络安全专业考研推荐学校
农行软件开发中心面试时间
vpdn未连接远程服务器
数据库巡检报告模板
小刀网络技术
阿神和禾卯玩的服务器
重庆培训软件开发哪家好