用户管理 | 创建用户create user '杨'@'20.0.0.13' identified by '123'; |
用户重命名rename user '杨'@'20.0.0.13' to 'yang'@'20.0.0.13'; | |
删除用户drop user '杨'@'20.0.0.13'; | |
权限管理 | 查看用户权限show grants for '杨'@'20.0.0.13'; |
赋予用户权限grant all privileges on *.* to '杨'@'localhost' identified by '123';(要在终端操作) | |
删除用户权限revoke all privileges on *.* from 'test1'@'20.0.0.13';(要在终端操作) | |
赋予用户单个权限grant select on *.* to '杨'@'20.0.0.13' identified by '123'; | |
赋予用户多个权限grant select,update,insert,drop on kgc.* to '杨'@'20.0.0.13' identified by '123'; | |
移除单个权限revoke select on kgc.* from '杨'@'20.0.0.13'; | |
移除多个权限revoke update,drop on kgc.* from '杨'@'20.0.0.13'; | |
刷新权限flush privileges; | |
密码管理 | 查看密码 select * from user; select User,Host,authentication_string from user; |
用户密码加密 select password('123'); create user '婷'@'20.0.0.13' identified by '*23AE809DDACAF96AF0FD78ED04B6A265E05AA257'; | |
修改其他用户密码set password for 'test1'@'20.0.0.13'=password('abc123'); | |
修改当前终端密码set password=password(‘123’); | |
忘记密码后修改密码 vim /etc/my.cnf 添加免密登录skip-grant-tables update user set authentication_string=password('abc123') where Host='20.0.0.13' and User='婷'; |
1、用户管理
(1)创建用户create user '杨'@'20.0.0.13' identified by '123';
create user 创建用户的固定开头
'杨'@'localhost' :杨——用户名
localhost——新建用户‘杨’可以在哪些主机上登录(可以使用IP地址、网段、主机名)
例如:'杨'@'192.168.233.22' '杨'@'192.168.233.0/24'
'杨'@'%':%是mysql的通配符,表示任意和所有
identified by '123':新建用户的密码
(2)用户重命名rename user '杨'@'20.0.0.13' to 'yang'@'20.0.0.13';
(3)删除用户drop user '杨'@'20.0.0.13';
2、权限管理
(1)查看用户权限show grants for '杨'@'20.0.0.13';
(2)赋予用户权限(要在终端操作)
grant all privileges on *.* to '杨'@'localhost' identified by '123';
grant赋权的固定开头
all privileges赋予所有权限
on *.* 对所有库都有操作权限
on kgc.* 对指定库进行操作
to '杨'@'localhost' 赋权给哪个用户('杨'@'localhost'与创建用户时一致)
identified by '123'使用密码登录(创建用户时可以不设置密码,但不推荐)
测试。结论:远程登录成功
(3)删除用户权限(要在终端操作)
revoke all privileges on *.* from 'test1'@'20.0.0.13';
给什么权限就删除什么权限
(4)对用户权限进行控制
①赋予用户单个权限
grant select on *.* to '杨'@'20.0.0.13' identified by '123';
②赋予用户多个权限
grant select,update,insert,drop on kgc.* to '杨'@'20.0.0.13' identified by '123';
③移除单个权限revoke select on kgc.* from '杨'@'20.0.0.13';
④移除多个权限revoke update,drop on kgc.* from '杨'@'20.0.0.13';
(5)刷新权限flush privileges;
3、密码管理
(1)查看密码select * from user;
select User,Host,authentication_string from user;
(2)用户密码加密
select password('123');
create user '婷'@'20.0.0.13' identified by '*23AE809DDACAF96AF0FD78ED04B6A265E05AA257';
(3)修改密码
①修改其他用户密码
set password for 'test1'@'20.0.0.13'=password('abc123');
②修改当前终端密码set password=password(‘123’);
③忘记密码后修改密码
vim /etc/my.cnf
添加免密登录skip-grant-tables
update user set authentication_string=password('abc123') where Host='20.0.0.13' and User='婷';
4、实题
(1)创建用户test1,只允许该用户从20.0.0.13终端登录,只对kgc库有权限,其他库一律不行
(2)创建用户test,默认密码123456,声明网段,网段任选
创建一个库,库名test1。在库中创建两个表table1和table2
table1:id 主键;name 不能为空;sex 不能为空
table2:id 主键;address 可以为空,默认地址不详;phone可以为空,不能重复
test用户可以对test1的库进行select、insert权限;test用户名改成test_123;密码修改为abc123;删除insert权限;给两个表分别创建索引,table1索引是hash 类型,sex做索引;table2索引是btree,phone做索引
1、创建table1
2、创建table2
3、创建用户test,默认密码123456,声明网段,网段任选
4、test用户可以对test1的库进行select、insert权限
5、test用户名改成test_123
6、密码修改为abc123
7、删除insert权限
8、给两个表分别创建索引,table1索引是hash 类型,sex做索引;table2索引是btree,phone做索引