SQL Server Registry Hacks Top 10

May 24, 1999

*WARNING* all these tips need edits to be made to the registry. DO NOT TRY THIS ON A LIVE SYSTEM!! ALSO these are 6.5 specific unless otherwise noted.

Unless you now exactly what you are doing these are for info purposes only!

  1. SA Password is stored in the registry. HKLM(or HKCU)\SOFTWARE\MICROSOFT\MSSQLSERVER\SQLEW\REGISTERED SERVERS. Then View / Display Binary data. The password is offset 64 in the data, terminated by 0x00.
  2. Rebuilding the 6.5 registry settings can be done with this command:
    cd \mssql\dll
    ..\binn\setup /t RegistryRebuild = On
  3. Performance Monitor counters not to be found? Check that Administrator has full control of HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer.
  4. Alerts To stop frequent errors firing an alert add the number to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\SQLExecutive\NonAlertableErrors. By default 1204 and 4002 are already there.
  5. Version Using the HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServer\Setup\ProductSuite key you can determine the version of SQL Server you are running.
    SQL Server 6.x standard versions = No entry (There should be NO ProductSuite key)
    SQL 6.5 Enterprise Edition = Enterprise
    Small Business Server = SBS
  6. SQLTrace To allow non administrators to view and save filters grant read access to HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurePipeServers\Winreg
  7. SQL Server Keys the keys SQL Server uses are as follows:
    Generic to all versions:
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSSQLServer
    Specific to 6.0
    • HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSDTC
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SQLExecutive
    Specific to 7.0
    • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SQLServerAgent
    • HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server 7
    • HKEY_LOCAL_MACHINE\Software\Microsoft\MSSQLServ65
  8. SQL Executive has a limit on the number of active SQL Server connections running at any one time. Adding MaxDBProcesses Value Name to:
    The value should be added as a Data Type of REG_DWORD. Possible values are from 10 to 255 (Decimal). The actual number of concurrent tasks allowed will be three less than the number you specify to allow for SQLExecutive overhead.

Copyright ) 1998-99 G.h.van den Berg. All rights reserved.
These pages may not be resold or redistributed without prior written permission from Guy van den Berg