zoukankan      html  css  js  c++  java
  • MySQl创建用户和授权

    一 权限管理

      

      我们知道我们的最高权限管理者是root用户,它拥有着最高的权限操作。包括select、update、delete、update、grant等操作。那么一般情况在公司之后DBA工程师会创建一个用户和密码,让你去连接数据库的操作,并给当前的用户设置某个操作的权限(或者所有权限)。那么这时就需要我们来简单了解一下:

    • 如何创建用户和密码
    • 给当前的用户授权
    • 移除当前用户的权限

      如果你想创建一个新的用户,则需要以下操作:

      1.进入到mysql数据库下

    mysql> use mysql
    Database changed

      2.对新用户增删改

    1.创建用户:
    # 指定ip:192.118.1.1的chao用户登录
    create user 'chao'@'192.118.1.1' identified by '123';
    # 指定ip:192.118.1.开头的chao用户登录
    create user 'chao'@'192.118.1.%' identified by '123';
    # 指定任何ip的chao用户登录
    create user 'chao'@'%' identified by '123';
    
    2.删除用户
    drop user '用户名'@'IP地址';
    
    
    3.修改用户
    rename user '用户名'@'IP地址' to '新用户名'@'IP地址';
    
    4.修改密码
    set password for '用户名'@'IP地址'=Password('新密码');

      3.对当前的用户授权管理

    #查看权限
    show grants for '用户'@'IP地址'
    
    #授权 chao用户仅对db1.t1文件有查询、插入和更新的操作
    grant select ,insert,update on db1.t1 to "chao"@'%';
    
    # 表示有所有的权限,除了grant这个命令,这个命令是root才有的。chao用户对db1下的t1文件有任意操作
    grant all privileges  on db1.t1 to "chao"@'%';
    #chao用户对db1数据库中的文件执行任何操作
    grant all privileges  on db1.* to "chao"@'%';
    #chao用户对所有数据库中文件有任何操作
    grant all privileges  on *.*  to "chao"@'%';
     
    #取消权限
     
    # 取消chao用户对db1的t1文件的任意操作
    revoke all on db1.t1 from 'chao'@"%";  
    
    # 取消来自远程服务器的chao用户对数据库db1的所有表的所有权限
    
    revoke all on db1.* from 'chao'@"%";  
    
    取消来自远程服务器的chao用户所有数据库的所有的表的权限
    revoke all privileges on *.* from 'chao'@'%';

    ps:在公司中,一般情况下是DBA工程师来做这些授权工作。给你一个用户名和密码,你来连接就可以了。

  • 相关阅读:
    java后端工具积累
    Java基础面试题整理
    MySql常问面试题
    jvm及并发面试题
    中间件redis kafka面试题
    笔记
    解决Git操作报错
    view的state和drawable的state 源码分析
    flutter_6_动态化简介
    有关namespace 命名空间
  • 原文地址:https://www.cnblogs.com/Godisgirl/p/10507958.html
Copyright © 2011-2022 走看看