如何保护MySQL中重要数据的方法

 更新时间:2011年10月11日 13:00:27   作者:  
在日常的工作中,保护数据免受未授权用户的侵犯是系统管理员特别关心的问题。如果你目前用的是MySQL,就可以使用一些方便的功能来保护系统,来大大减少机密数据被未授权用户访问的风险
企业最有价值的资产通常是其数据库中的客户或产品信息。因此,在这些企业中,数据库管理的一个重要部分就是保护这些数据免受外部攻击,及修复软/硬件故障。

  在大多数情况下,软硬件故障通过数据备份机制来处理。多数数据库都自带有内置的工具自动完成整个过程,所以这方面的工作相对轻松,也不会出错。但麻烦却来自另一面:阻止外来黑客入侵窃取或破坏数据库中的信息。不幸的是,一般没有自动工具解决这一问题;而且,这需要管理员手工设置障碍来阻止黑客,确保公司数据的安全。

  不对数据库进行保护的常见原因是由于这一工作“麻烦”而“复杂”。这确实是事实,但如果你应用MySQL,就可以使用一些方便的功能来显着减少面临的风险。下面列出了以下几个功能:

  ◆删除授权表中的通配符

  MySQL访问控制系统通过一系列所谓的授权表运行,从而对数据库、表格或栏目级别的用户访问权利进行定义。但这些表格允许管理员为一名用户设定一揽子许可,或一组应用通配符的表格。这样做会有潜在的危险,因为黑客可能会利用一个受限的账户来访问系统的其他部分。由于这一原因,在设置用户特权时要谨慎,始终保证用户只能访问他们所需的内容。在给个别用户设定超级特权时要尤其小心,因为这种级别允许普通用户修改服务器的基本配置,并访问整个数据库。

  建议:对每个用户账户应用显示特权命令,以审查授权表,了解应用通配符许可是否恰当。

  ◆要求使用安全密码

  用户账号的安全与用来保护它们的密码密切相关。因此,在安装MySQL时第一件事就应该设置MySQL根账号的密码(默认为空)。修复这一漏洞后,接下来就应要求每个用户账号使用一个密码,且不要使用生日、用户名或字典中的单词这些容易识别的启发式密码。

  建议:应用MySQL-安全-授权选项避免使用旧的,不大安全的MySQL密码格式。

  ◆检查配置文件许可

  一般来说,要使服务器连接更为快速方便,单个用户和服务器管理员必须把他们的用户账号密码存储在单用户MySQL选项文件中。但是,这种密码是以纯文本形式存储在文件中的,很容易就可以查阅。因此,必须保证这样的单用户配置文件不被系统中的其他用户查阅,且将它存储在非公共的位置。理想情况下,你希望单用户配置文件保存在用户的根目录,许可为0600。

  ◆加密客户与服务器之间数据传送 :

  MySQL(及其它)客户与服务器构架的一个重要问题就是通过网络传送数据时的安全问题。如果客户与服务器间的交互以纯文本形式发生,黑客就可能“嗅出”被传送的数据包,从而获得机密信息。你可以通过激活MySQL配置中的SSL,或应用一个OpenSSH这样的安全应用来为传送的数据建立一个安全的加密“通道”,以关闭这一漏洞。以这种形式加密客户与服务器连接可使未授权用户极难查阅往来的数据。

  ◆禁止远程访问

  如果用户不需要远程访问服务器,你可以迫使所有MySQL连接通过UNIX插槽文件来完成,从而大大减少网络受攻击的风险。这一过程可通过跳过网络选项启动服务器来完成。这样可以阻止TCP/IP网络连接到MySQL上,保证没有用户可以远程连接系统。

  建议:可以在MySQL服务器配置中添加捆绑地址127.0.0.1指令来增强这一功能,迫使MySQL捆绑当地机器的IP地址来保证只有同一系统中的用户可以连接到MySQL。

  ◆积极监控MySQL访问记录

  MySQL中带有很多不同的日志文件,它们记录客户连接,查询和服务器错误。其中,最重要的是一般查询日志,它用时间标签记录每名客户的连接和中断时间,并记录客户执行的每个查询。如果你怀疑发生了不寻常的行为,如网络入侵,那么监控这个日志以了解行为的来源是个好方法。

  保护你的MySQL数据库是一个日常工作。因此,即使完成了上述步骤,也还需要你利用更多的时间去了解更多的安全建议,积极监控并更新你的系统安全

相关文章

  • Mysql查询以某"字符串"开头的查询方式

    Mysql查询以某"字符串"开头的查询方式

    这篇文章主要介绍了Mysql查询以某"字符串"开头的查询方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • MySQL5.7.03 更换高版本到MySQL 5.7.17安装过程及发现问题解决方案

    MySQL5.7.03 更换高版本到MySQL 5.7.17安装过程及发现问题解决方案

    这篇文章主要介绍了MySQL5.7.03 更换高版本到MySQL 5.7.17安装过程及发现问题解决方案,需要的朋友可以参考下
    2017-08-08
  • mysql中show指令使用方法详细介绍

    mysql中show指令使用方法详细介绍

    mysql中show指令使用过程中会经常遇到,在本文将为大家详细介绍下其具体的使用,需要的朋友不要错过
    2014-11-11
  • Mysql实现合并多个分组(GROUP_CONCAT及其平替函数)

    Mysql实现合并多个分组(GROUP_CONCAT及其平替函数)

    MySQL 中提供了多种合并字符串的函数和操作方法,包括 GROUP_CONCAT、CONCAT_WS 和 CONCAT 等,本文介绍了 MySQL 中 GROUP_CONCAT 函数以及 CONCAT_WS、CONCAT 函数并通过示例代码演示了它们的用法,感兴趣的可以了解一下
    2023-10-10
  • SQL group by去重复且按照其他字段排序的操作

    SQL group by去重复且按照其他字段排序的操作

    这篇文章主要介绍了SQL group by去重复且按照其他字段排序的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • MySQL GROUP BY分组取字段最大值的方法示例

    MySQL GROUP BY分组取字段最大值的方法示例

    本文介绍了如何使用MySQL的GROUPBY语句结合MAX函数来实现分组取字段最大值的操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-01-01
  • MySQL自增id用完的解决方案

    MySQL自增id用完的解决方案

    MySQL 的自增 ID(Auto Increment ID)是数据库表中最常用的主键类型之一,然而,在一些特定的场景下,自增 ID 可能会达到其最大值,可能会遇到 ID 用尽的问题,所以本文介绍了MySQL自增id用完的解决方案,需要的朋友可以参考下
    2024-12-12
  • mysql中如何查询数据库中的表名

    mysql中如何查询数据库中的表名

    这篇文章主要介绍了mysql中如何查询数据库中的表名问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • MYSQL加密和压缩函数详解以及实战(附示例)

    MYSQL加密和压缩函数详解以及实战(附示例)

    这篇文章主要给大家介绍了关于MYSQL加密和压缩函数详解以及实战的相关资料,加密函数主要用来对数据进行加密和界面处理,以保证某些重要数据不被别人获取,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-12-12
  • mysql 5.7.21 winx64免安装版配置方法图文教程

    mysql 5.7.21 winx64免安装版配置方法图文教程

    这篇文章主要为大家详细介绍了mysql 5.7.21 winx64免安装版配置方法图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02

最新评论