MySQL使用常见问题和处理办法

记录MySQL的常见技术问题和处理办法

多个库使用通配符授权

比如有一批分库,是 user_001,user_002....user_xxx 这样有一定规律的一批库。
如何授权某个账户可以访问,而又避免直接使用*开放所有权限呢?
使用通配符就可以实现,只授权user_开头的库。
语句中的关键点是**反单引号**,不加上这个会报错。

GRANT SELECT ON `user_%`.* TO 'dev'@'%'

MySQL 授权报错分析

mysql> GRANT SELECT ON *.* TO 'dev_raedonly'@'%';
ERROR 1410 (42000): You are not allowed to create a user with GRANT

查一下资料,就很快能发现,新版的MySQL取消了这个隐式创建账号。相当于之前MySQL可以GRANT时,自动创建账号。现在必须显式创建账号了。
但也并非只有上面这个原因,比如明确的知道账号已经创建过,那就应该检查用户名是否拼写错误。比如上面的raedonly就是拼写错误。

© 版权声明
THE END
广告
喜欢就支持一下吧
点赞10 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情

    暂无评论内容