Instance name sql server что это
Перейти к содержимому

Instance name sql server что это

  • автор:

Как узнать имя экземпляра Microsoft SQL Server на T-SQL

Всем привет! Сегодня мы с Вами рассмотрим несколько способов определения имени экземпляра Microsoft SQL Server на языке T-SQL, а также с использованием других программных средств.

Как узнать имя экземпляра Microsoft SQL Server на T-SQL

Способы определения имени экземпляра Microsoft SQL Server

Существует несколько способов узнать, какое имя экземпляра у SQL Server. Мы рассмотрим способы, которые подразумевают обращение к определенным системным функциям на языке T-SQL, а также способ, с помощью которого мы можем узнать имена всех экземпляров SQL Server, которые установлены на конкретном сервере.

Кроме этого я покажу способ определения имени экземпляра SQL Server без выполнения SQL инструкций, например, для случаев, когда нет возможности подключиться к SQL Server. Данный способ предполагает выполнение определённой инструкции на языке PowerShell.

Таким образом, для того чтобы определить имя экземпляра Microsoft SQL Server, Вы можете использовать тот способ, который будет удобнее в Вашем конкретном случае.

Способ 1 – функция @@SERVERNAME

Первый способ предполагает использование системной функции @@SERVERNAME, которая возвращает имя локального сервера, на котором работает SQL Server.

Функция @@SERVERNAME возвращает следующие данные:

Исходные данные Данные, которые возвращает функция
Если используется экземпляр по умолчанию «Имя_сервера»
Если используется именованный экземпляр «Имя_сервера\Имя_экземпляра»
Если используется экземпляр по умолчанию отказоустойчивого кластера «Сетевое_имя_экземпляра_отказоустойчивого_ кластера_windows_server»
Если используется именованный экземпляр отказоустойчивого кластера «Сетевое_имя_экземпляра_отказоустойчивого_ кластера_windows_server\имя_экземпляра»

Пример использования функции

SELECT @@SERVERNAME AS SERVERNAME;

Скриншот 1

В моем случае используется именованный экземпляр Microsoft SQL Server, поэтому функция вернула соответствующие данные, где SQLEXPRESS и есть имя экземпляра SQL Server.

Способ 2 – функция @@SERVICENAME

Второй способ определения имени экземпляра Microsoft SQL Server предполагает использование функции @@SERVICENAME, которая возвращает имя раздела реестра, согласно которому запущен SQL Server.

Если текущий экземпляр является экземпляром по умолчанию, то данная функция возвращает «MSSQLSERVER», однако если же текущий экземпляр является именованным экземпляром, то эта функция возвращает имя этого экземпляра.

Пример использования функции

SELECT @@SERVICENAME AS SERVICENAME;

Скриншот 2

В данном случае, так как у меня именованный экземпляр, функция @@SERVICENAME вернула имя экземпляра.

Способ 3 – функция SERVERPROPERTY

Следующий способ определения имени экземпляра SQL Server предполагает использование системной функции SERVERPROPERTY, которая возвращает много различных сведений о свойствах экземпляра Microsoft SQL Server.

Данная функция принимает один параметр, и если мы передадим значение «InstanceName», то она нам вернет имя экземпляра.

Однако здесь стоит учитывать, что если используется экземпляр по умолчанию, то функция вернет NULL.

Пример использования функции

SELECT SERVERPROPERTY ('InstanceName') AS SERVERPROPERTY;

Скриншот 3

У меня именованный экземпляр, поэтому функция вернула имя экземпляра.

Способ 4 – процедура xp_regread

Если Вам необходимо узнать имена всех экземпляров SQL Server, которые установлены на конкретном сервере, то для этого Вы можете использовать системную хранимую процедуру xp_regread, которая умеет считывать параметры реестра Windows, в котором как раз и можно найти всю интересующую нас информацию об экземплярах Microsoft SQL Server.

Процедура принимает три параметра: в первом мы указываем название раздела реестра, во втором — путь к нужной нам ветке реестра, и третий — параметр, значение которого нам нужно считать.

Пример использования процедуры

DECLARE @SQLServerInstances TABLE( LineNumber NVARCHAR(100), InstanceName NVARCHAR(100), Data NVARCHAR(100) NULL ); INSERT INTO @SQLServerInstances EXECUTE xp_regread @rootkey = 'HKEY_LOCAL_MACHINE', @key = 'SOFTWARE\Microsoft\Microsoft SQL Server', @value_name = 'InstalledInstances'; SELECT LineNumber, InstanceName FROM @SQLServerInstances;

Скриншот 4

У меня установлен только один экземпляр, поэтому инструкция вернула одну строку данных.

Как узнать имя экземпляра Microsoft SQL Server на PowerShell

Способ предполагает простое считывание названия службы Microsoft SQL Server, т.е. мы с помощью определенной инструкции на PowerShell ищем название службы по префиксу «MSSQL$» (данный префикс имеет «Имя службы, а не «Отображаемое имя службы»).

Пример инструкции на PowerShell

Get-WMIObject Win32_Service -Filter «name like ‘MSSQL$%'» | %

Скриншот 5

Кроме этого, узнать имя экземпляра Microsoft SQL Server можно, если зайти в оснастку «Службы» в Windows и посмотреть, какое имя указано в названии службы SQL Server.

Заметка! Всем тем, кто только начинает свое знакомство с языком SQL, рекомендую прочитать книгу «SQL код» – это самоучитель по языку SQL, которую написал я, и в которой я подробно, и в то же время простым языком, рассказываю о языке SQL.

На сегодня это все, надеюсь, материал был Вам полезен, пока!

Создание экземпляра RDS SQL Server

Примечание Если основной и резервный экземпляры БД совпадают в настройке зоны доступности, то они развертываются в одном и том же AZ. Если зоны доступности экземпляров отличаются (по умолчанию), то основной и резервный экземпляры БД развертываются в разных AZ для обеспечения поддержки отказоустойчивости и высокой доступности.

  • High I/O — SAS-диски с максимальной пропускной способностью 150 Мбит/с.
  • Ultra-high I/O — SSD-диски с максимальной пропускной способностью 350 Мбит/с.
  • После включения функции шифрования диска ее невозможно будет отключить, а также изменить ключ шифрования (Key Name). Бэкапы, хранящиеся в OBS , не шифруются.
  • После создания экземпляра базы данных RDS не изменяйте и не удаляйте используемый ключ. В противном случае экземпляр RDS будет недоступен, а данные на нем нельзя будет восстановить.
  • Для шифрования экземпляров БД можно использовать только профессиональные ключи. Подробнее о создании ключей в инструкции Создание CMK .

Примечание Пароль должен состоять из 8-32 символов и содержать следующие символы: прописные буквы, строчные буквы, цифры и специальные символы (~! @ #%^*-_+?,). Введите надежный пароль и периодически меняйте его для повышения безопасности, предотвращая такие риски безопасности, как взлом методом перебора.

Созданный экземпляр БД RDS отобразится на странице Instance Management . Его создание займет несколько минут, после чего он перейдет в статус «Available» — готов к использованию.

Политика автоматического резервного копирования включена по умолчанию и запускается сразу после создания экземпляра базы данных.

Порт базы данных по умолчанию — 1433. После создания экземпляра базы данных порт можно изменить .

Что такое экземпляр sql server?

Я разрабатываю приложение на C# в Visaul Studio 2015, которое работает с sql базой данной. Я программист самоучка, практик без какого-либо теоретического образования, все вопросы которые возникают просто гуглю, а тут бьюсь какую неделю и ни как не могу разобраться. Помогите, пожалуйста.

Была база данных sql и проект, по моему в 2012 студии. Базу данных делал в какой-то sql management studio, не помню какая версия. И вот пришлось вернуться к заводским настройкам компьютера и все, что было устанавливать заново. Установил 2015 Visual Studio, sql express 2014 и sql management studio 2014. Все устанавливал «по умолчанию» просто нажимал кнопку далее, так как мало что во всем этом понимаю. После запуска старого проекта в Visual Studio 2015, она видит файл базы данных, но с красным крестиком, и когда я нажимаю «проверить подключение» выдает ошибку:

«Значение источника данных в строке подключения указывает на неустановленный экземпляр SQL Server. Для устранения этой проблемы установите соответствующий экземпляр SQL Server или измените значение источника данных в строке подключения.»

что такое экземпляр SQL Server? как его узнать и как установить? я установил еще SQL Server 2012, но все равно выдает ошибку.

Заранее большое спасибо за помощь.

  • Вопрос задан более трёх лет назад
  • 18681 просмотр

Расположение файлов для экземпляра по умолчанию и именованных экземпляров SQL Server

Установка SQL Server состоит из одного или нескольких отдельных экземпляров. Как экземпляр по умолчанию, так и именованный экземпляр имеет собственный набор программных файлов и файлов данных, а также набор общих файлов, используемых всеми экземплярами SQL Server , установленными на компьютере.

Для экземпляра SQL Server , включающего Компонент Database Engine, Службы Analysis Servicesи Службы Reporting Services, каждый компонент имеет полный набор файлов данных и исполняемых файлов, а также общие файлы, используемые всеми компонентами.

Чтобы изолировать друг от друга папки установки, формируется уникальный идентификатор экземпляра для каждого из компонентов экземпляра SQL Server.

Программные файлы и файлы данных не могут быть установлены на съемном диске, в файловой системе со сжатием данных, в каталоге расположения системных файлов, а также на общих дисках экземпляра отказоустойчивого кластера.

Может потребоваться настроить программное обеспечение, например антивирусное и антишпионское приложения, чтобы исключить из проверки типы файлов и папки SQL Server. Дополнительные сведения см. в этой статье службы поддержки: Настройка антивирусного программного обеспечения на компьютерах, где выполняется SQL Server.

Системные базы данных (Master, Model, MSDB и TempDB) и пользовательские базы данных компонента Компонент Database Engine можно установить с использованием протокола SMB в качестве хранилища файлового сервера Server Message Block (SMB). Это относится как к изолированному варианту установки SQL Server , так и к установке кластеров отработки отказа SQL Server . Дополнительные сведения см. в разделе Установка SQL Server с общей папкой SMB в качестве хранилища.

Не удаляйте следующие каталоги или их содержимое: Binn, Data, Ftdata, HTML или 1033. При необходимости можно удалить другие каталоги, однако возможно, что не удастся вернуть утраченную функциональность или восстановить потерянные данные без удаления и повторной установки SQL Server. Не удаляйте и не изменяйте HTM-файлы в каталоге HTML. Они необходимы для правильной работы средств SQL Server .

Общие файлы для всех экземпляров SQL Server

Общие файлы, используемые всеми экземплярами на одном компьютере, устанавливаются в папку диск>:\Program Files\Microsoft SQL Server\nnn\. диск> — это буква диска, на который устанавливаются компоненты. Обычно по умолчанию диск C. Значение nnn указывает версию. В следующей таблице перечислены версии для путей. — значение версии, используемое в идентификаторе экземпляра, и путь реестра.

Версия *nnn*
SQL Server 2022 (16.x) 160 16
SQL Server 2019 (15.x) 150 15
SQL Server 2017 (14.x); 140 14
SQL Server 2016 (13.x); 130 13
SQL Server 2014 (12.x) 120 12
SQL Server 2012 (11.x) 110 11

Расположение файлов и сопоставление данных реестра

Во время установки SQL Server для каждого компонента сервера создается идентификатор экземпляра. В этой версии SQL Server сервер состоит из компонента Компонент Database Engine, служб Службы Analysis Servicesи Службы Reporting Services.

Идентификатор экземпляра по умолчанию указывается в следующем формате.

  • Для компонента Компонент Database Engine— MSSQL, за которым следуют основной номер версии, символ подчеркивания и дополнительный номер версии (если применимо), затем точка и имя экземпляра.
  • Для служб Службы Analysis Services— MSAS, за которым следуют основной номер версии, символ подчеркивания и дополнительный номер версии (если применимо), затем точка и имя экземпляра.
  • Для служб Службы Reporting Services— MSRS, за которым следуют основной номер версии, символ подчеркивания и дополнительный номер версии (если применимо), затем точка и имя экземпляра.

Ниже приведены примеры идентификаторов экземпляров по умолчанию для данной версии SQL Server .

  • MSSQL.MSSQLSERVER — экземпляр SQL Server по умолчанию.
  • MSAS.MSSQLSERVER — экземпляр по умолчанию служб SQL Server Analysis Services.
  • MSSQL.MyInstance — именованный экземпляр SQL Server с именем «MyInstance».

Именованный экземпляр SQL Server , в состав которого входит компонент Компонент Database Engine и службы Службы Analysis Services, имеет имя «MyInstance» и устанавливается каталоге по умолчанию, имеет следующую структуру каталогов.

  • C:\Program Files\Microsoft SQL Server\MSSQL.MyInstance\
  • C:\Program Files\Microsoft SQL Server\MSAS.MyInstance\

В качестве идентификатора экземпляра может быть указано любое значение, следует только избегать применения специальных символов и зарезервированных ключевых слов.

Идентификатор экземпляра, отличный от заданного по умолчанию, можно указать во время установки SQL Server . Если пользователь хочет изменить каталог установки по умолчанию, вместо \\Microsoft SQL Server используется \Microsoft SQL Server. Следует заметить, что идентификаторы экземпляров, начинающиеся с символа подчеркивания (_) или содержащие символ решетки (#) или знак доллара ($), не поддерживаются.

Службы Integration Services и клиентские компоненты не привязаны к экземпляру, поэтому им не присваивается идентификатор экземпляра. По умолчанию компоненты, не связанные с определенным экземпляром, устанавливаются в общий каталог: «\диск>:\Program Files\Microsoft SQL Server\nnn\». Изменение пути установки для одного компонента приводит к его изменению и для всех остальных компонентов. При последующих установках компоненты, не зависящие от экземпляра, устанавливаются в каталог исходной установки.

SQL Server Службы Analysis Services — это единственный компонент SQL Server, который поддерживает переименование экземпляра после установки. При переименовании экземпляра служб Службы Analysis Services его идентификатор экземпляра не изменится. После переименования экземпляра в каталогах и разделах реестра по-прежнему используется идентификатор экземпляра, созданный во время установки.

Куст реестра создается в HKLM\Software\Microsoft\Microsoft SQL Server\Instance_ID> для компонентов, привязанных к экземпляру. Например,

  • HKLM\Software\Microsoft\Microsoft SQL Server\MSSQL.MyInstance
  • HKLM\Software\Microsoft\Microsoft SQL Server\MSAS.MyInstance
  • HKLM\Software\Microsoft\Microsoft SQL Server\MSRS.MyInstance

В реестре также хранится сопоставление идентификаторов экземпляров с именами экземпляров. Сопоставление идентификатора экземпляра с именем экземпляра осуществляется следующим образом:

  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\SQL] «»=»MSSQL»
  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\OLAP] «»=»MSAS»
  • [HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\Instance Names\RS] «»=»MSRS»

Указание путей к файлам

В ходе установки вы можете изменить путь установки для следующих компонентов:

Путь установки отображается в программе установки только для компонентов с пользовательской целевой папкой.

Компонент Путь по умолчанию Настраиваемый или фиксированный путь
Компонент Database Engine компоненты сервера \Program Files\Microsoft SQL Server\MSSQL.\ Настраивается
Компонент Database Engine файлы данных \Program Files\Microsoft SQL Server\MSSQL.\ Настраивается
Службы Analysis Services сервер \Program Files\Microsoft SQL Server\MSAS.\ Настраивается
Службы Analysis Services файлы данных \Program Files\Microsoft SQL Server\MSAS.\ Настраивается
Службы Reporting Services сервер отчетов \Program Files\Microsoft SQL Server\MSRS.\Reporting Services\ReportServer\Bin\ Настраивается
Службы Reporting Services диспетчер отчетов \Program Files\Microsoft SQL Server\MSRS.\Reporting Services\ReportManager\ Фиксированный путь
Службы Integration Services \nnn\DTS\ 1 Настраивается
Клиентские компоненты (за исключением bcp.exe и sqlcmd.exe) \nnn\Tools\ 1 Настраивается
Клиентские компоненты (bcp.exe и sqlcmd.exe) \Client SDK\ODBC\nnn\Tools\Binn Фиксированный путь
Объекты COM для репликации и размещения на сервере диск>:\Program Files\Microsoft SQL Server\nnn\COM\ 2 Фиксированный путь
Службы Integration Services библиотеки DLL служб для механизмов преобразования данных в реальном режиме времени и конвейерного преобразования данных и программа командной строки dtexec диск>:\Program Files\Microsoft SQL Server\nnn\DTS\Binn Фиксированный путь
Библиотеки DLL, которые обеспечивают управляемое соединение, поддерживаемое для служб Службы Integration Services диск>:\Program Files\Microsoft SQL Server\nnn\DTS\Connections Фиксированный путь
Библиотеки DLL для каждого типа перечислителей, которые поддерживают службы Службы Integration Services диск>:\Program Files\Microsoft SQL Server\nnn\DTS\ForEachEnumerators Фиксированный путь
SQL Server , поставщики инструментария WMI диск>:\Program Files\Microsoft SQL Server\nnn\Shared\ Фиксированный путь
Компоненты, которые разделены между всеми экземплярами SQL Server диск>:\Program Files\Microsoft SQL Server\nnn\Shared\ Фиксированный путь

Убедитесь, чтобы папка \Program Files\Microsoft SQL Server\ была защищена ограниченными разрешениями.

Диск по умолчанию для расположений файлов — systemdrive, обычно диск C. Пути установки дочерних компонентов определяются путем установки родительского компонента.

1 Используется общий путь установки для Службы Integration Services и клиентских компонентов. Изменение пути установки для одного компонента влечет изменение пути для других компонентов. При последующих установках компоненты устанавливаются в расположение исходной установки.

2 Этот каталог используется всеми экземплярами SQL Server на компьютере. При применении обновления к любому из экземпляров на компьютере все файловые изменения коснутся каждого из них. При добавлении компонентов в существующую конфигурацию невозможно ни изменить расположение ранее установленного компонента, ни указать расположение нового. Необходимо либо установить дополнительные компоненты в каталоги, созданные программой установки, либо удалить продукт и установить его заново.

Для кластеризованных конфигураций необходимо выбрать локальный диск, доступный на всех узлах кластера.

При задании пути установки во время установки компонентов сервера или файлов данных программа установки использует идентификатор экземпляра в дополнение к заданному положению для программ и файлов данных. Программа установки не пользуется идентификаторами экземпляров для средств и других общих файлов. Идентификатор экземпляра также не используется для программ и файлов данных служб Службы Analysis Services , но используется для репозитория служб Службы Analysis Services .

При указании пути установки для компонента Компонент Database Engine программа установки SQL Server использует этот путь в качестве корневого каталога этой установки для всех папок, относящихся к экземпляру, включая файлы данных SQL. Если в этом случае указать в качестве корневого каталога C:\Program Files\Microsoft SQL Server\MSSQL.\MSSQL\, то каталоги, относящиеся к данному экземпляру, будут добавлены в конец этого пути.

Поэтому при использовании функции обновления USESYSDB в мастере установки SQL Server (режим установки с пользовательским интерфейсом) можно попасть в ситуацию, когда продукт окажется установленным в рекурсивной структуре папок. Например, SQLProgramFiles>\MSSQL14\MSSQL\MSSQL10_50\MSSQL\Data\. Поэтому при использовании функции USESYSDB вместо компонента Компонент Database Engine необходимо указывать путь установки файлов данных SQL.

Обычно файлы данных можно найти в дочернем каталоге с именем Data. Например, чтобы при обновлении указать путь к корневому каталогу данных системных баз данных, задайте C:\Program Files\Microsoft SQL Server\MSSQL.\, тогда файлы данных будут расположены в каталоге C:\Program Files\Microsoft SQL Server\MSSQL.\MSSQL\Data.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *