Sql server express アンインストール 完全

SQL Serverのインスタンスの削除の方法を確認したいと思います。
今回は、Windows 10にインストールしたSQL Server 2019 Developerエディションの名前付きインスタンスを一つアンインストールしてみます。

基本的には以下の公式ページを参考にしていますので、色々な準備や前提事項等などの詳細はこちらをご覧ください。
docs.microsoft.com

これより、画面キャプチャとともにアンインストールの流れを紹介します。
まずは、[スタート] メニューから [設定] (歯車マーク)に移動し、 [アプリ] を選択します。

Sql server express アンインストール 完全
SQL

検索ボックスに「sql」を入力し、アンインストールするSQL Serverを確認します。

Sql server express アンインストール 完全
SQL Serverのインスタンスの削除③

[Microsoft SQL Server (バージョン) (ビット)] を選択します。今回は、[Microsoft SQL Server (2019) (64ビット)]です。
アンインストールボタンを押下します。ボタン押下すると、小窓みたいなポップアップが出るので、再度アンインストールを押下します。

Sql server express アンインストール 完全
SQL Serverのインスタンスの削除④

以下のような画面が開くと思います。アンインストールですので、「削除」を押下します。数秒後、削除するための設定画面が表示されます。

Sql server express アンインストール 完全
SQL Serverのインスタンスの削除⑤

表示された設定画面を確認します。以下のキャプチャでは2つのインスタンスが表示されています。既定のインスタンス(MSSQLSERVER)と名前付きインスタンス(MSSQLSERVER01)が一つあります。

Sql server express アンインストール 完全
SQL Serverのインスタンスの削除⑥

今回は、名前付きインスタンス(MSSQLSERVER01)を削除するので、「機能を削除するインスタンス」の選択ボックスより、名前付きインスタンス(MSSQLSERVER01)を選択して、次へボタンを押下します。

Sql server express アンインストール 完全
SQL Serverのインスタンスの削除⑦

削除するSQL Serverの機能を選択する画面が開きます。今回のケースでは、データベースエンジンサービスしか選択できないようですので「すべて選択」を押下して、次へボタンを押下します。

Sql server express アンインストール 完全
SQL Serverのインスタンスの削除⑧

削除の確認画面が開きます。問題がなければ、「削除」ボタンを押下します。これで操作はすべて完了です。
私の場合は、1分かからない程度で削除が完了しました。

Sql server express アンインストール 完全
SQL Serverのインスタンスの削除⑨

ちなみに、上記の削除確認画面を見ると「SQL Browser」や「SQL ライター」と呼ばれる機能も削除されそうですが、私のケースでは以下の完了画面を見ての通りスキップされました。
今回のケースでは、名前付きインスタンスの削除であり、規定のインスタンスが残るのでそうなるのかもしれません。

Sql server express アンインストール 完全
SQL Serverのインスタンスの削除⑩

おわりに

いかがでしたでしょうか。SQL Serverのインスタンスを削除してみました。ちょっと試してみたいことがあり、たくさんの名前付きインスタンスをインストールしてしまったのでお掃除のためにアンインストールの流れを確認してみました。簡単に削除したい方はキャプチャを見ながら試してみてください。

今回も最後までお読みいただきありがとうございました。この辺で失礼いたします。

なんらかのトラブルでSQLサーバをアンインストールしたいことがあります。

例えばデータベースのパスワードを忘れてしまった、アプリとの連携がうまくいかない・・・

アプリ機能からSQLSサーバのアンインストールし再度入れなおしても以前の情報がのこっており

上書きインストールしてもダメです。

いろいろ当たりましたが以下のサイトが一番有力でした。

SQL Server の手動アンインストール手順 を参考にしながらの補足説明になってます。

 ここにない情報でポイントを書いておきますね。

0.まず最初に、

・「アプリと機能一覧」に残っていてもかまわない(通常の削除していなくても)

・予め、「サービス一覧」より「SQL Server(インスタンス名)を「サービス停止」しておく(毎回聞かれず便利)

 

Sql server express アンインストール 完全

2. MsiExec.exe /x によるコンポーネントアンインストールにて

・途中でエラーがでますが、そのままあきらめずに順番に進めていってください。

msiexec /x GUID

   (例) msiexec /x{202AAF1F-69AA-442A-B59F-6B54B1AD07C6}

/xと{202A~07C6}の間はスペースをつくらない。すると「この製品をアンインストールしますか?」ポップアップがでます。

3. GAC の削除にて

・バッチファイルの作り方

バッチファイル内容をメモ帳で作成し、ファイル名.batとうものを作る、起動しやすいようにCドライブなら適当なファイル名を作りそこの下に置いておく

ここまでくればあとはもう少しです。

Sql server express アンインストール 完全

More than 3 years have passed since last update.

posted at 2019-08-08

updated at 2019-08-11

SSMSが起動しない不具合発生後に「プログラムと機能」からの削除と再起動を行った所再発したため、備忘録として

この記事はMicrosoft Japan SQL Server Support Teamのブログを参考に、
手順をさらにスクリプト化した物となります。

1.「プログラムと機能」から削除

  • コントロールパネルのアドレスバーに「コントロール パネル\プログラム\プログラムと機能」と入れると移動できる
  • SQL Server関連の物を削除

2.「プログラムと機能」に「SQL」が含まれるプログラムがないか検索、あれば削除する

  • 管理者権限PowerShellで実行

Get-Item -Path "Registry::HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*"         | # レジストリからアンインストール可能な物を取得
  ForEach-Object {
   $dispname = (Get-Item -Path "Registry::$_").GetValue("DisplayName");
   if($dispname -ne $null -and $dispname.IndexOf("SQL") -gt -1){
     "[" + $dispname + "]`t" + (Get-Item -Path "Registry::$_").GetValue("UninstallString");
   }
  }                                                                                           | # SQLが含まれるプログラムのUninstallStringを取得
   Out-String -Stream                                                                         | # 文字列配列化
     ForEach-Object {$_.ToString().Trim() -replace ".*`t",""}                                 | # 各行のタブ文字以前を削除し、UninstallStringのみにする
       ForEach-Object {$_.ToString().Trim() -replace "MsiExec.exe \/X","MsiExec.exe /x """}   | # 各行をコマンドに変更①
         ForEach-Object {$_.ToString().Trim() -replace "MsiExec.exe \/I","MsiExec.exe /x """} | # 各行をコマンドに変更②
           ForEach-Object {$_.ToString().Trim() -replace "}","}"""}                           | # 各行をコマンドに変更③
             ForEach-Object {Invoke-Expression "${_}"}                                          # 各行を実行

3.GACから削除

  • 管理者権限コマンドプロンプトで実行

REM ======================= 
if exist "%windir%\assembly\GAC\*SQLServer*" del /s /q /f "%windir%\assembly\GAC\*SQLServer*" 
if exist "%windir%\assembly\GAC_32\*SQLServer*" del /s /q /f "%windir%\assembly\GAC_32\*SQLServer*" 
if exist "%windir%\assembly\GAC_64\*SQLServer*" del /s /q /f "%windir%\assembly\GAC_64\*SQLServer*" 
if exist "%windir%\assembly\GAC_MSIL\*SQLServer*" del /s /q /f "%windir%\assembly\GAC_MSIL\*SQLServer*" 
REM =======================

4.レジストリキーを削除

  • 管理者権限コマンドプロンプトで実行
  • 名称にMSSQL又はSQL Serverが含まれるレジストリキーを削除

for /f "delims= usebackq" %i in (`reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft" ^| findstr /C:"MSSQL" /C:"SQL Server"`) do (reg delete "%i" /f)

5.SQLServer関連のフォルダの削除

  • 管理者権限コマンドプロンプトで実行

REM =======================
if exist "%USERPROFILE%\Local Settings\Application Data\Microsoft\Microsoft SQL Server" rmdir /S /Q "%USERPROFILE%\Local Settings\Application Data\Microsoft\Microsoft SQL Server"
if exist "%USERPROFILE%\Application Data\Microsoft\Microsoft SQL Server" rmdir /S /Q "%USERPROFILE%\Application Data\Microsoft\Microsoft SQL Server"
if exist "%USERPROFILE%\All Users\Application Data\Microsoft\Microsoft SQL Server" rmdir /S /Q "%USERPROFILE%\All Users\Application Data\Microsoft\Microsoft SQL Server"
if exist "%ProgramFiles%\Microsoft SQL Server" rmdir /S /Q "%ProgramFiles%\Microsoft SQL Server"
if exist "%ProgramFiles(x86)%\Microsoft SQL Server" rmdir /S /Q "%ProgramFiles(x86)%\Microsoft SQL Server"
REM =======================

6.TEMP内のリソース削除

  • 管理者権限コマンドプロンプトで実行
  • 使用中で削除できなかった物は無視で良い

del %TEMP%\* /S /Q
del %systemroot%\temp\* /S /Q

91.インストールディレクトリや共有機能ディレクトリを変更した場合は、自分で削除

99.OS再起動

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information

What you can do with signing up