June 10, 2010 at 6:41 am
Nice process. Would you happen to know how to either automatically populate the batch file with a listing of server names instead of manually (we have close to 200 servers and the list changes frequently) or have the batch file written to draw from another file which contains the list of servers (txt, csv, etc. format)?
Thanks,
Android
June 10, 2010 at 7:39 am
There is no information of hard disk size in this command.
Is there any other o/s command which can give you the current hard disk sizes?
_________
Regards,
Ashish
June 10, 2010 at 7:43 am
I like the concept, I played with it and had good results in general. One thing to be aware of, is that this approach does not work in all environments. RPC has to be available for this to function.
So, if you are in a "hardened" environment for security where the port are not available, the service is shut off, or any number of things like that, the script will fail generating a simple error message.
So, while this is a great and simple solution, it has it limitations-only worked on a subset of the servers I deal with.
June 10, 2010 at 7:47 am
@andriod,
Try "sqlcmd -L" on the command prompt and check whether it helps you.
Regards,
Raj
June 10, 2010 at 7:53 am
Great tip to get a quick inventory!
I wrote a similar blog post about using a free tool called SYDI that uses WMI to gather system information and query\persist it in SQL 2005: http://kendalvandyke.blogspot.com/2008/06/network-documentation-with-sql-2005-and.html. It gathers more information than systeminfo does but it's also slightly more complecated to implement. 🙂
June 10, 2010 at 8:19 am
Thanks - this was an informative and useful article.
Jason...AKA CirqueDeSQLeil
_______________________________________________
I have given a name to my pain...MCM SQL Server, MVP
SQL RNNR
Posting Performance Based Questions - Gail Shaw[/url]
Learn Extended Events
June 10, 2010 at 8:20 am
Super tip! Very nice.
I tried a variation (all sql hosts are already in a table): Open a cursor to select servername, then set a command to pull system info by servername, and execute it using xp_cmdshell @cmd,NO_OUTPUT. This can be written as a stored proc and then scheduled to run at will with a SQL Agent job.
June 10, 2010 at 8:38 am
Excellent info and tool Stanley. Tried now and it took less that 25 minutes to get info for 162 servers.
Good thing is this tool generates the kind info which is very hard to get out of server from one place.
Thanks again.
SQL DBA.
June 10, 2010 at 10:59 am
Very good article.
I have wrote a batche file to create one csv file for all servers by using dsquery in conjunction with sysinfo.
However, there is a bug with sysinfo with XP SP3. If running sysinfo with the csv output enabled, from an XP SP3 computer, then copy sysinfo.exe from a server (W2K3 server for example).
example batch file - You will need to change the dsquery line to match the ou and domain that your servers are in. The csv file created is in c:\serverresults.csv:
@echo off
SET MYCOUNT = 0
dsquery computer ou=Servers,dc=MyDomain,dc=com > %TEMP%\Serverlist.txt
IF EXIST c:\serverresults.csv DEL c:\serverresults.csv
FOR /F "tokens=2 delims==," %%i in (%TEMP%\serverlist.txt) do call :GETINFO %%i
GOTO :FINISH
:GETINFO
SET SERVERNAME=%1
SET /A MYCOUNT=%MYCOUNT% + 1
IF "%MYCOUNT%" == "1" (
systeminfo /s %SERVERNAME% /FO CSV >> c:\serverresults.csv
) ELSE (
systeminfo /s %SERVERNAME% /FO CSV /NH >> c:\serverresults.csv
)
GOTO :EOF
:FINISH
June 10, 2010 at 11:51 am
Now that we know how to capture these info, including SQL info. Let's store it in SQL DB instead. What's the best SQL DB Schema if you want to store your SQL Servers and Databases when they're in this environment:
- SQL clustering
- Stand Alone
- VMs
(with multiple SQL instances)
Has anyone come up with a good way to store them in a many-to-many relationship?
June 10, 2010 at 3:00 pm
Phil Factor (6/10/2010)
This would be handy for a DBA if all the servers are in the domain, but rather than make a batch file with a list of all your servers by hand, you could get the list of all your registered SQL servers very easily from SMO, and, whilst you're doing it, collect as much SQL Server information as you want about them to combine with the systeminfo info.
Hi Phil... have you got a link for the method you mention above?
--Jeff Moden
Change is inevitable... Change for the better is not.
June 10, 2010 at 3:22 pm
Hi Phil... have you got a link for the method you mention above?
I use something similar myself. It is simple stuff. If you're interested I'll tidy it up as soon as I get a moment (Error handling? What error handling?) and send it to you. few of the servers I maintain are in the domain so I use a slightly more roundabout route....
Best wishes,
Phil Factor
June 10, 2010 at 3:51 pm
Phil Factor (6/10/2010)
Hi Phil... have you got a link for the method you mention above?
I use something similar myself. It is simple stuff. If you're interested I'll tidy it up as soon as I get a moment (Error handling? What error handling?) and send it to you. few of the servers I maintain are in the domain so I use a slightly more roundabout route....
I am also interested in your approach. It would be nice if you can post it here
_________
Regards,
Ashish
June 10, 2010 at 4:27 pm
If you want to use Powershell here, I found a cool script from SQL Chicken: http://sqlchicken.com/2010/06/powershell-i-heart-you/
June 10, 2010 at 8:39 pm
Phil Factor (6/10/2010)
Hi Phil... have you got a link for the method you mention above?
I use something similar myself. It is simple stuff. If you're interested I'll tidy it up as soon as I get a moment (Error handling? What error handling?) and send it to you. few of the servers I maintain are in the domain so I use a slightly more roundabout route....
Very cool. Thanks, Phil. Hmmmm.... "error handling". I guess I'm going to have to look up the word "error" and find out what it actually means. 😛
--Jeff Moden
Change is inevitable... Change for the better is not.
Viewing 15 posts - 16 through 30 (of 44 total)
You must be logged in to reply to this topic. Login to reply