mysql数据库的安全机制管理_mysql管理之安全机制

Mysql权限表>>初始化过后产生的mysql库

Mysql.user表非常重要

一、用户字段

二、权限字段

三、安全字段

四、资源控制字段

Mysql.db  mysql.hsot

用户字段

权限字段

Mysql.tables_priv

Mysql.columms_priv

Procs_priv

Mysql用户管理

登录和退出mysql

实例:

Mysql -h 192.168.5.240 -P 3306  -uroot -p123 mysql -e‘select user,host from user’

-h  主机名

-P 服务器端口

-u 用户名

-p 密码

-e 连接sql语句

\s获取当前服务器状态信息

Quit退出登录

创建用户

方法一create user语句创建

实例:create user user1@’localhost’identified by‘123456’;

方法二insert语句创建  不常用

实例:insert into mysql.user(user,host,password,ssl_cipher,x509_issuer,x509_subject)

Values (‘user2’,’localhost’,’password(‘123456’),’’,’’);

Flush privileges;

方法三grant语句创建//同时授权,最常用

实例:Grant select on‘*’to user3@‘localhost’identitied by‘123456’;

Flush privileges;

删除用户

方法一drop user语句删除

Drop user user1@’localhost’;

方法二delect语句删除

Delect from mysql.user where user=’user2’and host=’localhsot’;

Flush privileges;

修改用户密码(root修改自己密码)

方法一

Mysqladmin -u root -p password‘new password’//将提示输入旧密码

方法二

Update mysql.user set password=password(‘new password’) where user=’root’and host=’localhost’;

Flush privileges;

方法三

Set password=password(‘new password’);

Flush privileges;

Root修改其他用户密码

方法一

Set password for user3@’localhost’=password(‘new_password’);

Flush privileges;

方法二

Update mysql.user set password=password(‘new passowrd’) where user=’user3’and host=’localhost’;

Flush privileges;

方法三

Grant select on‘*’to user3@’localhost’identified by‘tianyun’;

Flush privileges;

普通用户修改自己密码

Set password=password(‘new passowrd’);

丢失root用户密码

Vim /etc/my.cnf

Skip-grant-tables   //增加这一句表示跳过授权表也就是跳过密码验证

保存退出

Service mysqld restart  //重启mysq服务器

Mysql -uroot

Update mysql.user set password=password(‘new password’) where user=’root’and host=’localhost’;

Flush privileges;

Mysql权限管理

权限应用的顺序:

user(Y/N)==>DB==>tables_priv==>colums_priv

语法格式

grant 权限列表on库名.表名to用户名@'客户端主机'  [identified by '密码' with grant option]

1)权限列表   all   所有权限(不包括授权权限)

select update

2)库名.表名*.*所有数据库

数据库.*  指定数据库下的所数据对象  最常用

数据库名称.表名称 指定数据库的指定表

3)客户端主机

对象列表(为谁赋值了上面的增删改查的这些权限)

%   所有主机

192.168.2.%   192.168.2.段的主机

192.168.2.8   指定主机

4)With_option参数

Grant option          授权选项

Max_queries_per_hour;   定义每小时允许查询的查询数

Max_updates_per_hour;   定义每小时允许更新的查询数

Max_connections_per_hour; 定义每小时可以建立的连接数

Max_user_connections;    定义单个用户同时可以建立的连接数

实例:把pro这个数据库下的所有权限都给了李四

Grant all on pro.*  to lisi@localhost;//db级的

Grant all on*.*  toadmin1@`%` identified by‘tianyun’;   //全局

Grant all on pro.*  toadmin2@`%` identified by‘tianyun’with grant option;  //增加这个用户的授权权限

Grant all onbbs.user to admin4@’%’identified by‘tianyun’//表级

Grant select (col1),insert(col2,col3) on bbs.user to admin@’%’identified by‘tianyun’;  //列级别

查看权限:show grants for 用户名@客户端主机名\g

实例 show grants for admin1@’%’\G

删除收回权限

Revoke 权限列表on对象列表from用户列表

Revoke all on pro.* from lisi@localhost;//回收所有权限

Revokedeleteon pro.* from lisi@localhost;//回收部分权限

注意:在日常管理中在删除用户之前应该是先删除该用户所有权限,再删除该用户,不然以后如果再创建相同的用户的话权限就还是存在的,这是不可以的

本文转自    探花无情   51CTO博客,原文链接:http://blog.51cto.com/983865387/1875834

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值