query_rewrite 插件功能MySQL 5.7 版本新特性
作用是把输入的一种语句改写成另外一种模式
优势是业务无法及时调整情况下通过MySQL将接收到的语句改写,如强制使用索引、子查询优化等
安装插件支持社区版
官方自带脚本安装
# 安装脚本位于MySQL的share目录,脚本集成了安装插件,建相应库表操作
mysql -S /tmp/mysql_sandbox5725.sock -uroot -proot < /opt/sandboxes/base/5.7.25/share/install_rewriter.sql
# 对应卸载使用脚本uninstall_rewriter.sql安装完成将自动创建query_rewrite库rewrite_rules表
show create table query_rewrite.rewrite_rules\G
CREATE TABLE `rewrite_rules` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`pattern` varchar(10000) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
`pattern_database` varchar(20) CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL,
`replacement` varchar(10000) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
`enabled` enum('YES','NO') CHARACTER SET utf8 COLLATE utf8_bin NOT NUL