mysql创建用户并设置权限

mysq,功能强大的关系型数据库,它的用户管理在开发过程中当然也尤其重要,接下来就看看mysql的用户管理

1.登录数据库

mysql -uroot -p 回车

输入密码… 回车

2.登录成功后,切换数据库

mysql>use mysql;

3.查看当前用户

mysql>select user,host from user;

这里只列举了两个字段,这张表的字段很多,一般比较关注的就这几个:

host:访问主机

user:访问用户名

plugin:认证方式(密码加密方式)

authentication_string:密码加密后的一长串字符

4.新增用户

mysql>CREATE USER ‘username’@‘host’ IDENTIFIED BY ‘password’;

host:主机ip,%【任意ip】 localhost【本机】 192.168.31.22【指定ip】

IDENTIFIED BY:将密码用默认的加密方式进行加密后放入表中,不直接存放可以明码

默认的加密方式需要查一下user表中的plugin,如果客户端不支持,可以指定加密方式进行加密

mysql>CREATE USER ‘username’@‘host’ IDENTIFIED MySqlSHA1 BY ‘password’;

新增后的用户默认是没有任何权限的,也就是useage,只能登陆罢了

5.查看MYSQL数据库中用户的权限
mysql>show grants for ‘username’@‘host’;

6.用户授权
mysql>grant privileges on dbname.tabname to “username”@“host”
privileges :权限,select【查询】,update【更新】,delete【删除】等等,all【所有】
这样的授权的用户就算拥有可所有权限,但是没办法管理其他用户,如果你想让这个用户可以授权其他用户,在后面再加上 with grant option.
grant privileges on dbname.tabname to “username”@“host” with grant option

7.修改用户
mysql>update user set host=“localhost” where user=“username”
user,host,plugin都可以用update语句,修改plugin之后,需要再次修改密码,否则无效,也可以在修改密码的时候指定加密方式,就不需要修改plugin
修改用户密码加密方式一般是是客户端不支持服务器这边的加密方式,才会修改的,如果支持,一般可以不修改加密方式,mysql8.0就需要修改加密方式,不然图形化工具完全没办法连接。

8.删除用户,根据用户名删除,也可以根据host
mysql>delete user where user=“username”

注意:允许远程就是把用户的访问地址从localhost 到 % 或者指定ip,允许了远程之后,要设置权限,否则用户就只能登录,其他的什么也不能干,当然,你想逗他玩玩,也可以,你开心就好。

9.用户操作,最后一步,更新权限

mysql>flush privileges

10.如果还是显示无法连接,查看配置文件

则需要修改配置文件。找到my.cnf,一般在/etc/mysql/下面,具体情况根据实际而定。注释掉其中的bind-address属性。如下

在这里插入图片描述

  • 6
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值