• 【转】MySQL添加用户与授权


    1.新建用户

      1.1 登录MYSQL:

      @>mysql -u root -p

      @>密码

      1.2 创建用户:

      mysql> insert into mysql.user(Host,User,Password) values("localhost","test",password("1234"));

      这样就创建了一个名为:test 密码为:1234 的用户。

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

      1.3 然后登录一下:

      mysql>exit;

      @>mysql -u test -p

      @>输入密码

      mysql>登录成功

    2.为用户授权

      授权格式:grant 权限 on 数据库.* to 用户名@登录主机ip  identified by "密码"; 

      2.1 登录MYSQL(有ROOT权限),这里以ROOT身份登录:

      @>mysql -u root -p

      @>密码

      2.2 首先为用户创建一个数据库(testDB):

      mysql>create database testDB;

      2.3 授权test用户拥有testDB数据库的所有权限(某个数据库的所有权限):

       mysql>grant all privileges on testDB.* to test@localhost identified by '1234';

       mysql>flush privileges;//刷新系统权限表

      格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"; 

      2.4 如果想指定部分权限给一用户,可以这样来写:

      mysql>grant select,update on testDB.* to test@localhost identified by '1234';

      mysql>flush privileges; //刷新系统权限表

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

      mysql>grant select,delete,update,create,drop on *.* to test@"%" identified by "1234";

         //test用户对所有数据库都有select,delete,update,create,drop 权限。

      //@"%" 表示对所有非本地主机授权,不包括localhost。(localhost地址设为127.0.0.1,如果设为真实的本地地址,不知道是否可以,没有验证。)

     //对localhost授权:加上一句grant all privileges on testDB.* to test@localhost identified by '1234';即可。

    3. 删除用户

       @>mysql -u root -p

      @>密码

       mysql>Delete FROM user Where User='test' and Host='localhost';

       mysql>flush privileges;

       mysql>drop database testDB; //删除用户的数据库

    删除账户及权限:>drop user 用户名@'%';

            >drop user 用户名@ localhost; 

    4. 修改指定用户密码

        @>mysql -u root -p

        @>密码

        mysql>update mysql.user set password=password('新密码') where User="test" and Host="localhost";

        mysql>flush privileges;

    5. 列出所有数据库

      mysql>show database;

    6. 切换数据库

      mysql>use '数据库名';

    7. 列出所有表

      mysql>show tables;

    8. 显示数据表结构

      mysql>describe 表名;

    9. 删除数据库和数据表

      mysql>drop database 数据库名;

      mysql>drop table 数据表名;

  • 相关阅读:
    智能移动机器人背后蕴含的技术——激光雷达
    Kalman Filters
    Fiddler抓HttpClient的包
    VSCode开发WebApi EFCore的坑
    WPF之小米Logo超圆角的实现
    windows react打包发布
    jenkins in docker踩坑汇总
    Using ML.NET in Jupyter notebooks 在jupyter notebook中使用ML.NET ——No design time or full build available
    【Linux知识点】CentOS7 更换阿里云源
    【Golang 报错】exec gcc executable file not found in %PATH%
  • 原文地址:https://www.cnblogs.com/majw/p/8134202.html
Copyright © 2020-2023  润新知