SQL Server 2008 örneği nasıl yeniden adlandırılır?


28

SQL Server 2008 örneğini yeniden yüklemeden nasıl yeniden adlandırabilirim?

Örneğin, eğer db "MySQLServer \ MSSQL2008" olarak adlandırılıyorsa, "MySQLServer \ SQL2008" olarak nasıl yeniden adlandırabilirim?

Yanıtlar:


31

Yüklemeden yeniden adlandırmanın mümkün olduğunu sanmıyorum.

Adına, çoğaltma gibi birkaç iç veritabanında kalan izler var ve daha sonra hataları bulabilirsiniz.

Yapabilirseniz, birden fazla örneğiniz yoksa, yeniden yükleme ve tüm veritabanlarınızı yeniden içe aktarmanız en iyisidir.


3
Wil haklı. Örneği yeniden adlandırmanın yolu yok. Örneği kaldırmanız ve ardından yeni bir örnek yüklemeniz gerekir. (Veya yeni örneği yükleyin, veritabanlarını yeni örneğe taşıyın, ardından eski örneği devre dışı bırakın veya kaldırın).
mrdenny

kaldırma ve ardından adlandırılmış bir örneğe yeniden yükleme gerçekten çok zor değil. sadece eski örnekteki Veri dizinine (ve belki de Yedekler dizinine) tutun.
djangofan

9

Bu betiğin 'net' üzerinden her yerde olduğunu biliyorum, ancak ne zaman google'a girsem, ihtiyaçlarım için gereğinden fazla olan ayrıntılı depolanmış proc'lar ortaya koyuyorum - işte bu yüzden bir SQL Server örneğini, posterity için yeniden adlandırmak için gerekli komutlar:

  • Daha sonra karşılaştırmak için SQL Server örneğinin geçerli adını alın.
    SELECT @@servername
  • Sunucuyu, SQL Server'ın yerel örneğindeki bilinen uzak ve bağlantılı sunucular listesinden kaldırın.
    EXEC master.dbo.sp_dropserver ‘[SERVER NAME]‘
  • SQL Server'ın yerel örneğinin adını tanımlayın.
    EXEC master.dbo.sp_addserver ‘[NEW SERVER NAME]‘, ‘local’
  • Karşılaştırma için SQL Server örneğinin yeni adını alın. SELECT @@servername

Ve kullanımlarına ilişkin birkaç not:
sp_dropserver :

  1. Bu saklı yordam hem uzak hem de bağlı sunucuları kaldırabilir;
  2. Droplogins parametresini kullanmak, [SUNUCU ADI] için ilgili uzak ve bağlantılı sunucu girişlerinin de kaldırılması gerektiğini belirtir.

sp_addserver :

  1. Bağlantılı bir sunucuyu tanımlamak için sp_addlinkedserver kullanın (bu işlevsellik, SQL Server 2005'in üzerindeki sürümlerinde amortismana tabi tutulacağından);
  2. sp_addserver, kullanıcı tanımlı bir işlem içinde kullanılamaz.

Bir SQL Server'ı yeniden adlandırırken aşağıdakileri de tavsiye ederim:
Bu görevi bir makinenin bir parçası olarak yapıyorsanız, makineyi yeniden adlandırın, ardından SQL Server'ı yeniden adlandırın. SQL Server'ı yeniden adlandırdıktan sonra, herhangi bir bağımlı servis dahil olmak üzere SQLServer'ın tam olarak yeniden başlatılmasını sağlayın.

Bu bilgiyi aşağıdaki linkten aldım:

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


1

Bir "takma ad" ekleyebileceğiniz ve her iki ad altında da kullanabileceğiniz kısa bir not:

görüntü tanımını buraya girin


0

select @@servername yeni ismi gösterecek, fakat ERRORLOG içindeki sunucu ismi eski ismi gösterecektir ve yeni ismi kullanarak bağlanamazsınız.

Tek çözüm yeniden kurmak.



-4

ALTER DATABASE kullanmak istersiniz.

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

Bu durumda, yukarıdaki örneğiniz için şunu denerim:

ALTER DATABASE MSSQL2008 MODIFY NAME = 'SQL2008'

İyi şanslar!


6
Bunun SQL server örneğinden ziyade bir veritabanı ismini değiştirmekle
ilgilendiğini düşünüyorum

evet ... Ben sadece bir tablo veya veritabanı adı değil, sql server engine örneğini yeniden adlandırmak istiyorum.
Scott Marlowe

Haklısın @Wil ile aynı fikirdeyim - bunu yeniden yüklemeden yapmanın bir yolunun farkında değilim.
Nicolas Webb
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.