MySql - 创建用户和授权

 创建用户和授权

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

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

(1)创建新用户

  • 进入到mysql数据库下
    #进入到 mysql
    mysql> use mysql
    Database changed
  • 对新用户进行增删改
    #1.创建用户:指定ip:192.168.15.11的hehe用户登录
    create user 'hehe'@'192.168.15.11' identified by '123';
    # 指定ip:192.168.15.开头的hehe用户登录
    create user 'hehe'@'192.118.1.%' identified by '123';
    # 指定任何ip的hehe用户登录
    create user 'hehe'@'%' identified by '123';
    
    #2.删除用户
    drop user '用户名'@'IP地址';
    
    #3.修改用户
    rename user '用户名'@'IP地址' to '新用户名'@'IP地址';
    
    #4.修改密码
    set password for '用户名'@'IP地址'=Password('新密码');
  • 对当前用户授权管理
    #1 查看权限
    show grants for '用户'@'IP地址'
    
    #授权 hehe用户仅对db1.t1文件有查询、插入和更新的操作
    grant select ,insert,update on db1.t1 to "hehe"@'%';
    
    # 表示有所有的权限,除了grant这个命令,这个命令是root才有的。hehe用户对db1下的t1文件有任意操作
    grant all privileges  on db1.t1 to "hehe"@'%';
    #hehe用户对db1数据库中的文件执行任何操作
    grant all privileges  on db1.* to "hehe"@'%';
    #hehe用户对所有数据库中文件有任何操作
    grant all privileges  on *.*  to "hehe"@'%';
     
    #取消权限
     
    # 取消hehe用户对db1的t1文件的任意操作
    revoke all on db1.t1 from 'hehe'@"%";  
    
    # 取消来自远程服务器的hehe用户对数据库db1的所有表的所有权限
    
    revoke all on db1.* from 'hehe'@"%";  
    
    #取消来自远程服务器的hehe用户所有数据库的所有的表的权限
    revoke all privileges on *.* from 'hehe'@'%';
  • MySql 备份命令操作
    # 备份:数据表结构+数据
    mysqdump -u root db1 > db1.sql -p
    
    
    # 备份:数据表结构
    mysqdump -u root -d db1 > db1.sql -p
    
    #导入现有的数据到某个数据库
    #1.先创建一个新的数据库
    create database db10;
    # 2.将已有的数据库文件导入到db10数据库中
    mysqdump -u root -d db10 < db1.sql -p

猜你喜欢

转载自www.cnblogs.com/wcx666/p/10555096.html