14-补充内容:MySQl建立用户和受权

权限管理

咱们知道咱们的最高权限管理者是root用户,它拥有着最高的权限操做。包括select、update、delete、update、grant等操做。那么通常状况在公司以后DBA工程师会建立一个用户和密码,让你去链接数据库的操做,并给当前的用户设置某个操做的权限(或者全部权限)。那么这时就须要咱们来简单了解一下:mysql

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

若是你想建立一个新的用户,则须要如下操做:sql


1.进入到mysql数据库下数据库

mysql> use mysql
Database changed

2.对新用户增删改服务器

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

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


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

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

 

3.对当前的用户受权管理ide

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

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

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

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

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

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

ps:在公司中,通常状况下是DBA工程师来作这些受权工做。给你一个用户名和密码,你来链接就能够了。spa

 

 

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
相关文章
相关标签/搜索