- If someone changes some setting or configuration on one of your servers, how quickly will you know about it?
- Do you have a list of databases with all their properties?
- When do the SQL Server agent jobs run?
- How would you find out the Edition of each of your SQL Server instances, and the hardware on which it is running?
- Do you know all the SQL Server logins and users with all their permissions?
- If asked to setup a new server, in an identical configuration to an existing server, how quickly could you do it?
Good documentation gives you control over your environment, and is an effective communication tool. A few examples of situations where documentation is important:
- Create baselines – gather performance information from your instance. A baseline can also be an initial configuration of your SQL Server instance installation.
- Comparing different servers – server documentation allows you to enforce standards. If someone sets up a server in a non-standard fashion, or changes some setting, it could cause unexpected behavior and/or performances issues, so you need to know about it (and ideally be alerted to the change)
- Database settings – creating an overview of all the databases with their properties makes it possible to see if the database has grown. Another reason would be to see if there are settings in the databases which are non-standard. For instance, which database run in SIMPLE recovery mode, which databases have a page verification option set to NONE or TORN_PAGE_DETECTION.
- License audits – Documenting your SQL Server editions and hardware will ensure that your organization is always license compliant.
- Security audits – If you work in a bank or other financial institution you are probably familiar with security audits. Can you show the auditor a list of all the people who have access to the database? Has there been any change in the last 6 months? How do you prove you are in control?
- Troubleshooting -the first question you ask in response to a performance issue is often “what changed?” It’s much harder to troubleshoot a performance issue without any server documentation.