Як перейменувати екземпляр SQL Server 2008?


28

Як я можу перейменувати екземпляр SQL Server 2008 без перевстановлення?

Наприклад, якщо на db посилається як "MySQLServer \ MSSQL2008", як я можу перейменувати його на "MySQLServer \ SQL2008"?

Відповіді:


31

Я не думаю, що неможливо перейменувати без встановлення.

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

Якщо ви можете, якщо у вас більше ніж один примірник, вам краще перевстановити та знову імпортувати всі ваші бази даних.


3
Віл правильно. Немає способу перейменувати екземпляр. Вам потрібно видалити екземпляр та встановити новий екземпляр. (Або встановіть новий екземпляр, перемістіть бази даних до нового екземпляра, потім вимкніть або видаліть старий екземпляр).
мрденний

робити видалення та повторну інсталяцію з названим екземпляром насправді не дуже складно. просто утримуйте каталог каталогів Дані (а може бути, резервну копію) у старому екземплярі.
djangofan

9

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

  • Отримайте поточне ім'я екземпляра SQL Server для подальшого порівняння.
    SELECT @@servername
  • Видаліть сервер зі списку відомих віддалених та зв'язаних серверів на локальному екземплярі SQL Server.
    EXEC master.dbo.sp_dropserver ‘[SERVER NAME]‘
  • Визначте ім'я локального екземпляра SQL Server.
    EXEC master.dbo.sp_addserver ‘[NEW SERVER NAME]‘, ‘local’
  • Отримайте нове ім'я екземпляра SQL Server для порівняння. SELECT @@servername

І кілька приміток, що стосуються їх використання:
sp_dropserver :

  1. Ця збережена процедура може видалити як віддалені, так і пов'язані сервери;
  2. Використання параметра "Drologlogins" вказує на те, що пов'язані віддалені та пов'язані вхідні дані сервера для [SERVER NAME] також повинні бути видалені.

sp_addserver :

  1. Щоб визначити пов'язаний сервер, використовуйте sp_addlinkedserver (оскільки ця функція буде знецінена у версії вище SQL Server 2005);
  2. sp_addserver не можна використовувати всередині визначеної користувачем транзакції.

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

Цю інформацію я отримав за посиланням нижче:

https://web.archive.org/web/20141116031942/http://modhul.com/2008/01/15/renaming-a-sql-server-instance/


1

Просто коротка примітка, що ви можете додати "псевдонім" і використовувати його під обома назвами:

введіть тут опис зображення


0

select @@servername покаже нове ім'я, але ім'я сервера в ERRORLOG покаже старе ім'я, і ​​ви не можете підключитися, використовуючи нове ім'я.

Єдине рішення - перевстановити.



-4

Ви хочете використовувати АЛЬТАРНУ ДАТАБАЗУ.

http://msdn.microsoft.com/en-us/library/ms174269.aspx

У цій ситуації, для вашого прикладу вище, я спробую:

ALTER DATABASE MSSQL2008 MODIFY NAME = 'SQL2008'

Удачі!


6
Я думаю, що мова йде про зміну імені бази даних, а не про екземпляр SQL-сервера
Вільям Хілсум,

так ... я хочу перейменувати екземпляр двигуна сервера sql, а не лише ім'я таблиці або бази даних.
Скотт Марлоу

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