即使你不是Web管理员,了解如何做IIS备份也很重要。微软服务器产品,如Exchange Server、SharePoint,都是运行在互联网信息服务(IIS)之上的。许多第三方厂商也将IIS作为Web接口。因此,备份系统管理员需要了解如何保护IIS以及如何在遇到故障时恢复所有或部分主机站点。
IIS备份:你需要备份什么?
要保护IIS,需要备份三个主要组件。首先,你需要备份网站的基本代码,就是用户访问的Web服务器上的HTML、ASP或其他语言的代码。
其次是备份IIS配置。在IIS 6中,配置信息存放在metabase。在IIS 7中,微软改用XML的格式存放IIS配置信息。我将在后面讨论XML配置文件。
第三是备份数据库。不是所有网站都使用数据库,但大部分网站都使用后端数据库存放不同类型的数据。所以要保护IIS,了解哪些站点使用数据库以及数据库的位置是很重要的。
保护Web站点文件
不必为了保护组成网站的各类文件而太过担心。通常,每个基于IIS服务器的主机站点会被配置为将站点的文件存储在服务器硬盘里的一个专用文件夹里。HTML文件、ASP.net文件和其他网站使用的组件是相对静态的。因此,文件级的备份对于备份网站代码来说通常是足够的。
保护数据库
不是所有网站都使用后端数据库,但基于IIS并且使用数据库的站点通常使用微软SQL Server。如果你的IIS服务器包含一个SQL Server,或者它连接到一个后端专用的SQL Server数据库,你可以像备份任意SQL数据库那样来备份你的数据库。Windows Server Backup支持创建SQL Server的VSS备份,就像大部分第三方备份软件所能做到的那样。
保护IIS配置
正如你所看到的,保护网站文件和任何后端数据库都非常简单。而要保护IIS 7的配置,你需要熟悉基本的配置架构。有三个重要文件用于存放IIS配置信息:
●ApplicationHost.config存放网站和Web应用的设置信息。
●Administration.config存放IIS管理设置。这个文件包含一个IIS Manager使用的管理模块列表和一些模块的特殊设置。
●Redirection.config被设计用于在多IIS服务器的环境中保持IIS配置设置一致。这个文件会告诉IIS集中的配置文件的位置。
这些配置文件存放在服务器的\Windows\System32\inetsrv\config文件夹。因为所有的配置文件都是基于XML的,所以在备份IIS配置时不会有任何特殊的注意事项,你只需备份这个文件夹和所有子文件夹即可。
值得一提的是,IIS允许你单独创建配置备份,不需要依赖其他备份软件。这个备份基于一个叫做Appcmd的内置工具。你可以在服务器的\Windows\System32\inetsrv文件夹找到Appcmd。如果你想使用Appcmd来备份你的配置,只需要到\Windows\System32\inetsrv文件夹去运行下面这条命令:
Appcmd add backup “<your backup name>”
如果你想从备份中恢复,你需要使用下面这条命令:
Appcmd restore backup “<your backup name>”
同样值得一提的是,IIS 7会自动创建一些备份,IIS每两分钟会检查配置是否已经被修改。如果配置已经被修改,则IIS会创建一个新配置的快照。IIS存放最多10个配置快照,这样就可以在需要时将服务器恢复到之前的配置。
所有的配置快照都存放在\Windows\System32\Inetpub\history文件夹。如果你想利用快照还原,只需要到你想还原的快照所在的子文件夹,然后将ApplicationHost.config文件从快照所在的文件夹(名字是cfgHistory_NNNNNNNN)拷贝到\Windows\System32\inetsrv\config文件夹。
结论
IIS备份相对其他应用程序来说相对简单。不过,你依然需要确保完整的备份网站文件,如网站文件,配置数据和网站使用的后端数据库。