Web渗透技术及实战案例解析
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.14 SQL Server 2005还原数据库攻略

数据库的安全一直是“兵家”必争之地,数据库是企业公司等信息汇集的核心地带,对于这些数据一旦出现事故,其影响是巨大的,尤其是在网络高度发达的今天,一旦某某公司数据库出现问题,网上马上就会出现一些关于某某公司的爆料,不管是玩笑还是恶意,总之数据库的安全不容小视,因此在平时就要做足功课,虽然这个是DBA或者安全管理人员的职责和必杀技,但普通人员也可以了解,毕竟在激烈竞争的今天多掌握一门技能,就多一份成功的希望和保证,下面笔者就在SQL Server 2005中如何还原数据库将进行详细的介绍,并就恢复或者还原数据库中出现的问题进行解决。

1.14.1 SQL Server 2005新特性

Microsoft SQL Server 2005跟Microsoft SQL Server 2000有很大的不同,在界面和功能上面都有很大的改进,它新增了以下九项重要功能。

(1)Notification Services 增强功能

Notification Services 是一种新平台,用于生成发送并接收通知的高伸缩性应用程序。Notification Services 可以把及时的、个性化的消息发送给使用各种各样设备的数以千计乃至以百万计的订阅方。

(2)Reporting Services 增强功能

Reporting Services 是一种基于服务器的新型报表平台,它支持报表创作、分发、管理和最终用户访问。

(3)新增的 Service Broker

Service Broker是一种新技术,用于生成安全、可靠和可伸缩的数据库密集型的应用程序。Service Broker提供应用程序用以传递请求和响应的消息队列。

(4)数据库引擎增强功能

数据库引擎引入了新的可编程性增强功能(如与Microsoft .NET Framework 的集成和Transact-SQL的增强功能)、新XML功能和新数据类型。它还包括对数据库的可伸缩性和可用性的改进。

(5)数据访问接口方面的增强功能

SQL Server 2005提供了Microsoft数据访问(MDAC)和.NET Frameworks SQL客户端提供程序方面的改进,为数据库应用程序的开发人员提供了更好的易用性、更强的控制和更高的工作效率。

(6)Analysis Services的增强功能(SSAS)

Analysis Services引入了新管理工具、集成开发环境以及与.NET Framework的集成。许多新功能扩展了Analysis Services的数据挖掘和分析功能。

(7)Integration Services的增强功能

Integration Services引入了新的可扩展体系结构和新设计器,这种设计器将作业流从数据流中分离出来并且提供了一套丰富的控制流语义。Integration Services还对包的管理和部署进行了改进,同时提供了多项新打包的任务和转换。

(8)复制增强

复制在可管理性、可用性、可编程性、移动性、可伸缩性和性能方面提供了改进。

(9)工具和实用工具增强功能

SQL Server 2005引入了管理和开发工具的集成套件,改进了对大规模SQL Server系统的易用性、可管理性和操作支持。

Microsoft SQL Server 2005与Microsoft SQL Server 2000在使用细节上有很多不同,习惯使用Microsoft SQL Server 2000的朋友更换到Microsoft SQL Server 2005后,会惊叹怎么会是这样!的却在使用上面很有多细节的变化,笔者列举几个:

(1)操作方式不同

在Microsoft SQL Server 2005中是通过“SQL Server Management Studio”来管理数据库的,因此通过“开始”-“程序”-“Microsoft SQL Server 2005”-“SQL Server Management Studio”打开数据库管理综合控制台。

(2)提供的服务增多

通过服务管理器可以看到在Microsoft SQL Server 2005 中增加了很多新的服务,例如“SQL Server Directory Helper”、“SQL Server Browser”、“SQL Server Vss Writer”和“SQL Server Integration Services”,如图1-107所示。

图1-107 Microsoft SQL Server 2005新增加的一些服务

(3)管理控制台操作界面改动较大

在Microsoft SQL Server 2005中数据查询整合到一起了,以前通过查询分析器来进行查询的操作,现在直接整合在数据库管理中了,比以前方便快捷。

(4)其他一些改进

在功能上改进较多,这个就要自己去体会,当然微软每一次的改进都是以升级硬件为代价,普通个人计算机跑Microsoft SQL Server 2005后性能和速度会下降不少,如果是为了测试和体验,可以在安装完成后将有关Microsoft SQL Server 2005的所有服务都变成手动,在使用时启动即可。

有兴趣的朋友可以有针对性地去体验上面新增的9大功能和一些细节上面的东西,在数据库操作中非常重要的一个操作就是备份与还原,对于在SQL Server 2000中的还原数据库,很多朋友都是使用过的,用起来非常简单,选择文件后,选择强制还原,问题即可解决,然而在2005中却不行了,下面就介绍如何具体来还原一个备份的数据库。

1.14.2 还原备份数据库

备份数据库的理由很多,有的是为了防止出现意外,有的是开发需要,有的是入侵后将数据库还原打包,所有的备份的目的都是一个为了在需要的时候还原。恢复数据库的前提是在本机搭建了Microsoft SQL Server 2005数据库平台也即安装了能够使用的Microsoft SQL Server 2005数据库,且已经将备份文件放置在本地计算机上。下面就是具体的恢复过程。

(1)连接数据库引擎

第一次打开“SQL Server Management Studio”时会自动弹出一个连接到服务器的对话框,如图1-108所示,在服务器类型和服务器名称以及身份验证中选择默认即可。如果已经打开“SQL Server Management Studio”,则可以单击菜单工具栏上的“文件”-“连接对象资源管理器”打开“连接到服务器”对话框。最后单击连接,连接成功后出现“SQL Server Management Studio”控制台,如图1-109所示。

图1-108 连接到服务器

(2)还原数据库操作

在SQL Server Management Studio控制台下选中“数据库”或者系统数据库,然后右键单击在弹出的菜单中选择“还原数据库”,如图1-110所示,打开一个还原数据库窗口,在该窗口中需要设定“目标数据库”,可以手工输入目标数据库的名称,也可以单击“目标数据库”中的下列列表,从存在的数据库中选择目标数据库;另外一个需要指定的是用于还原的备份集和位置,主要有两个,一个是源数据库,另外一个是源设备,对于数据库在线还原,就选择“源数据”,对于从物理文件还原,则选择“源设备”。

图1-109 SQL Server Management Studio控制台

图1-110 还原数据库设定

(3)添加备份文件的位置。选择“源设备”,点击文本框右边的按钮“...”,在弹出的“指定备份”对话框中来添加备份的位置,如图1-111所示。

图1-111 指定备份位置

(4)定位备份文件

在“指定备份”对话框中单击“添加”按钮,接着会弹出“定位备份文件”对话框,默认情况下Microsoft SQL Server 2005会直接定位到其安装目录下的“MSSQL.1/ MSSQL/Backup”目录,如图1-112所示,默认情况显示“*.bak”和“*.trn”两种备份文件。

图1-112 定位备份文件

本例中在文件类型中选择“所有文件”,然后就会显示在该目录下的所有备份文件,如图1-113所示,然后选择一个需要备份的文件即可,本例中选择“uniport”数据库。

图1-113 选择欲还原的备份数据库文件

技巧:

可以将所有备份文件都复制到“C:\Program Files\Microsoft SQL Server\ MSSQL.1\MSSQL\Backup”目录下,这样选择起来比较方便。

单击“确定”按钮完成文件的选择,回到“指定备份”对话框中,如图1-114所示,然后单击“确定”按钮完成备份文件的选择。

图1-114 完成指定备份文件的选择

(5)完成“还原的目标”和“还原的源”的设定

在图1-115所示的对话框中选中列表中需要还原的文件,在“还原的目标”中输入“uniport”,表示还原后的数据库名称是“uniport”,然后单击确定按钮开始还原数据库,如图1-116所示。

图1-115 完成“还原的目标”和“还原的源”的设定

图1-116 还原数据库

(6)对还原出现错误的处理

在进行还原数据库操作的朋友可能还会遇到即使按照上面的步骤也无法还原数据库的情况,其实很简单,如图1-117所示,弹出错误提示,表示目录不存在,即在E盘未建立相应的文件夹。

图1-117 还原数据库出现错误

解决办法很简单,按照“E:\Program Files\Microsoft SQL Server\MSSQL\Data”路径的顺序,分别在E盘根目录下建立“Program Files”文件夹,然后在“Program Files”文件夹下建立“Microsoft SQL Server”文件夹,在“Microsoft SQL Server文件夹”下建立“MSSQL”,在“MSSQL”下建立“Data”文件夹,建立完毕后如图1-118所示,最后按照前面的步骤重新选择即可完成数据库的还原。在SQL Server2005中还原出现如图1-117所示的错误直接建立相应的文件夹即可解决,这对于大的数据库(超过1GB)还原无疑是一种福音,笔者以前曾经在SQL Server 2000中探讨过如何恢复一些较难恢复的数据库,即只有一个备份的数据库无任何其他信息,当时是通过UE直接打开数据库文件从中寻找数据库的详细路径,当数据库文件过大时,使用UE打开,计算机会宕机。在SQL Server 2005中得到了完美的解决,数据库自动提示哪里出现问题。

图1-118 建立相应的文件夹