美文网首页
Centos7中 mysql5.7 新用户 创建 、授权、远程登

Centos7中 mysql5.7 新用户 创建 、授权、远程登

作者: 朝畫夕拾 | 来源:发表于2019-08-06 16:23 被阅读0次

    1、添加用户

    跟以往版本不同,MySQL5.7 mysql.user表没有password字段,这个字段改成了 authentication_string;

    这里我们使用命令进行创建用户:

    CREATE  USER  'username'@'host'  IDENTIFIED  BY  'password';

    如创建一个test用户,密码为test1234,可以进行远程登录:

    create  user  'test'@'%'  identified  by  'test1234';

    username - 你将创建的用户名,

    host - 指定该用户在哪个主机上可以登陆,此处的"localhost",是指该用户只能在本地登录,不能在另外一台机器上远程登录,如果想远程登录的话,将"localhost"改为"%",表示在任何一台电脑上都可以登录;也可以指定某台机器可以远程登录;

    password - 该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器。

    2、删除用户的话使用:

    如果用户创建错了,肯定要支持删除操作,使用命令:

    DROP  USER  'username'@'host';

    修改用户:

    rename  user  '用户名'@'IP地址'  to  '新用户名'@'IP地址';

    修改密码:

    set  password  for  '用户名'@'IP地址' = Password('新密码');

    PS:用户权限相关数据保存在mysql数据库的user表中,所以也可以直接对其进行操作(不建议)。因为容易出错啊。

    3、授权

     查看权限

    show  grants  for'用户'@'IP地址'

    删除权限:

    revoke  权限  on  数据库.表  from  '用户'@'IP地址';

    授权test用户有testDB数据库的某一部分权限:

    grant  select,update  on  testDB.*  to  test@'%'  identified  by  'test1234';

    授权test用户有testDB数据库的所有操作权限:

    grant  all  privileges  on  testDB.* to'test'@'%'  identified  by  'test1234';

    授权test用户拥有所有数据库的某些权限:

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

    privileges - 用户的操作权限,如select,delete,update,create,drop等(详细列表可自行百度),如果要授予所有的权限可使用all(参考第二种授权方式);% 表示对所有非本地主机授权,不包括localhost。

     GRANT  ALL  privileges  ON  test.* TO usr@'%' IDENTIFIED BY 'password' WITH GRANT OPTION; 

    #设置密码时要三种字符并存

    mysql> flush privileges; #刷新表权限

    退出,重新用新创建的用户登录就成功了​

    相关文章

      网友评论

          本文标题:Centos7中 mysql5.7 新用户 创建 、授权、远程登

          本文链接:https://www.haomeiwen.com/subject/fkqwdctx.html