Yükleme ortamı olmadan SQL Server 2014 Standard Edition nasıl kaldırılır?


9

Birkaç yıldır varsayılan örnek olarak geliştirici kutumda SQL Server 2014 Standard'ın bir kopyasını yükledim. MSDN aboneliğim aracılığıyla kullanabileceğim ücretsiz lisansım olduğu için makineme standart yükledim. Şimdi SQL Server 2014'ü kaldırmak ve SQL Server 2017 Developer Edition'ı varsayılan örneğim yapmak istiyorum. SQL Server 2014'ü standart Program Ekle / Kaldır iş akışı üzerinden kaldırmaya çalıştım, ancak hangi özellikleri kaldırmak istediğimi sorduktan sonra kaldırma medyasını içeren dizini soruyor. Ne yazık ki MSDN'den aldığım SQL Server 2014 indirme paketini kaydetmedim ve artık MSDN'ye erişimim yok. Ayrıca Visual Studio'mu da kontrol ettim ancak SQL Server 2016'ya geri dönüyor. Kurulum ortamı olmadan SQL Server 2014 Standard'ı nasıl kaldırabilirim?


Daha fazla arka plan:

SQL Server 2014'ü kaldırmak istememizin tüm nedeni STRING_AGG, Azure SQL Veritabanları ve SQL Server 2017 için yeni olan işlevi kullanmak istememdir. Geliştirme ortamlarını daha kolay hale getirmek için yerel ortam geliştirme bağlantı dizelerimiz için nokta gösterimini kullanıyoruz, örneğin bağlantı dizemiz:

Data Source=.;Initial Catalog=<Database Name>;Trusted_Connection=True;Connection Timeout=30; 

Nokta gösterimi varsayılan veritabanına bağlanır ve bence SQL Server 2017'yi önce SQL Server 2014'ü kaldırmadan varsayılan veritabanı yapamıyorum. Nokta gösterimi bağlantı dizesini SQL Server 2017'yi SQL Server 2014'ü kaldırmadan bağlamak için kullanabilirsem, o çözüme de açık olurum.

Yanıtlar:


10

SQL Server 2014 değerlendirme sürümünü * indirerek SQL Server 2014 örneğimi kaldırabildim . Değerlendirme sürümünü indirmek için Microsoft'a bazı iletişim bilgileri vermek ve sonra iki dosyayı indirmek zorunda kaldım. Bir dosyanın .boxuzantısı ve diğerinin .exeuzantısı vardı . Yürütülebilir dosya sadece kutu dosyasını açmak gibi görünüyordu. Kutu dosyası açıldıktan sonra standart Program Ekle / Kaldır iş akışı aracılığıyla SQL Server 2014 kaldırma işlemini yeniden başlattım. Değerlendirme sürümünü asla yüklemeye çalışmadığımı unutmayın. Paketinden çıkarılan dosyaları, mevcut SQL Server 2014 örneğimi kaldırmak için kullandım.

Veritabanı bileşenlerini kaldırmayı seçtim, ancak paylaşılan bileşenleri bıraktım. Kaldırma işlemi yükleme medyasını istemeye başladığında, çeşitli .msidosyalar isteyeceğini buldum . Çoğu zaman dosya adında "loc" olan bir msi dosyası ve ardından dosya adında "loc" olmayan bir msi dosyası isteyecektir. Kutu dosyasını açtığım klasör içinde msi dosyalarının "loc" sürümü bulundu:

\1033_ENU_LP\x64\Setup\

ve dosya adında "loc" bulunmayan dosyalar:

\x64\Setup\

Kaldırma işlemi tamamlandıktan sonra bilgisayarımı yeniden başlattım ve SQL Server 2017 Developer Edition'ı varsayılan örnek olarak yükleyebildim. İlginç bir şekilde, SQL Server 2017 yükleme işlemi sırasında, biri olan 2 SQL Server 2014 dosyası için yükleme medyası istendi SQLWRITER.MSI. Bunun SQL Server 2014 için paylaşılan bileşenleri kaldırmamam nedeniyle olup olmadığını bilmiyorum. Bu, gelecekte SQL Server 2014 değerlendirme sürümünün zaman sınırlı doğası nedeniyle bana sorun verirse, eski SQL'imi kaldırmak için kullandım Server 2014 Standard Edition Bu yanıtı güncelleyeceğim.


Yorumlarda bahsettiğim alternatif yaklaşımlar denemedim, ama iyi düşecek önlemler gibi görünüyor.

  1. SQL Server 2014'ü kaldırmak istememin tüm nedeni, SQL Server 2017'ye bağlanmak için nokta gösterimini kullanabilmemdi. Scott Hodgin , adlandırılmış bir örneğin varsayılan bir örnek gibi görünmesini sağlamak için bir tekniği araştırmamı önerdi . Bu tekniği denemedim ama StackOverflow üzerinde toplanan oylara bakarak kesinlikle bazı insanların problemlerini çözdü.

  2. Aaron Bertrand , geçmişte benim gibi benzer bir durumdaydı ve herhangi bir yükleme / kaldırma medyası olmadan kaldırmayı zorlamanın yolları hakkında iki farklı blog yazısı ( birinci , ikinci ) yazdı . Her iki blog yazısı msiexecda, kayıt defterinde bulunan GUID'e dayalı bir kaldırma işlemini zorlayan komutu yürütmek için esas olarak bir toplu iş dosyası oluşturma tekniğini kullandı . Blog yazılarından yalnızca birini okuduysanız ikincisini tavsiye ederim. Toplu iş dosyasını oluşturmak için küçük bir PowerShell betiği kullanır. Şahsen bu yaklaşımı kullanmam gerekmiyorken bir sonraki seçeneğim buydu. Ayrıca Aaron'a, benim gibi sıradan bir insanla problemle karşılaşmadan önce bir acı noktasından savaşmak ve gelecek nesillere iyi bir çözüm bulmak için şapka ipucu vermek istiyorum.


*: Bu yaklaşımı yorumlarda önerdiği için Ali Razeghi'ye teşekkür ederim .

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.