mysql权限与安全

一、MySQL权限系统通过两个阶段进行认证:

  (A) 对用户进行身份认证,IP地址和用户名联合,

  (B) 对合法用户赋予相应权限,权限表在数据库启动的时候载入内存中。

二、在权限的存取过程中,会用到”mysql“数据库中的user、host和db这3个权限表。两阶段验证过程

  (A) user表中 host、user和password判断是否可连接。

  (B) 权限表顺序 user->db->tables_priv->columns_priv。

  user表中的每个权限都代表了对所有数据库都有的权限,db表中的每个权限都代表了对特定数据库才有的权限。

三、账号管理

  创建账号的两种方式:使用GRANT语法创建或直接操作授权表,推荐第一种。

  修改权限可以使用 GRANT和REVOKE命令。

四、安全问题

  (A) 严格控制操作系统帐号和权限

  (B) 尽量避免以root权限运行MySQL

  (C) 防止DNS欺骗

  (D) 删除匿名账户

  (E) 给root账号设置口令

  (F) 设置安全密码

  (G) 只授予账号必须的权限

  (H) 只让root拥有mysql库user表的存取权限

  (I) 只让 管理员拥有 FILE、PROCESS和SUPER权限

  (J) DROP TABLE 并不会回收以前的相关访问授权

  (K) 使用SSL

  (L) 给所有用户加IP限制

  (M) 注意REVOKE命令的漏洞

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏xiaoheike

linux 创建sudo账号.md

root ALL=(ALL) ALL 在该行下面添加: username ALL=(ALL) ALL

12810
来自专栏运维技术迷

SQL复习之向现有数据库中添加文件组和数据文件

向现有数据库中添加文件组和数据文件,语句如下: use E_market --进入当前操作数据库 alter database E_market add fi...

1.6K60
来自专栏乐沙弥的世界

加强MySQL用户安全

   很多亲们在安装好了MySQL数据库之后,对于mysql用户表并没有做任何特殊的处理,因此缺省情况下,存在密码为空的用户,也有很多用户名和密码都为空的情形...

11010
来自专栏java相关

CentOS7使用dnf安装mysql

15350
来自专栏技术碎碎念

sql server 2008 基础知识

一、配置管理器 1.管理服务   使用配置管理器可以启动、停止、重新启动、继续或暂停服务。   服务器和客户端网络协议 2.SQLSMS   简介:SQLSMS...

37250
来自专栏性能与架构

SQL与MongoDB的对应关系图表

关系数据库有一套标准的SQL语句来操作数据库,MongoDB是文档型数据库,概念与操作方式与SQL都不相同,下面的几张表全面的表达了SQL与MongoDB的对应...

40760
来自专栏Java技术分享

MYSQL定位慢查询

在web开发中,我们经常会写出一些SQL语句,一条糟糕的SQL语句可能让你的整个程序都非常慢,超过10秒一般用户就会选择关闭网页。

645150
来自专栏程序猿

MySQL加载本地文本、导入SQL文件及其他常见命令行。

13830
来自专栏Java架构师历程

MySQL 谈谈Memory存储引擎

memory存储引擎是MySQL中的一类特殊的存储引擎。其使用存储在内存中的内容来创建表,而且所有数据也放在内存中。这些特性都与InnoDB,MyISAM存储引...

28720
来自专栏张善友的专栏

SQL Server 2008 FILESTREAM特性管理文件

在SQL Server 2008中,新的FILESTREAM(文件流)特性和varbinary列配合,你可以在服务器的文件系统上存储真实的数据,但可以在数据库上...

25160

扫码关注云+社区

领取腾讯云代金券