Is there an easy way to get all the server meta data (memory, security, sp_configure, etC) from an instance that you can use to compare with a second instance, or use to set another instance to have the same configuration?
Is there an easy way to get all the server meta data (memory, security, sp_configure, etC) from an instance that you can use to compare with a second instance, or use to set another instance to have the same configuration?
I'd work on a set of PowerShell scripts that collect the info you want. For example:
(get-item SQLSERVER:\SQL\ROB-PC\SQL2008).Information
gives me lots of useful information. I can also get lots of other information, easily dump it to files, and compare them as required. Being PowerShell, I can easily do this across many servers.
I'd prefer Rob's approach and wouldn't mind seeing a good PowerShell script that does exactly what he described, there is an approach you could take in TSQL.
sp_configure is a built in system function that will allow you to display, or change, system settings. To see the basic listing you can run a query like this:
EXEC sp_configure;
That will show most of what you're interested in on a day to day basis. However, to get a complete listing, you need to show all the advanced settings. From the books online, run the script this way:
USE master; GO EXEC sp_configure 'show advanced option', '1'; RECONFIGURE; EXEC sp_configure;
That will show you everything. You can then output to a file or load it to a table in order to run comparisons on other data sets from other servers.
Another way is to use System Catalog Views. However these views are present in every database, they provide metadata information not just about the database but the server core. These views are organized into several categories (server-wide configuration, security, objects, ..).
More information about these views can be found in Books Online on MSDN
Check out Allen White's article on inventorying SQL Servers with PowerShell. http://www.simple-talk.com/sql/database-administration/let-powershell-do-an-inventory-of-your-servers/
4 People are following this question.