开发者社区> 技术小牛人> 正文

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   指定主机

 

4With_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 *.*  to admin1@`%` identified by tianyun;   //全局

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

Grant all on bbs.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;        //回收所有权限

Revoke delete  on pro.* from lisi@localhost;   //回收部分权限

 

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

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


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
数据管理 DMS :SQLServer 2008的性能优化服务发布
数据库性能诊断和优化是提高数据库性能和稳定性的关键技术之一。快速的发现异常、定位根因并且进行止损,是每个用户的需求。 数据管理DMS 增强了对SQL Server 2008 R2 性能优化服务的支持,希望可以帮助用户更快速的定位问题和解决问题。
2222 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
24794 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
17986 0
sqlServer对内存的管理
简介     理解SQL Server对于内存的管理是对于SQL Server问题处理和性能调优的基本,本篇文章讲述SQL Server对于内存管理的内存原理。   二级存储(secondary storage)     对于计算机来说,存储体系是分层级的。
946 0
SQL Serever学习11——数据库的安全管理
公司管理软件设计完成,但是日常工作繁忙,向领导提出增加几个管理员,帮助管理和维护系统,领导同意了,但是要求一定要管理好这几个管理员用户,保证数据库的安全。 修改身份验证模式 数据库验证机制 sqlserver的三层安全模型: 需要登录到sqlserver系统,需要登录账户 需要访问某个数据库,需要成为该数据库的用户 需要访问数据库的表,需要数据库管理员给自己授权,如增删改查等权限 2种身份验证模式 Windows身份验证 用于Windows平台的用户,不需要提供密码和Windows集成验证,因为windows系统本身就有管理和验证登录用户的能力。
1288 0
使用OpenApi弹性释放和设置云服务器ECS释放
云服务器ECS的一个重要特性就是按需创建资源。您可以在业务高峰期按需弹性的自定义规则进行资源创建,在完成业务计算的时候释放资源。本篇将提供几个Tips帮助您更加容易和自动化的完成云服务器的释放和弹性设置。
18665 0
5723
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
OceanBase 入门到实战教程
立即下载
阿里云图数据库GDB,加速开启“图智”未来.ppt
立即下载
实时数仓Hologres技术实战一本通2.0版(下)
立即下载