本主题包括下列信息:
配置数据库是用于配置 IIS 的配置信息和架构的分层存储。IIS 4.0 和 IIS 5.0 的配置数据库配置和架构存储在二进制文件中,不便于读取或编辑。IIS 6.0 将单个二进制文件 (MetaBase.bin) 替换为可扩展标记语言 (XML) 格式的纯文本文件(MetaBase.xml 和 MBSchema.xml)。这些文件存储在计算机的 systemroot\System32\Inetsrv 文件夹中。只有 Administrators 组中的成员用户才可以查看和修改这些文件。稍后将在本主题中讨论 XML 格式的纯文本配置数据库文件的优点。
实际上,配置数据库是指 MetaBase.xml 与 MBSchema.xml 文件的组合以及驻留内存的配置数据库。IIS 配置信息存储在 MetaBase.xml 文件中,而配置数据库架构存储在 MBSchema.xml 文件中。当启动 IIS 时,这些文件会由存储层读取,然后通过管理基本对象 (ABO) 写入到内存中的配置数据库中,如下图所示。
配置数据库的配置和架构存储在内存中的配置数据库的不同节点中。内存中的配置数据库本身驻留在计算机的随机存取存储器 (RAM) 中的 IIS 文件缓存中。有关启动或重新启动 IIS 的信息,请参阅启动 IIS。当 IIS 正在运行时,对内存中的配置数据库进行的更改会定期保存到磁盘中。在 IIS 停止时,内存中的配置数据库也保存到磁盘中。有关停止 IIS 的信息,请参阅停止 IIS。
XML 格式的纯文本配置数据库文件具有下列优点:
要点 不支持直接编辑 MBSchema.xml 文件。必须使用 Active Directory 服务界面 (ADSI) 或在编译的 C++ 程序中使用 ABO 来以编程方式更改配置数据库的架构。
当启动或重新启动 IIS 时,存储在 MetaBase.xml 中的配置数据库配置和存储在 MBSchema.xml 中的架构信息会由存储层读取,然后通过 ABO 写入到内存中的配置数据库中,如本页顶部的插图所示。
管理员可在 IIS 停止运行时修改 MBSchema.xml 文件,但只能使用编程接口进行修改。不支持使用文本编辑器直接编辑 MBSchema.xml 文件。有关修改 MBSchema.xml 文件的信息,请参阅扩展配置数据库架构。
当 IIS 启动时,配置数据库存储层从 MetaBase.xml 和 MBSchema.xml 文件读取所有信息,并通过 ABO 将这些信息复制到内存中的配置数据库中。
如果启动或重新启动 IIS 时不能分析 MetaBase.xml 文件,则将发生下列情况:
MetaBase.xml 无法正确分析的原因包括(但不限于)XML 标志丢失、属性名拼写错误或者 MetaBase.xml 文件损坏。在尝试确定失败原因时,管理员可使用最近的历史文件来确定 MetaBase.xml 文件中的内容更改。如果不能分析配置数据库,还可以使用上次的手动备份或自动生成的历史文件将其还原到以前的版本。有关详细信息,请参阅备份和还原配置数据库。
当 IIS 停止时,它会检查并确定自上次将内存中的配置数据库写入磁盘以来,内存中的配置数据库的配置节点或架构节点是否已经发生更改。配置节点包含了配置数据库配置,该配置存储在 MetaBase.xml 文件中。架构节点包含了配置数据库架构,该架构存储在 MBSchema.xml 文件中。
为了最大限度地减少停止 IIS 所需的时间,如果内存中的配置数据库的配置节点尚未更改,就不会将 MetaBase.xml 文件写入磁盘中。如果内存中的配置数据库的配置节点自上次将内存中的配置数据库保存到磁盘以来已经更改,将使用配置节点的内容覆盖 MetaBase.xml 文件,并创建一个按下列格式命名的新历史文件。
MetaBase_<majorversion>_<minorversion>.xml
其中,<majorversion> 设置为下一个可用的主要版本号,<minorversion> 设置为零。
为了最大限度地减少停止 IIS 所需的时间,如果内存中的配置数据库的架构节点尚未更改,就不会将 MBSchema.xml 文件写入磁盘中。如果内存中的架构的架构节点自上次将内存中的配置数据库保存到磁盘以来已经更改,将使用架构节点的内容覆盖 MBSchema.xml 文件,并创建一个按下列格式命名的新历史文件。
MBSchema_<majorversion>_<minorversion>.xml
其中,主要版本号和次要版本号与
MetaBase_<majorversion>_<minorversion>.xml
历史文件相同。
配置数据库包括下列功能:
相关主题
© 1997-2003 Microsoft Corporation。保留所有权利。