SQL Server: Що називають екземплярами та типовими примірниками?


Відповіді:


30

За даними Microsoft щодо імені vs vs default

Клієнтські програми підключаються до екземпляра Microsoft SQL Server 2005 для роботи з базою даних SQL Server. Кожен екземпляр SQL Server складається з різного набору служб, які можуть мати унікальні настройки. Структура каталогу, структура реєстру та ім’я служби відображають конкретне ім'я екземпляра, яке ви ідентифікуєте під час налаштування.

Екземпляр - це або за замовчуванням, неназваний екземпляр, або це іменований екземпляр. Коли SQL Server 2005 встановлений у примірнику за замовчуванням, він не вимагає від клієнта вказувати ім'я екземпляра для встановлення з'єднання. Клієнт повинен знати лише ім’я сервера.

Названий екземпляр ідентифікується мережевим іменем комп'ютера плюс ім'ям екземпляра, який ви вказали під час встановлення. Під час підключення клієнт повинен вказати і ім’я сервера, і ім'я екземпляра.

За замовчуванням SQL Server встановлюється в екземплярі за замовчуванням, якщо не вказати ім'я екземпляра. Однак SQL Server Express завжди встановлюється в іменованому екземплярі, якщо ви не примушуєте встановлення за замовчуванням під час налаштування.


17

Також ви можете встановити лише один за замовчуванням (неназваний екземпляр), але ви можете встановити багато названих екземплярів.

Багато програмного забезпечення сторонніх виробників зазвичай використовують екземпляр з назвою за замовчуванням, хоча вони можуть не згадувати його. Причина зрозуміла з наведених вище відповідей: у стандартних версіях за замовчуванням встановлюється неназваний екземпляр, тоді як версія Express встановлює названий екземпляр за замовчуванням.

Важливо знати про різницю з цієї точки зору, оскільки якщо у вас працює 2 або 3 сервери БД, ви ніколи не зможете підключитися до потрібної версії. Оскільки програмне забезпечення третьої сторони шукає екземпляр за замовчуванням, поки ви думаєте, що це екземпляр SQLEXPRESS, до якого намагається підключитися. Це може значно збільшити час усунення несправностей, якщо ви не знаєте, як підключитися до названого екземпляра vs.

Тож якщо ви хочете підключитися до іменованої або безіменної версії, скористайтеся наступними вказівками.

MY-MACHINE-NAME\SQLEXPRESS  /* named version - correct */
MY-MACHINE-NAME             /* unnamed version (default instance) - correct */
MY-MACHINE-NAME\MSSQLSERVER /* unnamed version (default instance) - Wrong */

Зауважте, що незважаючи на те, що екземпляр за замовчуванням має ім'я, воно не може бути посилається на його ім'я!


5

Окрім пояснень, які Brett G розмістив, ось кілька причин того, як їх використовувати:

  • Ви можете мати різні екземпляри, використовуючи різні версії SQL (наприклад, за замовчуванням використовуючи SQL 2008, іменований екземпляр, використовуючи SQL 2005)
  • Розділення проблем, будь то щось із вашим додатком чи безпекою чи будь-яким іншим
  • Різні середовища розвитку
  • Різне середовище додатків (наприклад, доморощене порівняно з сторонніми сторонами)

Всілякі причини їх використання. Але це не означає, що це завжди гарна ідея: P


5

Ще одна практична відмінність: SQL2005 і новіші версії дозволяють встановлювати 16 або більше примірників на кожну систему. Оскільки ліцензування здійснюється за фізичний процесор , за встановлення SQL-сервера (а не за примірник!), Це означає, що ви можете запустити до 16 екземплярів SQL Server 2005, не платячи ні цента більше, ніж ви вже робили.

Зважаючи на те, що ліцензії на процесор можуть працювати до $ 15000 (!) За сокет, це є обов'язковим для великих установок з, скажімо, 16 ядрами і 256 ГБ пам'яті.


1

Ви також можете обмежити пам'ять та призначити обмеження використання процесора на примірник. Ви також можете створити екземпляр для програм, написаних виробником, які "потребують" привілеїв системного адміністратора, тому ви не піддаєте інших програм ризику.


0

Однією з найкращих причин є відокремлення баз даних. Якщо ви розробляєте власне додаток і пакуєте SQL Express разом з ним, то має сенс встановити його у власний екземпляр. Плюс надати користувачеві можливість вказати існуючу установку SQL, якщо вони це дозволяють.

Якщо у вас є база даних, яка дуже важлива, щоб ви хотіли переконатися, що ніхто інший не має доступу, вона може перейти в свій власний екземпляр з дуже обмеженою авторизацією безпеки. Скажіть, це ваш БД продукування, і він потім реплікується на БД звітування на тому ж сервері **, який читають лише люди. Менш вірогідна помилка користувача (адміністратора), якщо користувачі випадково отримають доступ до виробничої БД, обмеживши, хто насправді може оновити групи безпеки на виробничому екземплярі лише кількома людьми.

** Гарна практика говорить про те, щоб зробити сервер звітності окремою машиною, але я це роблю лише як приклад.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.