Registrations are now open. Join us today!
There is still a lot of work to do on the wiki yet! More information about editing can be found here.
Already have an account?

Microsoft KB Archive/172389

From BetaArchive Wiki
Knowledge Base

INF: Restrictions on the Use of Xp_sqlinventory

Article ID: 172389

Article Last Modified on 10/16/2003


  • Microsoft SQL Server 6.5 Standard Edition

This article was previously published under Q172389


SQL Server 6.5 includes the xp_sqlinventory extended stored procedure to capture SQL Server configuration and inventory information, and store it in a specified database and table. This article documents some restrictions on the use of xp_sqlinventory.


When SQL Server starts, the sp_sqlregister stored procedure is run. This procedure calls the xp_sqlregister extended stored procedure, which gathers basic configuration information from the operating system, network, and SQL Server, and then broadcasts the SQL Server's presence to every computer on the domain by means of mailslot. Any server executing xp_sqlinventory can collect the information and store it into a table.

The sp_sqlregister stored procedure is installed as a default startup procedure. If desired, you can run the sp_unmakestartup stored procedure to remove sp_sqlregister as a startup stored procedure. To mark sp_sqlregister as a startup procedure, use sp_makestartup. For further information, refer to the Microsoft SQL Server Books Online.

The one restriction noted in the printed and online documentation is that SQL Servers running under the Local System account will not be included in the inventory list. To be recorded, SQL Servers must be started under a domain user account. In addition, only those servers that have started since xp_sqlinventory was first invoked will be recorded. When xp_sqlinventory is first invoked, it does not record every server currently running in the domain. To record information from all servers in the domain, either each SQL Server must be restarted while xp_sqlinventory is running, or xp_sqlregister must be run by an operator on each server.

If the default Net-Library is not set to named pipes on the server, xp_sqlregister may fail to connect to the server at startup, giving an "Unable to connect" message. For more information, see the following article in the Microsoft Knowledge Base:

167352 : BUG: "Unable to Connect" Msg May Occur in Application Event Log

Because xp_sqlregister is broadcasting to a mailslot, all servers on which inventory information is to be gathered must be on the same network segment, because routers may filter out the broadcasts. To work around this restriction, set up one server in each segment to capture the broadcasts and publish them to a central subscription server.

Additional query words: netlib net-lib lib net machine

Keywords: kbhowto kbinfo kbusage KB172389