Именованный экземпляр sql сервера что это
Перейти к содержимому

Именованный экземпляр sql сервера что это

  • автор:

Что такое экземпляр 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, но все равно выдает ошибку.

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

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

Экземпляры компонента Database Engine (SQL Server)

Экземпляр ядра СУБД представляет собой копию исполняемого файла sqlservr.exe, который работает как служба операционной системы. Каждый экземпляр управляет несколькими системными базами данных, а также одной или несколькими пользовательскими базами данных. На каждом компьютере могут работать несколько экземпляров ядра СУБД. Приложения подключаются к экземпляру для выполнения работы в базе данных, которой управляет экземпляр.

Экземпляры

Экземпляр ядра СУБД работает как служба, которая обрабатывает все запросы приложений на работу с данными в любой из баз данных, которыми управляет этот экземпляр. Сюда направляются запросы на подключение (вход в систему) от приложений. Если приложение и экземпляр находятся на разных компьютерах, для соединения с SQL Server используется сетевое подключение. Если приложение и экземпляр находятся на одном и том же компьютере, соединение с SQL Server осуществляться через сетевое подключение или подключение в оперативной памяти. Когда связь установлена, приложение передает инструкции Transact-SQL экземпляру. Экземпляр преобразует инструкции Transact-SQL в операции с данными и объектами в базах данных и выполняет работу, если учетным данным входа предоставлены необходимые разрешения. Все полученные данные возвращаются в приложение со всеми необходимыми сообщениями, например сообщениями об ошибках.

На каждом компьютере могут работать несколько экземпляров. Один экземпляр может быть экземпляром по умолчанию. Экземпляр по умолчанию не имеет имени. Если в запросе на подключение указано только имя компьютера, соединение устанавливается с экземпляром по умолчанию. Экземпляр, которому при установке было задано имя, называется именованным экземпляром. Для подключения к такому экземпляру необходимо указать в запросе на подключение имя компьютера и имя экземпляра. Устанавливать экземпляр по умолчанию необязательно; все экземпляры, работающие на компьютере, могут быть именованными экземплярами.

Связанные задачи

Описание задачи Раздел
Описывает, как настроить свойства экземпляра. Задайте значения по умолчанию для таких параметров, как расположение файлов и форматы дат, или укажите, как экземпляр использует такие ресурсы операционной системы, как память или потоки. Настройка экземпляров компонента Database Engine (SQL Server)
Описывает, как управлять параметрами сортировки для экземпляра ядра СУБД. Параметры сортировки задают битовые шаблоны, используемые для представления символов, а также такие режимы, как сортировка или учет регистра и диакритических знаков в операциях сравнения. Поддержка параметров сортировки и Юникода
Описывает, как задать определения связанного сервера, чтобы экземпляр мог выполнять инструкции Transact-SQL с данными, которые хранятся в отдельных источниках данных OLE DB. Связанные серверы (компонент Database Engine)
Описывает, как создать триггер входа, который задает действия, выполняемые после разрешения входа, но до начала работы с ресурсами в экземпляре. В дополнение к проверке подлинности учетных данных, выполняемой в Windows и SQL Server, триггеры входа поддерживают такие действия, как регистрация подключений и ограничение возможных действий для имен входа на основе заданной логики. Триггеры входа
Описывает, как управлять службой, связанной с экземпляром ядра СУБД. Это включает такие действия, как запуск и остановка службы или настройка параметров запуска. Управление службами компонента Database Engine
Описывает выполнение задач сетевой конфигурации сервера, таких как включение протоколов, изменение порта или канала, использующегося протоколом, настройка шифрования, настройка службы обозревателя SQL Server, предоставление или скрытие компонента SQL Server Database Engine в сети или регистрация имени участника-службы сервера. Сетевая конфигурация сервера
Описывает выполнение задач сетевой конфигурации клиента, например настройку протоколов клиента и создание или удаление псевдонимов сервера. Конфигурация клиентской сети
Описывает редакторы SQL Server Management Studio, которые можно использовать для разработки, отладки и запуска скриптов, таких как скрипты Transact-SQL. Также описывает, как кодировать скрипты Windows PowerShell для работы с компонентами SQL Server. Работа со сценариями компонента Database Engine
Описывает, как с помощью планов обслуживания задать рабочие процессы часто выполняемых задач администрирования для экземпляра. Рабочие процессы включают такие задачи, как резервное копирование баз данных и обновление статистики для повышения производительности. Планы обслуживания
Описывает, как использовать регулятор ресурсов для управления потреблением ресурсов и рабочими нагрузками путем ограничения времени ЦП и объема памяти, которые могут использоваться запросами приложений. Регулятор ресурсов
Описывает, как приложения базы данных могут использовать компонент Database Mail для отправки сообщений электронной почты из ядра СУБД. Database Mail
Описывает, как использовать расширенные события для перехвата данных о производительности, которые могут использоваться для расчета базовых уровней производительности или диагностирования проблем производительности. Расширенные события — это упрощенная, легко масштабируемая система сбора данных о производительности. Расширенные события
Описывает, как использовать трассировку SQL для создания пользовательской системы сбора и регистрации событий в ядре СУБД. Трассировка SQL
Описывает, как использовать SQL Server Profiler для перехвата трассировки запросов приложений, поступающих в экземпляр ядра СУБД. Эти данные трассировки могут затем воспроизводиться для выполнения таких действий, как тестирование производительности или диагностика проблем. Приложение SQL Server Profiler
Описывает функции отслеживания измененных данных (CDC) и отслеживания изменений, а также описывает использование этих функций для отслеживания вносимых в данные изменений в базе данных. Отслеживание измененных данных (SQL Server)
Описывает использование средства просмотра журнала для поиска и просмотра ошибок и сообщений SQL Server в таких журналах, как журнал заданий SQL Server, журналы SQL Server и журналы событий Windows. Средство просмотра файлов журнала
Описывает, как использовать помощник по настройке ядра СУБД для анализа работы баз данных и подготовки рекомендаций по устранению потенциальных проблем производительности. Database Engine Tuning Advisor
Описывает, как администраторы рабочей базы данных могут устанавливать диагностическое соединение с экземплярами, если запросы на стандартное подключение не принимаются. Диагностическое соединение для администраторов баз данных
Описывает, как использовать устаревшую функцию удаленных серверов, чтобы обеспечить доступ из одного экземпляра ядра СУБД в другой. Для этих функций лучше всего использовать связанный сервер. Удаленные серверы
Описывает возможности компонента Service Broker для обмена сообщениями и очередей приложений и предоставляет ссылки на документацию по компоненту Service Broker. Service Broker
Описание того, как можно использовать расширение буферного пула для обеспечения легкой интеграции энергонезависимого хранилища с произвольной выборкой (SSD-дисков) с буферным пулом компонента Database Engine, что позволяет значительно повысить пропускную способность ввода-вывода. Файл расширения буферного пула

Как узнать имя экземпляра 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.

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

Подключение MS SQL

Для операционной системы Windows подключение осуществляется через Microsoft OLE DB Driver for SQL Server или SQL Server Native Client. В обоих случаях требуется предварительная установка драйвера.

При работе на операционной системе Linux подключение выполняется без клиента СУБД.

Параметры подключения

При настройке подключения задаются следующие параметры:

  • Метка — содержит задаваемое пользователем имя подключения.
  • Строка подключения — строка вида host[:port]:database (параметр, заключенный в [ ], является опциональным):
    • host — хост сервера СУБД;
    • port — порт TCP, используемый сервером СУБД для взаимодействия с клиентом, если параметр пустой, то порт по умолчанию 1433 ;
    • database — имя базы данных.

    Задать строку подключения можно вручную или в отдельном окне, которое вызывается при клике мышью по кнопке .

    Окно имеет два поля:

    • Сервер — хост SQL-сервера. При необходимости через «\» указывается именованный экземпляр SQL-сервера.
    • База данных — имя базы данных.

    Примеры строки подключения:

    • Тестировать — тест указанных настроек подключения.
    • Логин — логин пользователя БД. Если логин не указан, то используется доменная авторизация.
    • Пароль — пароль пользователя БД.
    • Показывать системные таблицы — при установке этого флага в мастере импорта, использующего данное подключение, становятся видимы доступные пользователю системные таблицы БД.
    • Обрамлять имена кавычками — если имена объектов базы данных (например, имена таблиц, полей) содержат пробелы или зарезервированные символы, то необходимо использовать обрамляющие символы, фиксирующие начало и конец имени.
    • Кодовая страница — позволяет задать язык сообщений сервера БД и кодовую страницу для значений символьных типов, представленных не в UNICODE: char, varchar, text.
    • Не использовать клиент СУБД — для MS SQL этот параметр недоступен для изменения. Опция отключена для ОС Windows и включена для ОС Linux.
    • Очищать пул при деактивации — очищает пул часто используемых в пакетной обработке и пакетов Loginom Integrator, сохраненных для быстрого вызова, после деактивации узла. По умолчанию этот параметр отключен.
    • Тайм-аут подключения (c) — задает предельное время подключения, значение по умолчанию 20 секунд. Если импорт из базы данных или экспорт в базу данных будет выполняться в режиме игнорирования ошибок, то в случае неудавшегося подключения в течение установленного времени, соответствующая ошибка будет записана в выходной порт Статус выполнения узла Импорт из БД/Экспорт в БД, а при импорте/экспорте в обычном режиме — выполнение узла завершится ошибкой.
    • Тайм-аут блокировки (с) — устанавливает тайм-аут ожидания снятия блокировки с ресурса (таблицы, строки). Задаётся выпадающим списком с редактируемым полем ввода, которое принимает целые положительные значения. Предустановленный список значений:
      • По умолчанию — используется значение по умолчанию сервера БД.
      • — время ожидания не ограничивается.
      • Числовые значения — выбор из следующих значений: 5, 10, 20, 30, 60, 120.

      Примечание: Для подключения к базе данных клиенты или драйвер ODBC должны быть той же разрядности, что и разрядность приложения/сервера Loginom.

      Совместимость

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

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