关于Mysql启用非root账号解决方案
适用版本:
4.8mysql独立版本之后
一、需求:
目前auditsys从4.8版本已独立安装,客户可以选择自有mysql,或者使用公司提供的一键mysql安装包。
目前公司提供mysql安装包默认为root账号。部分客户觉得mysql的root账号权限过大,应该使用限制权限账号。
二、解决方案
方案分两部分:客户自有mysql环境需要授权,我们提供的mysql包建非root账号
- 客户mysql
授权范围:
1)全局的数据库创建权限(该权限可以不授权,但是需要客户帮忙把auditsys数据库授权)
2)auditsys数据库的完全权限。
具体授权指令如下(我创建的是auditsys账号):
CREATE USER `auditsys`@`%` IDENTIFIED WITH mysql_native_password BY ‘Auditsys@sino_2020’;
GRANT Create ON *.* TO `auditsys `@`%`;
GRANT Alter, Alter Routine, Create, Create Routine, Create Temporary Tables, Create View, Delete, Drop, Event, Execute, Grant Option, Index, Insert, Lock Tables, References, Select, Show View, Trigger, Update ON `auditsys`.* TO `auditsys`@`%`;
flush privileges;
以上指令也同样使用于我们自己安装部署的mysql环境
2)公司mysql一键安装包
重新下载mysql-5.7.37的mysql包,里面的mysql.sh增加了几行。

这四行是新增auditsys账号,并授权最小权限。
如果mysql之前已安装部署,可以把这三行单独按顺序执行,就可以创建mysql的auditsys账号

后续可以用auditsys ,密码Auditsys@sino_2020 进行auditsys的数据库初始化