• linux创建mysql新用户及授权


    1.使用root登录 mysql -h 127.0.0.1 -u root -p

    2.创建新数据库  create database mydb;

       删除数据库   drop database [database name];

    3.查看所有数据库   show databases;

    4.创建用户 create user test@'%';

    注: %表示所有地址;@后面可以接具体ip地址 ,如@‘192.168.0.3’、@‘localhost’

    创建用户的同时可以设置密码    CREATE USER 'username'@'%' IDENTIFIED BY 'password';

    5.修改用户名的密码

    :mysql5.7之前,使用  update mysql.user set password=password('123456') where user='test';

    mysql5.7之后,使用 update mysql.user set authentication_string=password('123456') where user='test';

    6.授权  grant all privileges on mydb.* to 'test'@'%' with grant option;

    表示授予test访问数据库mydb的权限,启用test用户可以登录任何机器;

    注:若想让用户test看到其它数据库,可以继续执行上面的命令,只需更改数据库名

     grant all privileges on mydb.* to 'test'@'192.168.3.100' with grant option;

    代表允许从用户test从192.168.3.100机器连接mysql的mydb数据库

    grant all privileges on *.* to '用户名'@'主机名' identified by "密码" with grant option;

    注:with grant option 这个选项表示该用户可以将自己拥有的权限授权给别人

    *.* 中前面的*号用来指定数据库名,后面的*号用来指定表名。
    to 表示将权限赋予某个用户。

    identified by 指定用户的登录密码。

    例如:我要创建一个test10用户,它的密码也是test10,他只能访问db10数据库,操作如下:

    1. CREATE USER test10@'%';
    2. GRANT ALL PRIVILEGES ON db10.* TO 'test10'@'%' IDENTIFIED BY "test10" WITH GRANT OPTION;
    3. FLUSH PRIVILEGES;

    再如,我想让test10用户只能查看db10数据库,操作如下

    1. CREATE USER test10@'%';
    2. GRANT SELECT ON db10.* TO 'test10'@'%' IDENTIFIED BY "test10" WITH GRANT OPTION;
    3. FLUSH PRIVILEGES;

    7.授权后刷新系统权限表   flush privileges;

    8.查看当前用户的权限   show grants;

    8.1查看某个用户权限    show grants for 'username'@'%' ;

    9.使用数据库    use mydb;

    10.查询sql       select * from t1;

  • 相关阅读:
    MySQL——(三大日志)(MVCC)(间隙锁与其他各种锁)
    SpringBoot整合Thymeleaf
    rust 过程宏
    CGAL 读写.xyz格式的点云
    介绍一下js的节流与防抖?
    e人e本优盘使用
    CSDN 重新开放付费资源的上传了,但要求如下
    【计算机组成原理】第六章 总线
    第64章 Jquery JSON Table Nop后台重构定义Jquery DataTables
    mysql表数据(做实验用,请自取)
  • 原文地址:https://blog.csdn.net/fang0604631023/article/details/127804765