前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL数据库安全配置

MySQL数据库安全配置

作者头像
字节脉搏实验室
发布2020-03-25 15:46:36
6K0
发布2020-03-25 15:46:36
举报

1.MySQL权限介绍:

MySQL中存在4个控制权限的表,分别为user表,db表,tables_priv表,columns_priv表。先从user表中的Host,User,Password这三个字段中判断连接的IP、用户名、密码是否存在,存在则通过验证。通过验证之后,则会进行权限分配,按照user,db,tables_priv,columns_priv的顺序进行验证。即先检查权限表user,如果user中对应的权限为Y,则此用户对所有数据库的权限都为Y,将不再检查db,tables_priv,columns_priv;如果为N,则到db表中检查此用户对应的具体数据库,并得到db中为Y的权限;如果db中为N,则检查tables_priv中此数据库对应的具体表,取得表中的权限Y。网站使用时是否建议给予权限如下:

2.MySQL安全配置方案:

1)限制访问MySQL端口的IP:Windows可以通过Windows防火墙和Ipsec来限制,Linux下可以通过Iptables来限制。

2)修改MySQL的端口:Windows下可以修改配置文件my.ini来实现,Linux可以修改配置文件my.cnf来实现。 3)对所有用户设置强密码并严格指定对应账号的访问IP。(Tip:MySQL中user表可指定用户可访问的IP) 4)root特权账号的处理:root账号最好设置强密码并且设置只允许本地登录。 5)日志的处理:查询日志会记录登录和查询语句。 6)MySQL进程运行账号:最好禁止使用local system去运行MySQL账户,建议使用network service或者新建一个账户,只要给予MySQL程序所在目录的读取权限和data目录的读写权限即可;Linux系统中,新建一个MySQL账号,并在安装时指定以MySQL账户来运行,并给予程序所在目录的读取权限,data目录读写权限。

7)MySQL运行账号的磁盘权限:

a、MySQL运行账号需要给予程序所在目录的读取权限,以及data目录的读取和写入权限。

b、不容许给予其他目录的写入和执行权限,特别是有网站的。

c、取消MySQL运行账户对于cmd,sh等一些程序的执行权限。

8)网站使用MySQL账户的处理:

新建一个账户,给予账户所使用数据库的所有权限即可,这样能保证账户不会因为权限过高而影响安全。给予单个数据库所有权限的账户不会拥有super,process,file等管理权限。

9)删除没使用的数据库:比如test数据库,该数据库对新建的账户默认有权限。

3.MySQL安全配置常用命令:

1.MySQL的root用户是空密码,为了安全起见必须修改为强密码,命令:

2.刷新内存授权表,否则还是使用缓存中的口令,即还可以使用空口令进行登录,命令:

3.系统管理员用户名为root,为了安全起见建议修改,命令:

4.给予相应的数据库权限:

5.刷新权限:

6.显示权限,可以看到刚才添加的权限语句:

7.移除权限:

可以看到之前添加的权限已经取消:

8.添加用户:

9.删除用户:

10.用户改名:

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-03-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 字节脉搏实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2.MySQL安全配置方案:
  • 3.MySQL安全配置常用命令:
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档