MS SQLってExpress(昔のMSDE)でそれも自動的にインストールされているのを知っているくらいで実はいじったことがない人が多いのではと。
なので、いざ、ちゃんと入れようとするとモメるモメる。また、今のMS SQLはサンプルデータベースがインストールされないので、いざ検証で立ち上げようとすると、何もデータベースが入っていないのを持ってくる人がいる。テスト用のデータベースもどっかから持ってきて欲しいんだが。。。昔は至れり尽せりだった。。。
というわけで、検証でパッと使えるMS SQLのインストール方法。例によって覚書。ちなみに、データベース用語(例えば、インスタンスとか)は知っているものということで解説はあんまし入れません。
MS SQLの入手
買わなくてもMS SQL Server 2019はここから手に入る。
https://www.microsoft.com/ja-jp/sql-server/sql-server-downloads
ちなみに諸事情(SQL Expressのインストーラーの都合で)で、MS SQL Server 2016を欲しい場合は、無償で加入できる、VIsual Studio Subscriptionの無償版で落とせる。
https://my.visualstudio.com/Downloads?q=SQL%20Server%202016%20Developer
Visual Studioの無償版くらいは持ってても損はないと思う。コンパイラー使いたいでしょ?たくない?
私は、理由がなければMS SQL Server 2016を入れる。私わ。
Express EditionとDeveloper Editionがある。Expressはコンパクトにテストしたい。トランザクションログまでは使わない人向け。Developer Editionは、フル機能が使えるもの。無料なので、もちろん本番環境での利用はNG。というか何が起きても知らない。。。
今回はDeveloper Editionのインストールを選択する。
ダウンロードされてきたインストーラーはWEBインストーラーなので、これ単体でインストールできるわけではない。
実行すると、以下の画面が出てくる。毎度ダウンロードしたくないのでメディアのダウンロードを選択
ISOイメージを落とす
また、ダウンロードしたインストーラーは、SQL Serverだけなので、GUIのクライアントがない。インストーラーに入っているような素振りを見せるが入っていないので、MS SQL Management Studioもダウンロードしておく。
https://docs.microsoft.com/ja-jp/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver15
MS SQL Serverのインストール
インストール実行前にWindows Firewallを無効にしておく。(インストーラーで警告が出るのが気持ち悪いため。)
netsh advfirewall set allprofiles state off
インストーラーをクリックしたら、インストールにあるSQL Serverの新規スタンドアロン インストールを実行するか。。。をクリック。
ちなみに、新しいインスタンスを追加するときもこれのはず。
エディションとライセンスを選ぶ。実は、評価版とか製品版とかにもできる。以後、解説のない部分は理由がない限りは触らない。
テストだけならデータベースエンジンサービスだけでいい。
インスタンスの設定。名前付きインスタンスも作成可能。Expressのインスタンスだとなぜか、名前付きインスタンスがデフォルトだったような。
認証の設定。Macからもいじるのでsaを有効にしておく。SQL Server管理者も忘れずに設定しておく。これ忘れるとあとでManagement Studioで改めて設定する必要がある。
これでインストール
SQL Serverの設定
SQL Server Configuration Managerを開いてMSSQLSERVERのプロトコルを開く。
TCP/IPを有効にしないとsaでログインするときに困る。
MSSQLSERVERインスタンスを再起動
Management Studioのインストール
これは単にSetupを実行すればいい。実行するとこんな画面に。認証が通るところから認証できる方法でログイン。同一サーバに入れているならそのまま接続をクリック
ログインできた。
これで終わり。。。ではない。サンプルDBがない。Adventure Worksがない!
サンプルデータベースのインストール
Scott Tiger的なサンプルデータベースは以下からダウンロードできる。
https://github.com/Microsoft/sql-server-samples/releases/tag/adventureworks
2019のが無いので、2017ので代用
このファイルをCドライブのルートにダウンロードしておく。リモートから接続の場合は、リモートの環境ではなく、サーバにダウンロードしておくこと。。。
ダウンロードしたDBはデータベースの復元からリストアをする。
デバイスを指定して、ダウンロードしたAdventure Worksのバックアップデータを指定する。
これで見慣れた?Adventure Worksができた。
トランザクションログを使えるようにするには、プロパティを開く
オプションで指定する。完全か一括ログにする。
これで本当に終わり。本番環境には耐えないけど、検証環境としては動くかもと思う。
Macからもアクセスできた。SQL Pro Studio、Windows認証が使えるようになってた。saのパスワードはいらなかった。。。まぁ、いいか。