【MySQL】创建普通用户,分配权限,取消权限

时间:2023-02-12 08:52:27

    在项目开发中使用MySQL数据库,但是不可能每个人都使用root对数据库进行操作,毕竟root的权限太高,一不小心的误操作将可能造成难以估计的损失,所以需要对开发人员进行关于数据库权限的配置,这样既能保证开发工作的正常运行,同时也能保证安全性。

创建用户

   用户名:root

insert intomysql.user(Host,User,Password)values('localhost','test',password("123"))

  用户名:test,密码:123;

PS:注意localhost代表用户只能在本地登录,不能再其他机器上运行,如果需要远程将localhost修改为%。

登录新注册的用户,验证是否可以登录成功

   不开心,出错了。。。

如果提示错误信息

ERROR 1045 (28000): Access denied for user'ODBC'@'localhost' (using password: YES)

    将MySQL安装路径下的my.ini文件中[mysqld]下面的skip-grant-tables注释就可以了。

若登录成功,则表示用户注册成功。完美!!!

赋予权限

    使用root用户进行授权,选择赋予test用户的数据库名称,例如小编的数据库名称bos,命令如下

grant all privileges on bos.* totest@localhost identified by '123';

    PS:这是授予test用户bos数据库的增删改查的权限,如果想只授予部分权限,则可以根据下述语句自行修改

grant select,delete,update,create,drop on*.* to test@"%" identified by "123";

刷新系统权限表

flush privileges;

使用test用户登录,显示test可管理的数据库

show databases;

【MySQL】创建普通用户,分配权限,取消权限

取消权限

revoke all on *.* from test@localhost ;

总结

    上面的东西作为Java开发人遇到不会很多,因为数据库方面的内容DBA之类肯定都会提前处理好的,但是有那么一点小强迫症总想自己做出来。虽然就这么点东西,操作起来真是各种问题各种出,怎么做就是不出活,表示很心塞只能用强大的自我安慰一下就是锻炼的不够啊,不断实践吧。

          【MySQL】创建普通用户,分配权限,取消权限