Windows Server 2022に Microsoft SQL Server 2022をインストールして DBサーバーにします。
こんにちは。
SQL Server の説明は必要ないと思いますので、一気に入れていきます。
(のっけからぶっ飛ばしつつ)
スマホの方には申し訳ないのですが、以降原寸大の大きな画像を載せています。
評価版ダウンロードはこちら。
SQL Server のダウンロード
リンクを行きますと、このような画面になりますので、必要事項を記載して下の方にあるダウンロードするを押します。
「英語しかないの?」と思われるかも知れませんが、ご安心下さい。
ここでダウンロードするのはダウンローダーで、SQL Serverの本体ではありません。
(それにダウンローダー(後述)には日本語が出ますw)
EXEダウンロードの下の「64ビットエディション」をクリックします。
ダウンロードが完了しますと SQL2022-SSEI-Eval.exe という 4MBぽっちのファイルができました。
このファイルを Windows Server 2022に持っていきましょう。
Windows Server 2022のインストールについては「Windows Server 2022 インストール」に書いています。
Windows Server 2022に上記のファイル(SQL2022-SSEI-Eval.exe)がある前提です。
SQL2022-SSEI-Eval.exe をダブルクリックして実行します。
ここでネット経由でインストールもできそうですが、今後の検証の際に何度もインストールすることを鑑みて、インストールメディアのデータを入手することにします。
[メディアのダウンロード]をクリックします。
[言語の選択]に[日本語]を選択します。
[どのパッケージをダウンロードしますか?]に[ISO]を選択します。
ダウンロードの場所は…ここで良いでしょう。
ダウンロードを押します。
今度は SQL Server 2022 日本語版の本体(1.3GB)インストールイメージファイルがダウンロードされますので、ちょっと時間がかかります。
ダウンロードが完了したら、閉じるを押します。
ダウンロードフォルダに SQLServer2022-x64-JPN.iso というファイルができました。
ここからインストール作業になります。
ダウンロードしたファイルは、インストールDVDのイメージファイルなので、ドライブとしてマウントすることができます。
SQLServer2022-x64-JPN.iso ファイルを選んで右クリックして出てくるメニューから[マウント]を選択します。
なぜか Eドライブを飛ばして Fドライブになりました。
setup.exe をダブルクリックして実行します。
伝統の分かり辛いインストーラの画面が出てきて安心しました。
左の灰色のところにある[インストール]をクリックします。
相変わらずの分かり辛さで安心です。
一番上にある[SQL Server の新規スタンドアロン インストールを実行するか、既存のインストールに機能を追加]をクリックします。
評価版として使いますので、このまま次へを押して下さい。
ここで本物のライセンス番号を入れれば、ちゃんとライセンスされたものになります。
ソフトウェアライセンス条項と「プライバシーに関する声明」に目を通し、[ライセンス条項と次に同意します]にチェックを入れて、次へを押します。
[Microsoft Update を使用して更新プログラムを確認する]にチェックを入れて、
次へを押します。
次へを押します。
Windowsファイアウォールで、SQL Server が使用する 1433/tcp が閉じられているのでワーニングが出ていますが、今は無視します。
とりあえず素のデータベース機能だけ使うことにするので、[データベースエンジンサービス]にチェックを入れ、次へを押します。
これらは後から付けたり外したりできます。
インストールするインスタンスが1つの場合は、「規定のインスタンス」(実際は「MSSQLSERVER」という名前)で良いのですが、2つ以上のインスタンスを作ることが決まっているのであれば、全てのインスタンスを「名前付きインスタンス」にしておく方が良いです。
私は1つのときでも名前付きにしていました。
ここでは「規定のインスタンス」で作ることにして、次へを押します。
この画面の[サービスアカウント]タグの方です。
Windowsサービスに3つのサービスを新規登録しますが、OS起動時にそれぞれどうするかの設定です。
ここでの使い方であれば、このまま変えなくて良いでしょう。
[照合順序]タブは少々問題が出ることがあります。
これはデータソート時に使われるのですが、画面に出ているデフォルトの設定を見ると、[大文字・小文字を区別しない](英字の)・[かなを区別しない](平仮名/カタカナ) とあります。
それが求められる要件であれば良いのですが、経験上は区別したいケースが多かったようです。
カスタマイズを押してみましょう。
もし必要であればチェックを入れて下さい。
照合順序に関してはかなり突っ込んだ話になってしまいますので、照合順序と Unicode のサポートを参照して下さい。
変更をしたら、OKを押します。
次へを押します。
次の画面は盛りだくさんです。
[サーバーの構成]タブを選択します。
●認証モード
[Windows認証モード]
WindowsOS上で認証されたアカウントはそのまま SQL Serverを使えるモード。
Active Directoryでアカウント認証しているなど、ガチガチに Microsoft製品で統一されているネットワーク環境ならこちら。
[混合モード]
Windows認証モードに加えて、(Sybase由来の)SQL Server独自のアカウント体系(これが一般的なアカウントとパスワードの体系)を持たせるモード。
私の経験上はこちらになることが多かったです。
AD参加していないPCやアプリケーションサーバーからのアクセスもあるので[混合モード]にしておきます。
[sa]という管理者アカウントが自動的に作られますので、そのパスワードを設定します。
[SQL Server 管理者の指定]には、Windows Server 2022の管理者権限を持つ administratorsグループに入っているアカウントにしておくと良いかと思います。
現在のユーザーの追加を押すと、Windows Server 2022にログオンしているアカウントが設定されます。(ここではAdministrator)
他のタブはそのままにして、次へを押します。
ちなみにこれは追加を押した時の画面です。
インストールを押します。
しばらく待ちます。
もしこれが出たら、OKを押します。
閉じるを押します。
コイツは×で消しておきましょう。
これでインストールができました。
先程再起動しろとか言われましたので、OSを再起動しておきます。
ここから DBの操作に入りますが、SQL Serverの GUIツール SQL Server Management Studio (SSMS) をインストールしましょう。
SSMSはサーバーにないとダメって訳じゃないんですが、入れておいた方が無難ですね。
作業用のクライアントPCにも入れておくと良いと思います。
なお SSMSは Azureの DBサービスである SQL Database(中身は SQL Server)にも使えますよ。
昔は SQL Serverに同梱されていましたが、今は別体になっていてダウンロードするようになっています。
ダウンロードはこちら。
SQL Server Management Studio (SSMS) のダウンロード の使用できる言語の段落
ここにある「日本語」ってリンクをクリックしましょう。
2023年2月22日時点での最新版は 19.0.1 でした。
ダウンロードが完了すると SSMS-Setup-JPN.exe という日本語版のファイルができました。
早速 Windows Server 2022に持っていって実行します。
インストールを押します。
しばらく待ちます。
閉じるを押します。
インストールできました。
Windowsのスタートメニューから[Microsoft SQL Server Tools 19]-[SQL Server Management Studio 19]を選択します。
ログイン画面になります。
ローカルでログインするので、Windows認証を使ってノーパスワードで行きます。
このまま接続を押します。
ログインできました。
これが SSMSの画面です。
新しいデータベースを作ります。
ツリーの[データベース]で右クリックするとメニューが出ますので、[新しいデータベース]を選択します。
[データベース名]に好きな名前(ここでは「testdb」としました)を入れて、OKを押します。
(システムデーターベースに対して)「ユーザーデータベース」と呼ばれるデータベース(ここでは[testdb])ができました。
[テーブル]の上で右クリックするとメニューが出ますので、[新規作成]-[テーブル]と選びます。
テーブルを作ります。
[列名]に列名(ここでは「name」としました)を入れ、[データ型]にデータ型(ここでは「char(50)」(固定長の50文字)を入れました。
[name]列を主キー(プライマリキー)にしようと思います。
[name]列の一番左にある▶で右クリックするとメニューが出ますので、[主キーの設定]を選択します。
テーブルの設定は完了です。
設定を保存します。
タブ(黄色っぽい所)を右クリックするとメニューが出ますので、一番上の[XXXXの保存]を選択します。
ここでテーブル名を入れます。
前のウィンドウで設定させれば良いのに…と思います。
テーブルができました。
なお、sqlcmdコマンドでのテーブル作成ならこう。
C:\Users\Administrator>sqlcmd ← Windows認証で入るのでパスワードを入れていません
1> create table testtable ( name char(50) primary key )
2> go
続いてデータをインサートしてみます。
SSMSでもデータ操作ができますが、運用管理者は SSMSに頼っていてはいけません。
黒い画面でもできるよう、常に備えておきましょう。
1> insert into testtable values('aaa')
2> go
(1 行処理されました)
1>
1件入りました。
データベースとしてちゃんと稼働しています。
他の PCから利用する場合(ネットワーク経由で SQL Serverにアクセスする)には、Windows Defender ファイアウォールに穴を開けないといけません。
1433/tcpが対象です。
Windows Defender ファイアウォールの穴開けについては「Windowsサーバーのファイアウォール」に書いています。
このような設定で[受信の規則]に1つ追加しました。
なお SQL Server のクライアントドライバである、Native Clientは SQL Server 2022では非推奨だそうです。
SQL Server Native Client
OLE DBや ODBCの新しいドライバは上記のリンクにあるもので良いとして、Native Clientに入っていた sqlcmdコマンドを使いたい場合どうするのかと思えば、別体でダウンロードできるようになっていました。
こちらに Windows版と Linux版のリンクがありますので、必要に応じてダウンロードしましょう。
(bcpコマンドもあるようです)
sqlcmd ユーティリティ
2024年11月6日時点で、SQL Server 2022に特化した日本語書籍を見つけられませんでした。
以下の本が 2020年10月4日発刊で、SQLサーバーの日本語本としては一番新しいようですが…。