欢迎来到夜的世界

莫听穿林打叶声,何妨吟啸且徐行。竹杖芒鞋轻胜马,谁怕?一蓑烟雨任平生.料峭春风吹酒醒,微冷,山头斜照却相迎。回首向来萧瑟处,归去,也无风雨也无晴。
扩大
缩小

mysql 创建用户与授权

   权限管理    

    我们都知道,最高权限管理者是 root 用户 , 它拥有着最高的权限操作,包括 : select(查询) ,update(修改) , delete(删除,有事没事都不要用这个,反正也不能给这个的权限) , grant(授权).那么一般在公司中会有 DBA工程师 (专门管理数据库的),他会创建一个用户和密码,让我们去链接数据库的操作,并给当前的用户设置某个操作的权限(或者所有权限-想想就行).

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

  步骤 : 

  1 . 进入到mysql数据库下 : 

mysql> use mysql
Database changed

  2 . 对新用户进行增删改:

1.创建用户:
# 指定ip:192.118.1.1的mjj用户登录
create user 'mjj'@'192.118.1.1' identified by '123';
# 指定ip:192.118.1.开头的mjj用户登录
create user 'mjj'@'192.118.1.%' identified by '123';
# 指定任何ip的mjj用户登录
create user 'mjj'@'%' identified by '123';

2.删除用户
drop user '用户名'@'IP地址';


3.修改用户
rename user '用户名'@'IP地址' to '新用户名'@'IP地址';

4.修改密码
set password for '用户名'@'IP地址'=Password('新密码');

  3 . 对当前用户进行授权管理

#查看权限
show grants for '用户'@'IP地址'

#授权 mjj用户仅对db1.t1文件有查询、插入和更新的操作
grant select ,insert,update on db1.t1 to "mjj"@'%';

# 表示有所有的权限,除了grant这个命令,这个命令是root才有的。mjj用户对db1下的t1文件有任意操作
grant all privileges  on db1.t1 to "mjj"@'%';
#mjj用户对db1数据库中的文件执行任何操作
grant all privileges  on db1.* to "mjj"@'%';
#mjj用户对所有数据库中文件有任何操作
grant all privileges  on *.*  to "mjj"@'%';
 
#取消权限
 
# 取消mjj用户对db1的t1文件的任意操作
revoke all on db1.t1 from 'mjj'@"%";  

# 取消来自远程服务器的mjj用户对数据库db1的所有表的所有权限

revoke all on db1.* from 'mjj'@"%";  

取消来自远程服务器的mjj用户所有数据库的所有的表的权限
revoke all privileges on *.* from 'mjj'@'%';

  在公司中,这些都是 DBA工程师来做这些授权工作,别人想也不要想,当然 大boss 除外.

  4 . 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

 

posted on 2018-10-13 11:13  二十四桥_明月夜  阅读(263)  评论(0编辑  收藏  举报

导航