Hi,
I know there are many articles and posts about this topic, but please don't flame me, because I think I have read and tried almost all of them over the past 3 days. There must be something else going on here. What am I missing? This should work.
The server is Windows Server 2003, protected by a SonicWall security device. The server has SQL Server2005 installed as the default instance. I use SQL Server 2008 R2 Management Studio (SSMS) on my Dev machine (Windows 7 Pro SP1) to connect to the server default database remotely.
I needed to install a SQL Server 2008 database on the server. Rather than upgrade the server to SQL Server 2008 R2, I instead installed a named instance on the server - MYSERVER\SQLSERVER2008. (This approach worked well on Dev.)
It is worth noting that although both SQL Server instances were installed from MSDN disks, 2005 was installed as Enterprise Edition and 2008 R2 was installed as Developer Edition. The MSDN website says the Developer Edition has the same feature set as the DataCenter edition, so I don't think that is an issue, but who knows? (This is a test server, not production.)
However I am unable to remotely connect SSMS to the named instance using the sa username and password. I have confirmed this works locally, so I am confident the password is correct.
Here are all the things I have tried, based on the aforementioned trove of postings:
- Run Windows Update
- Open port 1434 on the SonicWall firewall (as well as port 1433, which was already opened).
- Configure the sql server instance to allow remote connections.
- Verify SQL Browser service running on the server
- In SQL Server Configuration Manager, enable both TCP/IP and Named Pipes under "Protocols for SQLSERVER2008".
- Also in SQL Service Configuration Manager, verify both TCP/IP and Named Pipes enabled under Client Protocols.
- Add to server Windows Firewall both TCP & UDP Ports 1434, as well as TCP port 1433, plus sqlbrowser.exe from a previous version of SQL Server (90 - it was not present in the current version)
- Temporarily add "File and Printer Sharing" to server firewall (made no difference, so removed it)
- Try both single and double backslash in the instance name
- Tried "sqlcmd -L" from a local command prompt and the returned list includes MYSERVER\SQLSERVER2008, so it is at least seeing it.
- Temporarily start "SQL Server Agent (SQLSERVER2008)" service (made no difference, so I turned it back off)
Before opening port 1434 on the SonicWall, the error msg was "...(provider: SQL Network Interfaces, error 26: Error Locating Server/Instance specified)".
After opening port 1434 on the SonicWall, the error msg changed to: "... (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)(Microsoft SQL Server, Error: 53)". That is progress. I now think at least it is getting to the server.
Just as a test, I temporarily turned off the firewalls on both my client machine and the server. However, that did not change anything - still got the 40 & 53 error. So it does not look like either machine firewall is blocking anything.
Should I just uninstall everything and install a single default instance of SQL Server 2008 R2? if I do this, can I still access and work with the old databases made with the previous version?
Any suggestions would be much appreciated.
Thanks.
--Dan
Dan Hurwitz