下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

详细分析Mysql与Mssql两者的安全性

作者:课课家教育     来源: http://www.kokojia.com点击数:884发布时间: 2017-02-16 13:00:44

标签: Mysqlphp数据库

大神带你学编程,欢迎选课

  数据库,简单来说是本身可视为电子化的文件柜--存储电子文件的处所,用户可以对文件中的数据进行新增、截取、更新、删除等操作。数据库技术是管理信息系统、办公自动化系统、决策支持系统等各类信息系统的核心部分,是进行科学研究和决策管理的重要技术手段。今天小编要为大家分享的一篇教程就是:详细分析MySQL与Mssql两者的安全性。

  首先我们先来介绍一下这两者的基本概念吧。MSSQL是指微软的SQLServer数据库服务器,它是一个数据库平台,提供数据库的从服务器到终端的完整的解决方案,其中数据库服务器部分,是一个数据库管理系统,用于建立、使用和维护数据库。MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQLAB公司。

详细分析Mysql与Mssql两者的安全性_Mysql_php_数据库_课课家

  大家都知道一般情况下,在大型的网站里面使用的都是DB2或者是Oracle,然而在一些中小型网站很多都是使用更加灵活小巧的mysql数据库或者是mssql数据库这两者。那么问题就来,在一模一样的条件下,免费的mysql以及微软开发的mssql哪一个相对来说更加的安全呢?现在就让我们一起来探讨一下吧。

  首先我们要做的就是先在各自的电脑上面使用管理员帐号默认安装了mysql以及mssql这两个数据库,为什么要使用管理员帐号呢?按时为了可以方便在一模一样的的情况下面检测到两者的安全性。大家可以参考一下小编主机上的系统配置,具体的配置如下:操作系统Microsoftwindows2000Version5.0,安装了sp4,iis服务以及ftp服务,支持php以及asp。在系统里面仅仅只有一个管理员帐号,那就是admin,帐号guest并没有禁用。

  分析系统内部安全性

  1、mysql数据库权限控制

  大家是否知道mysql的权限控制是基于mysql这个数据库的,所以就叫做授权表。在这个授权表里面,一共包括了六个数据表,分别是columns_priv,host,tables_priv,db,func以及user。现在我们先使用一下descuser这一个命令来查看十分重要的user表的结构吧。这样子的话,会方便大家查询相关的内容。现在我们就可以开始查看它的权限设置了。接着我们继续使用以下这一个命令行:select host,user,password,delete_priv,update_priv,drop_priv from user;我们使用这一个命令行查看了几个相对来说较为危险的权限,最终得出来结果,如下图:

最终得出来结果

  第一条编程代码所代表的意思是:在本机里面使用root用密码登陆,这样子的话,就拥有修改记录,删除记录,删除表等等的权限了。好了,大家可以发现这是安全的。

  第二条编程代码所代表的意思是:在任何一台主机里面使用root是不需要密码进行登陆,拥有修改记录,删除记录,删除表等权限。

  第三条编程代码所代表的意思是:在本机里面进行匿名的登陆,就拥有修改记录,删除记录,删除表等权限。

  最后一条编程代码所代表的意思是:可以在任何一台主机里面进行匿名的登陆,但是这样子是没有任何权限的。

  事实胜于雄辩,我们可以得到一个结论,那就是除了第一条编程代码是安全的以外,其余的编程代码通通都是不安全的!第二条小编就不多说,就第三条编程代码而言,就算大家在本地是guest权限,但是依然也可以登陆到mysql数据库,而且还可以拥有全部权限。这样子的话,就可以对数据库为所欲为了。

  2、解决方法

  有人就会问,那有什么解决方法吗?当然有啦,假如说大家并不需要远程维护,那么就将第二条删除掉,编程代码如下:delete from user where host="%" and user="root";当然啦,我们也可以给它加一个较为强壮的密码。将第三条删除掉,编程代码如下:delete from user where host="localhost" and user="";

  小编结语:

  在这篇编程语言中,小编主要是向大家详细分析Mysql与Mssql两者的安全性。至于大家想使用哪一种数据库,就需要根据自己的喜好进行选择哟。课课家教育,你的设计天堂。

赞(17)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程