Mysql视图无权限访问的批量修改方法
2021/11/18 19:42:23
本文主要是介绍Mysql视图无权限访问的批量修改方法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
我们在使用Mysql数据库的时候,在项目上线迁移的时候,有时候由于开发环境和生产环境的差异,有时候
Mysql用户不一定能够保持一致,而其中view视图A用户创建的记录B用户就会无法访问
如果视图的记录比较少的话还好,如果多,那一个个重新修改创建就不太可能。
这里找到一个批量修改“定义者”的方法。
先根据如下SQL查询条件拼装出所有需要修改的视图的SQL
sql> select concat("alter DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `",TABLE_SCHEMA,"`.",TABLE_NAME," as ",VIEW_DEFINITION,";") from information_schema.VIEWS where DEFINER = 'olduser@%';
然后执行下面的SQL批量执行就可以了
alter DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `test`.test_view as select `t`.`storeid` AS `storeid` from (`test`.`sc_saleorder_pdt` `t` left join `test`.`sc_saleorder` `m` on((`t`.`dataid` = `m`.`id`))) where (`m`.`jhtype` = 'wl'); alter DEFINER=`root`@`localhost`
这篇关于Mysql视图无权限访问的批量修改方法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-25MySQL报错Duplicate entry '0' for key 'PRIMARY'
- 2024-05-29阿里 Canal 实时同步 MySQL 增量数据至 ClickHouse 数据库
- 2024-05-24在Linux下管理MySQL的大小写敏感性
- 2024-04-26MySQL查出时间比实际晚8小时的解决方案
- 2024-04-01JPA不识别MySQL的枚举类型
- 2024-03-30mysql数据库表卡死解决方法
- 2024-03-15MySQL多数据源笔记5-ShardingJDBC实战
- 2024-03-11natural join mysql
- 2024-03-11关于VS2017,VS2015 中利用 EF使用Mysql 不显示数据源问题解决方案
- 2024-02-26mysql 阿里云xb后缀备份文件恢复-icode9专业技术文章分享