For DBAs managing multiple SQL Server instances, SSMS 2008's default behavior of requiring manual connection for every session creates significant productivity overhead. Unlike SQL 2000 Enterprise Manager's server registration feature, SSMS 2008 inherits Query Analyzer's connection model - requiring authentication for each instance every time.
SSMS actually includes the server registration capability through its Registered Servers pane (View → Registered Servers or Ctrl+Alt+G). Here's how to configure it:
-- Sample T-SQL to verify connections (can be saved as startup script)
SELECT @@SERVERNAME AS 'Instance Name',
GETDATE() AS 'Connection Time',
DB_NAME() AS 'Current Database'
GO
1. Create Server Groups:
Right-click Local Server Groups → New Server Group → Create logical groupings (e.g., "Production", "Development")
2. Register Each Instance:
Right-click group → New Server Registration → Enter:
- Server name (including instance: SERVER\INSTANCE)
- Authentication type
- Optional connection properties
3. Configure Auto-Connect (Optional):
For each registered server, right-click → Properties → Connection → Check "Connect automatically when the server is selected"
To make registered servers available to all SSMS installations:
-- Export registered servers (run in command prompt)
reg export "HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\100\Tools\Shell\RegSrvr" "C:\reg_servers.reg"
-- Import on target machines
reg import "C:\reg_servers.reg"
Create a PowerShell script to automate connections:
# SSMS_AutoConnect.ps1
$servers = @("Server1\Instance1","Server2\Instance2","Server3\Instance3")
foreach ($srv in $servers) {
& "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe" "-S $srv"
}
When maintaining multiple simultaneous connections:
- Monitor memory usage (each connection consumes ~20MB)
- Set connection timeout to 10-15 seconds in Tools → Options → Environment → Keyboard → Query Execution
- Consider using Central Management Server for large environments
Many DBAs transitioning from SQL Server 2000 Enterprise Manager to SSMS 2008 face the frustration of losing the convenient server registration functionality. While SSMS combines Enterprise Manager and Query Analyzer capabilities, its connection workflow defaults to Query Analyzer's behavior - requiring manual connection each session.
SSMS actually includes the server registration feature through its "Registered Servers" component:
-- Sample T-SQL to create server registration (for documentation)
-- This isn't executable code but represents what happens behind the scenes
EXEC sp_addlinkedserver
@server = 'MyInstance1',
@provider = 'SQLNCLI',
@srvproduct = 'SQL Server',
@datasrc = 'SERVERNAME\INSTANCE1';
- Open SSMS and view the "Registered Servers" window (View → Registered Servers)
- Right-click "Local Server Groups" → New → Server Registration
- Enter connection details for your first instance
- Check "Remember password" if desired
- Repeat for additional instances
For advanced users, you can create a PowerShell script to automate this:
# PowerShell script to register SQL instances
$servers = @(
@{Name="ProdInstance"; Server="DBSERVER\PROD"},
@{Name="DevInstance"; Server="DBSERVER\DEV"},
@{Name="TestInstance"; Server="DBSERVER\TEST"}
)
foreach ($server in $servers) {
$regPath = "SQLSERVER:\SQLRegistration\Database Engine Server Group\$($server.Name)"
New-Item -Path $regPath -ItemType "Server" -Value $server.Server
}
Save your configured environment including registered servers:
- Arrange your preferred SSMS layout
- Go to Tools → Options → Environment → Startup
- Set "At startup" to "Open Object Explorer"
- Use Window → Save Window Layout to preserve your setup
Create desktop shortcuts for direct connections:
"C:\Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe" -S SERVERNAME\INSTANCE1 -E
"C:\Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe" -S SERVERNAME\INSTANCE2 -U username -P password
- Permissions: Ensure your account has proper access to all instances
- Firewall: Verify TCP port 1433 (or custom ports) are open
- SQL Browser: Required for named instance discovery