首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >MySQL数据库授权的两种方式

MySQL数据库授权的两种方式

作者头像
误入歧途
发布2024-05-08 16:18:37
发布2024-05-08 16:18:37
8480
举报
文章被收录于专栏:误入歧途误入歧途

方法一:grant命令创建用户并授权(针对只修改权限)

grant命令简单语法如下:

grant all privileges on dbname.* to username@localhost identified by 'passwd';

列表说明如下:

     说明:上述命令是授权localhost主机上通过用户username管理dbname数据库的所有权限,密码是passwd。其中,username,dbname,passwd可根据业务的情况修改。

举例:创建yuwen用户,对test库具备所有权限,允许从localhost主机登陆管理数据库,密码为yuwen。

首先,查看下当前数据库用户情况:

mysql> select user,host from mysql.user;

 然后,执行如下授权命令:

mysql> grant all on test.* to yuwen@localhost identified by 'yuwen';

最后,查看当前数据库用户情况:

mysql> select user,host from mysql.user;

 查看授权用户具体权限:

mysql>show grants for yuwen@`%`;(或者mysql> show grants for yuwen@`%` \G)

  说明:可以看到默认权限是usage,即连接权限,后面又增加了all权限!

==============================================================================

方法二:create和grant配合法(创建用户并修改权限)

首先创建用户username及密码passwd,授权主机localhost。

  语法:create user username@localhost identified by 'passwd';

  如:创建用户utest及密码test,授权主机localhost。

mysql> create user utest@localhost identified by 'utest';

然后授权localhost主机上通过用户username管理dbname数据库的所有权限,无需密码。

  语法:grant all on dbname.* to username@localhost;

  如:授权localhost主机上utest管理test数据库的所有权限。

mysql> grant all on test.* to utest@localhost;

  查看当前用户信息: 

mysql> select user,host from mysql.user;

 查看utest具体权限: 

mysql> show grants for utest@localhost;(或者mysql> show grants for utest@localhost\G)

 mysql刷新权限命令:FLUSH PRIVILEGES;(一般用于数据库用户信息更新后)

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-04-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档