記事検索

検索ワードを入力してください。
Sky Tech Blog
Microsoft Azure上の​Windows Serverで​Microsoft SQL Serverの​インストールエラーが​出た​話

Microsoft Azure上の​Windows Serverで​Microsoft SQL Serverの​インストールエラーが​出た​話

Microsoft Azure上のWindows ServerでMicrosoft SQL Serverをインストールする際に発生したエラーの原因と対処方法について説明しています。特に、ディスクのセクタサイズが原因でエラーが発生することに焦点を当て解説します。

はじめに

先日、Microsoft Azure上でMicrosoft SQL Serverのインストールエラーに遭遇しました。

あまり見た事のないエラーコードだったのでWebで検索してみたところ、次のMicrosoft社のドキュメントがヒットしました。 『Windows Server 2022 Azure 仮想マシンでのセクター サイズ エラーで SQL Server のインストールが失敗する』

このドキュメントに記載のエラーログと実際のエラーログが一致したため、この事象に該当すると判断し、記載通りの手順で対処できたのですが、備忘のために書いてみます。

原因と​対処

この事象ですが、ディスクの「セクタサイズ」に起因しています。
Microsoft Azureで作った仮想サーバーのディスクにデフォルトで設定されているセクタサイズが、Microsoft SQL Serverに対応していないセクタサイズのため、インストールでエラーが出るようになっています。
対処方法ですが、仮想サーバー上でレジストリを変更し、Microsoft SQL Serverに対応したセクタサイズを利用するようにすることで対処可能です。

「セクタサイズ」って​なんですか

上記をご参考にMicrosoft社のドキュメントに沿ってご対応頂ければ問題ないのですが、「セクタサイズ」ってなんだ、となった方のために解説します。

「セクタサイズ」は読んで字のごとく、「セクタ」の「サイズ」です。
「セクタ」は「部門」などと訳されますが、簡単に言えば、ハードディスクやSSDなどの記憶媒体において、データを記憶するために細かく区切った最も小さな一単位となります。そして、この「サイズ」、言い換えると1セクタあたりのデータ容量が、「セクタサイズ」となります。

文章で書くと分かりにくいので図にしてみると、下図のようになります。

この「セクタ」の役割は、データの効率的な読み書きにあります。物理的なディスクを区切っていき、各区切りごとに「番地」を与えることで、データの効率的な読み書きができるようにしています。

また、効率化の観点で付け加えると、関連した用語に「クラスタ」というものもあります。「クラスタ」は「セクタ」を複数個まとめたもので、OSはこの「クラスタ」単位でデータを読み書きすることで、データのやり取りを効率化しています。

少し話がそれたので、「セクタサイズ」に話を戻します。

この「セクタサイズ」ですが、以前は、「1セクタは512バイト」が主流でした。
ただ、近年は「1セクタは4KB」としているディスクが増えつつあります。セクタサイズを増やす理由も効率化です。
ハードディスクの大容量化に伴い、限られた物理的な領域を効率よく利用する必要が出てきたため、セクタサイズを増やしてディスクの容量を増やしています。
そして、このセクタサイズが4KBを超え、8KBやそれ以上になるディスクも現れてきました。

本題に​戻って

4KBを超えるセクタサイズのディスクが現れてきたことが、冒頭の問題に繋がっています。

現在、Microsoft Azureで作成できる最新の仮想マシンの一部は、ディスクのセクタサイズが8KBで作成されるようになっています。
一方、Microsoft SQL Serverで利用可能なセクタサイズは512バイト、または4KBのみで、8KBには非対応です。
このように、仮想マシンのディスクのセクタサイズと、Microsoft SQL Serverで対応しているセクタサイズに違いがあることが、冒頭に書いたエラーの具体的な原因です。

対処に​ついて

セクタサイズは、一般的にハードウェア側で規定されます。 ただし、OSによっては、OSレベルで利用するセクタサイズを調整できる仕組みが備わっており、Windows OSであればレジストリによる制御が可能です。そこで、今回の事象では、Microsoft SQL Serverが対応している4KBのセクタサイズが利用されるようレジストリで制御することで、Microsoft SQL Serverをインストールできるようにしています。

まとめ

ここまで書いてきたように、Microsoft AzureにMicrosoft SQL Serverをインストールする際は、ディスクのセクタサイズにより、エラーが発生することがあります。あらかじめコマンドでセクタサイズを確認しておけば、レジストリ変更で回避可能ですので、インストール作業の前に一度セクタサイズをご確認いただくようにすると確実かもしれません。

また、SKYSEA Client Viewにつきましても、マスターサーバーなどでMicrosoft SQL Serverを利用しており、SKYSEA Client Viewのサーバーインストール時にMicrosoft SQL Serverも同時にインストールされます。
したがって、Microsoft AzureへのSKYSEA Client Viewのサーバー構築時には同様のエラーが発生する恐れがございますので、こちらの作業時も、セクタサイズに気を配ってくださいますと幸いです。


\シェアをお願いします!/
  • X
  • Facebook
  • LINE
キャリア採用募集中!

入社後にスキルアップを目指す若手の方も、ご自身の経験を幅広いフィールドで生かしたいベテランの方も、お一人おひとりの経験に応じたキャリア採用を行っています。

Sky株式会社のソフトウェア開発や製品、採用に関するお問い合わせについては、下記のリンクをご確認ください。
お問い合わせ
ホーム