Microsoft KB Archive/926929

From BetaArchive Wiki
< Microsoft KB Archive
Revision as of 17:33, 18 July 2020 by 3155ffGd (talk | contribs) (importing KB archive)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Knowledge Base


You cannot connect to a named instance of SQL Server 2000 by using the shared memory protocol after you remove the default instance

Article ID: 926929

Article Last Modified on 11/2/2007



APPLIES TO

  • Microsoft SQL Server 2000 Developer Edition
  • Microsoft SQL Server 2000 Enterprise Edition
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2000 Personal Edition



SQL Bug #: 444012 (SQLBUDT)

Important This article contains information about how to modify the registry. Make sure to back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows registry


SYMPTOMS

Consider the following scenario. You are running Microsoft SQL Server 2000 as a default instance and as a named instance. You connect to SQL Server 2000 by using the shared memory protocol. You uninstall the default instance of SQL Server 2000. In this scenario, you cannot use local client applications to connect to the named instance. Additionally, you may receive an error message when you try to connect by using Microsoft SQL Native Client or Microsoft Visual Studio 2005.

When you try to connect to the named instance by using SQL Native Client, you receive the following error message:

[SQL Native Client]Shared Memory Provider: Shared memory connectivity to SQL Server 2000 is either disabled or not available on this machine [87].
[SQL Native Client]Login timeout expired
[SQL Native Client]An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections.

When you try to connect to the named instance by using Visual Studio 2005, you receive the following error message:

An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified) (Microsoft SQL Server, Error: -1)

CAUSE

This problem occurs because the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SharedMemoryOn registry subkey is removed when you uninstall the default instance of SQL Server 2000.

WORKAROUND

Warning Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall your operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk.

To work around this problem, use one of the following methods:

  • Use the Cliconfg.exe utility to re-enable the shared memory protocol. Alternatively, create the following HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SharedMemoryOn registry subkey. Follow these steps, and then quit Registry Editor:
    1. Click Start, click Run, type regedit, and then click OK.
    2. Locate and then click the following key in the registry:

      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client

    3. On the Edit menu, point to New, and then click DWORD Value.
    4. Type SharedMemoryOn, and then press ENTER.
    5. On the Edit menu, click Modify.
    6. Type 1, and then click OK.
  • Use the TCP/IP protocol or the Named Pipes protocol to connect to the named instance.


STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

Keywords: kbtshoot kbprb KB926929