I get a lot of email from readers asking various questions about IIS. Some readers come to the list hoping to learn about IIS out of the box. Some subscribe to find out about new technology. Whatever the case, although we're all at different skill levels, a common thread exists: We want to learn more, no matter how much we already know. Such was the case for me last week.
A friend who supports a large group of developers routinely registers DLLs on an IIS 4.0 server. He's not a programmer by nature, but he frequently accepts DLLs from his developers and places them on development and staging servers for compatibility testing before they go into production. Registering a DLL means that you enter the name of the DLL into the system registry, which tells the server that you have an application that might call on the components in that DLL. This registration lets Web-based applications call DLLs behind the scenes.
My friend performs this task regularly on the half-dozen IIS servers under his care. He's well versed in IIS and in the regsvr32.exe command, which you use to register DLLs. Well, just as sure as a top-ranked college football team can lose on any given Saturday, sooner or later, something's going to go wrong with your Web server. This week, it did.
My friend called me in a panic. We started walking through some recent events and the usual questions. IIS Web sites wouldn't start, but the services were already started. I got around to asking questions about the metabase. The phone got quiet. "What metabase?" my friend asked. My first reaction was shock—not because he didn't know about the metabase, but because I knew the task ahead wouldn't be pretty. So you won't have to learn about the metabase the hard way, I'm going to tell you how it works and show you how to back it up.
With the release of IIS 4.0, Microsoft decided to move certain IIS administrative settings out of the registry into something smaller and faster—the metabase. The metabase exists in file metabase.bin and loads into memory with IIS. You can find metabase.bin under \winnt\system32\inetsrv. The metabase stores IIS configuration settings such as Web and FTP site properties, log settings, filter settings, and Secure Sockets Layer (SSL) properties.
Before you change IIS-specific settings in the Internet Services Manager (ISM), be sure to back up the metabase. You can back up the metabase by opening the ISM and right-clicking the computer on which you want to create the backup. Select Backup/Restore Configuration. Click Create Backup. Give the backup a short but meaningful name.
The system stores your backup in a subdirectory called MetaBack. The next time your regular tape backup runs and makes a copy of this file, you'll be protected in case of a blown metabase. It sure beats reloading a Web server from scratch on Friday night.