こんにちは。SQL Server サポート チームです。
今回は、Windows 11/Windows Server 2022 に SQL Server をインストールする際に、インストール先のディスクのセクター サイズが 4KB よりも大きなため、インストールが失敗した場合の対処策の情報です。
SQL Server では 4KB よりも大きなセクター サイズをサポートしていないため、4KB よりも大きなセクター サイズのディスクに SQL Server をインストールしようとすると、インストールが失敗します。
詳細については、以下の公開情報に記載されています。
4 KB を超えるシステム ディスク セクター サイズに関連するエラーのトラブルシューティング
上記の詳細情報をもとに、本事象に該当するか確認する方法や対処策をこちらでもご案内します。
◆事象
Windows 11/Windows Server 2022 に SQL Server をインストールする際に、インストール先のディスクが 4KB よりも大きなセクター サイズの場合、SQL Server のインストールが失敗します。
◆本事象の発生する対象
Windows 11/Windows Server 2022 に SQL Server をインストールする場合に、SQL Server のインストール先ディスクのセクター サイズが、4KB よりも大きい場合に本事象が発生します。
同じディスクを使用する場合でも、Windows 10 ではこの事象は発生しません。
そのため、Windows 10/Windows Server 2019 のときは SQL Server がエラーなく動作している環境でも、Windows 11/Windows Server 2022 にアップデートすることで、Windows 11/Windows Server 2022 が 4KB よりも大きなディスクのセクター サイズを認識するようになり、SQL Server サービスの開始が失敗するケースもあります。
◆発生対象に該当するか確認する方法
Windows 11/Windows Server 2022 への SQL Server のインストールが失敗する場合、または、Windows 11/Windows Server 2022 へアップデート後に SQL Server サービスの起動が失敗する場合、以下を確認し、該当する場合は後述の対処策を実施ください。
【確認方法】
SQL Server のインストール先のドライブを fsutil コマンドで確認し、 PhysicalBytesPerSectorForAtomicity または PhysicalBytesPerSectorForPerformance が 4096 よりも大きい値か確認します。どちらかでも大きい場合は対処策を実施します。
確認手順
1. タスクバー上の虫眼鏡のマークをクリックし、検索する文字として「コマンド」と入力します。
2. 最も一致する検索結果として、コマンド プロンプトが表示されますので、[管理者として実行] をクリックします。
3. 「このアプリがデバイスに変更を加えることを許可しますか?」という画面が表示されますので [はい] をクリックします。
4. コマンド プロンプトに以下のコマンドをコピーして実行します。
fsutil fsinfo sectorinfo C:
※ SQL Server のインストール先が C: ボリューム以外の場合、対象のボリュームを指定するように変更して実行ください。
対象のボリュームが E: ボリュームの場合は以下のように実行します。
fsutil fsinfo sectorinfo E:
5. 出力内容の PhysicalBytesPerSectorForAtomicity と PhysicalBytesPerSectorForPerformance を確認し、4096 よりも大きい値か確認します。
どちらかだけでも 4096 よりも大きい場合、本公開情報の事象に該当しまので、以下の対処策を実施します。
◆対処策
レジストリの設定を変更することで対処します。
レジストリを誤って変更すると、深刻な問題が発生するため、変更するコマンドを実行する際には十分にご注意ください。
レジストリの設定を変更する前には、対象のレジストリのバックアップも取得します。
レジストリのバックアップ
1. タスクバー上の虫眼鏡のマークをクリックし、検索する文字として「コマンド」と入力します。
2. 最も一致する検索結果として、コマンド プロンプトが表示されますので、[管理者として実行] をクリックします。
3. 「このアプリがデバイスに変更を加えることを許可しますか?」という画面が表示されますので [はい] をクリックします。
4. コマンド プロンプトで以下の 4 つのコマンドを順次実行し、バックアップを保存するフォルダー C:\temp を作成し、C:\temp に対象のレジストリのバックアップを保存します。
cd \
mkdir temp
cd temp
REG SAVE "HKLM\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device" reg-backup.hiv
対処手順
1. タスクバー上の虫眼鏡のマークをクリックし、検索する文字として「コマンド」と入力します。
2. 最も一致する検索結果として、コマンド プロンプトが表示されますので、[管理者として実行] をクリックします。
3. 「このアプリがデバイスに変更を加えることを許可しますか?」という画面が表示されますので [はい] をクリックします。
4. コマンド プロンプトに以下のコマンドをコピーして実行します。
REG ADD "HKLM\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device" /v "ForcedPhysicalSectorSizeInBytes" /t REG_MULTI_SZ /d "* 4095" /f
5. 次に、コマンド プロンプトに以下のコマンドをコピーして実行します。
REG QUERY "HKLM\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device" /v "ForcedPhysicalSectorSizeInBytes"
6. 上記の手順 5. の実行結果が以下であることを確認します。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\stornvme\Parameters\Device
ForcedPhysicalSectorSizeInBytes REG_MULTI_SZ * 4095
7. 対処手順は以上です。
SQL Server のインストールに失敗してる場合、Windows を再起動し、SQL Server をインストールします。
Windows 10/Windows Server 2019 から Windows 11/Windows Server 2022 へのアップグレード後に SQL Server サービスの起動が失敗している場合、Windows を再起動し、SQL Server サービスが起動することをご確認ください。