У меня есть две установки SQL на двух отдельных ящиках (у меня есть эти "унаследованные").
А SQL 2005 Installation
, с экземпляром, называемым SQL2005
- Я подключаюсь к этому через SQL Studio Manager, и когда я подключаюсь к Servername, я помещаю: SERVERNAME\SQL2005
А SQL 2008 Installation
, теперь, когда я захожу в Studio Manager, он напрямую подключается к серверу, просто набирая SERVERNAME
без указания \INSTANCE
. Однако, просматривая services.msc, кажется, что экземпляр MSSQLSERVER
.
Как именно это работает? Я всегда думал, что нужно подключаться напрямую к экземпляру. Например, на коробке 2005 года я не могу подключиться только к SERVERNAME
Мне нужно указать экземпляр, но в коробке 2008 я могу подключиться только SERVERNAME
, и если я укажу \MSSQLSERVER
в качестве примера он не может подключиться.
Любые идеи?
Вы видите, что SQL Server 2008 был установлен как «экземпляр по умолчанию». Экземпляр по умолчанию получает имя «MSSQLSERVER», но к нему нельзя получить доступ, используя это имя экземпляра (это по замыслу и может немного сбивать с толку - я считаю, что это артефакт версий SQL Server до 2000, которые не поддерживали установку экземпляра).
Ваша установка SQL Server 2005 была выполнена как «именованный экземпляр» под названием «SQL2005». Как вы видели, необходимо указать имя экземпляра при подключении к нему.
Вы можете получить дополнительную информацию от Microsoft по адресу: Конфигурация экземпляра
MSSQLSERVER - это имя экземпляра по умолчанию, поэтому вам не нужно указывать имя в этом случае. Это также обрабатывается несколько иначе: MSSQL Server различает «Именованные экземпляры» (например, SQL2005) и «экземпляр по умолчанию». Скорее всего, у вас возникли проблемы с подключением, потому что «MSSQLSERVER» не является именованным экземпляром, но вы пытаетесь подключиться, как если бы он был.
И экземпляр по умолчанию, и именованные экземпляры имеют идентификатор экземпляра. Идентификатор экземпляра находится в именах папок, именах разделов реестра и отображаемых именах служб. Для экземпляра по умолчанию идентификатор экземпляра всегда "MSSQLSERVER"; для именованного экземпляра идентификатор экземпляра - это имя именованного экземпляра.
Таким образом, экземпляр по умолчанию, вероятно, находится в C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER
и ваш именованный экземпляр, вероятно, находится в C:\Program Files\Microsoft SQL Server\MSSQL.SQL2005
.