• mysql创建子账户


    1.首先登陆root账户

    [root@hecs-219255 ~]# mysql -uroot -p
    
    • 1

    首先在Xshell客户端登陆linux,然后输入mysql命令进行登陆。

    image-20221206170419528

    2.创建子账户

    创建一个用户名为test1,密码为123456的子账号,有两种方法,分别为:

    CREATE USER 'test1'@'localhost'  IDENTIFIED BY '123456';
    
    • 1
    CREATE USER 'test1'@'%' IDENTIFIED BY '123456';
    
    • 1

    以上两种方法任选其一即可,但是两种方法有区别,第一个方法创建好子账号之后,这个子账号只能在本地登陆,不能进行远程登陆;第二种方法,既可以进行本地登陆,也可以进行远程登陆。

    综上:创建子账号用第二个方法进行创建

    image-20221206171004005

    以上账户就创建好了,可以尝试进行登陆测试,接下来的操作,就是给子账户授权可以操作的数据库。

    测试操作:

    1.退出mysql的root账户

    mysql> quit;
    
    • 1

    2.使用刚刚创建的子账户进行登陆

    [root@hecs-219255 ~]# mysql -utest1 -p123456
    
    • 1

    image-20221206171444600

    出现以上界面表示子账户创建成功。

    3.给子账户授权数据库权限

    (1) 给子账户授予权限,需要在刚才创建子账户的用户进行授权操作,即刚才的root账户

    [root@hecs-219255 ~]# mysql -uroot -p
    
    • 1

    (2) 创建一个测试数据库testDemo

    mysql> create database testDemo default charset utf8 collate utf8_general_ci;
    
    • 1

    (3)添加权限

    ①授权test1子账户对testDemo数据库所有操作权限

    mysql> grant all privileges on testDemo.* to "test1"@"%" identified by "123456";
    
    • 1

    “test1”@“%”:表示不仅对本地有效而且对远程也有效

    “test1”@“localhost”:表示只对本地用户有效

    ②如果不想授权所有权限,只想授权查询和更新也可以

    mysql> grant select,update on testDemo.* to "test"@"%" identified by "123456";
    
    • 1

    ③赋予权限后要刷新系统权限表,使配置生效

    mysql> flush privileges;
    
    • 1

    注意:mysql8.0之后赋予权限命令有变化,如下

    mysql> grant all privileges on testDemo.* to 'test'@'%';
    
    • 1

    4. 删除子账户及权限

    (1)删除远程test子账号,本地test账号仍可以使用

    mysql> drop user test@"%";
    
    • 1

    (2)删除本地test账号

    mysql> drop user test@"localhost";
    
    • 1
    
    
    • 1
  • 相关阅读:
    ESP8266-Arduino编程实例-L3GD20三轴角速率传感器驱动
    第七章认识Express框架
    绿色信贷数据合集(更新至2021年)
    文字弹性跳动CSS3代码
    中秋,在公司赏月
    Kafka - 04 Java客户端实现消息发送和订阅
    注册商标的重要性
    【计算机网络实验/wireshark】tcp建立和释放
    SSH详解
    Spring Security认证绕过漏洞(CVE-2022-22978)研究与防护手段
  • 原文地址:https://blog.csdn.net/qq_52699757/article/details/128208109