Movable Type CMSプラットフォーム Movable Type
ドキュメントサイト

Movable Type 5.1 ManualMovable Type 5.1 マニュアル

MS SQL Server 2008 で SQL Server認証 を利用する

最終更新日: 2017.10.06

ここではMS SQL Server 2008(以下 SQL Server 2008)で、SQL Server 認証を利用してデータベースにアクセスする方法を解説します。

SQL Server 2008 インストール時の注意事項

マイクロソフト、および自社の IT 管理部門などが提供する手続きに則って、データベースをセットアップしてください。 Movable Type Advanced(以下 MTA)は、インストール時に自動で必要なDBテーブルなどを作成します。

MTA のインストールを開始する前に、データベースに関する以下の情報を確認してください。

  • データベース名
  • データベース・ユーザー名
  • パスワード
  • DB サーバのホスト名 (localhost, サーバ名, あるいはサーバの IP アドレス)
  • SQL サーバの文字コード (UTF-8 あるいは Shift_JIS) [*1]
  • ポート番号 (標準では 1433)

SQL サーバの文字コードは UTF-8 をサポートするようになりましたが。以下の問題が確認されています。

  • PHP が対応していないため、ダイナミックパブリッシングを行う場合はShift_JISで作成する必要があります。
  • Shift_JISでのデータベース設定は [mt-wizard.cgi] が出力する設定を参考にして下さい。

SQL Server が Windows認証 (Windows integrated authentication) を利用するように設定されている場合 (推奨)、データベースへアクセスするためのユーザー名と、パスワードは必要ありません。SQL Server において、Windows認証とSQL Server認証の統合認証(Mixed Authentication mode) を用いた認証が行われている場合 DBUser, DBpassword の設定が必要となります。ここではSQL Server認証(ID, PASSWORD 有り)を利用する事を前提とした解説を行います。

また、以下の CPAN モジュールのインストールが必要です。

  • DBI (バージョン1.21以上)
  • DBD::ODBC

SQL Server 2008 認証方式の変更

SQL Server 2008 をインストールすると、GUIのセットアップツール"Microsoft SQL Server 2008 Management Studio"(以下 Management Studio)もインストールされます。

以下、変更方法の例となります。

  1. Management Studio を起動します

    起動画面

  2. Microsoft SQL Server Management Studio が起動したので [Windows認証] で接続します。

    起動終了、接続

    接続完了

  3. サーバーのプロパティを選択します

    [MS SQL Management Studio]

  4. [サーバーのプロパティ] が表示されました

    [サーバーのプロパティ]

  5. [サーバーのプロパティ] > [セキュリティ] を選択します

    [サーバーのプロパティ] > [セキュリティ]

    • [サーバー認証] : [Windows 認証モード] から [SQL Server 認証モードと Windows 認証モード]に変更
    • [OK]ボタンをクリック

SQL Server 2008 データベースの作成

  1. [データベース] を右クリックし、[新しいデータベース] を選択します

    新規データベースの作成

  2. [新しいデータベース] 画面の [全般] を修正します

    [新しいデータベース] 画面 > 全般

    • データベース名: mta
    • 所有者: <規定>
  3. [新しいデータベース] 画面の [オプション] を修正します

    [新しいデータベース] 画面 > オプション

    • 照合順序: Japanese_Unicode_CI_AS(UTF-8、大文字・小文字を区別しない、アクセント文字を区別する)
    • 復旧モデル: 完全
    • 互換性レベル: SQL Server 2008 (100)
  4. [OK] ボタンをクリックします

新規ユーザーの作成

  • [セキュリティ] > [ログイン] > [新しいログイン] を選択

    新規ログインを作成します

  • 認証方式を[Windows 認証] から [SQL Server 認証] に変更
  • [ログイン名] を"Melody"に、[パスワード] と [パスワードの確認入力] に"Nelson"を入力
  • [パスワードポリシーを適用する] からチェックボックスを外す
  • [ユーザーマッピング]で、Melodyにデータベースのdb_owner権限を付与
  • [OK] ボタンをクリックする

データベースへの接続テスト

Management Studioを使ってデータベースへ接続できるか確認します。

  1. Management Studio のデータベース接続画面

    データベース接続画面

    [認証] 方式が [SQL Server 認証]になっている事を確認して下さい。

    • 認証 : SQL Server 認証
    • ログイン : Melody
    • パスワード : Nelson
  2. [接続] ボタンをクリックしてください。

    接続完了画面

    接続が完了したら、システムレベルでデータベースへの接続が出来たことが解ります。

    セキュリティのログインにデフォルトユーザー [sa] と、今回作成した [Melody] アカウントだけが居る事が確認できました。

mt-wizard.cgi でのデータベース設定

データベース設定画面では以下の様に入力します。

[mt-wizard.cgi - データベース設定]

mt-config.cgiのデータベース設定

#======== DATABASE SETTINGS ========

ObjectDriver UMSSQLServer
Database mta
DBHost localhost
ODBCDriver SQL Server Native Client 10.0
DBUser Melody
DBpassword Nelson

これで、SQLSever認証にて接続が可能になりました。