‘SQL Server’ カテゴリーのアーカイブ

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

2009年5月14日 木曜日

WebアプリケーションのデータベースとしてSQL Server 2008を利用する場合、そのアプリケーション専用のデータベースを作成しておくと管理しやすいです。
レンタルの共有サーバーなどで、SQL Server 2008のデータベース数に制限がある場合は、仕方ないですが。

以下に、Microsoft SQL Server Management Studioを利用して、SQL Server 2008 Expressにデータベースを追加する手順を示します。

  1. SQL Server 2008 Expressのインストール
    当サイトの「SQL Server 2008 Express」を参照する。
  2. PHP on IISからSQL Server 2008を利用するための設定
    当サイトの「PHP on IISからSQL Serverを使う」を参照する。
  3. SQL Serverデータベースの作成
    1. Microsoft SQL Server Management Studioを起動する。
      [スタート]メニュー - [プログラム] - [Microsoft SQL Server 2008] - [SQL Server Management Studio]を選択して起動し、サーバーに接続する。
    2. 左側ツリーで[データベース]を右クリックし、「新しいデータベース...」を選択する。
      sql_server_newdb01
    3. 「新しいデータベース」画面で、「データベース名」を入力する。
      sql_server_newdb02
  4. IISユーザーをアプリケーションのデータベースにマッピングする。
    1. 左側ツリーで[セキュリティ] - [ログイン] - [NT AUTHORITY¥IUSR]をダブルクリックする。
      sql_server_newdb03
    2. ログインのプロパティ画面の左側で[ユーザー マッピング]ページを選択する。
      • 「このログインにマップされたユーザー」の一覧で、3-3で入力したデータベースを選択する。
      • 「{データベース名}のデータベース ロール メンバシップ」の一覧で、「db_owner」を選択する。

      sql_server_newdb04

以上

[参考書籍]

PHP on IISからSQL Serverを使う

2009年5月14日 木曜日

IIS上のPHPからSQL Server2008/2005にアクセスするには、以下の手順を踏む必要があります。

  1. Microsoft SQL Server Native Clientのインストール
    Microsoft SQL Server 2008 用 Future Packのダウンロードページの注意事項の一覧から、IISが稼動している環境にあったMicrosoft SQL Server 2008 Native Client(sqlncli*.msi)をダウンロードし、インストールする。
    ページ先頭にある、一括でのダウンロードなどでもかまわない。
  2. SQL Server Driver for PHPのインストール
    1. SQL Server Driver for PHP Version 1.1のダウンロードページから、ファイルをダウンロードする。
    2. ダウンロードしたファイルを適当なフォルダにファイルを展開する。
    3. 展開したファイルの内、以下のファイルをPHPのextension_dir(ex. C:¥php52¥ext)にコピーする。
      • php_sqlsrv_52_nts_vc6.dll
        (Non-thread-safeのPHP5.2を利用している場合)
      • php_sqlsrv_52_ts_vc6.dll
        (Thread-safeのPHP5.2を利用している場合)
      • php_sqlsrv_53_nts_vc9.dll
        (VC9バージョンでNon-thread-safeのPHP5.3を利用している場合)
      • php_sqlsrv_53_ts_vc9.dll
        (VC9バージョンでThread-safeのPHP5.3を利用している場合)
      • php_sqlsrv_53_nts_vc6.dll
        (VC6バージョンでNon-thread-safeのPHP5.3を利用している場合)
      • php_sqlsrv_53_ts_vc6.dll
        (VC6バージョンでThread-safeのPHP5.3を利用している場合)

      ※Non-thread-safeかThread-safeかは、PHPのフォルダにphp5.dllかphp5ts.dllのどちらがあるかで判断できる。

      • php5.dllがある場合、Non-thread-safe
      • php5ts.dllがある場合、Thread-safe

      ※VC9バージョンかVC6バージョンかは、%PHP_HOME%¥snapshot.txtに、「msvcr90.dll」という文字列が含まれるかどうかで判断できる。

      • msvcr90.dllが含まれる場合、VC9
      • msvcr90.dllが含まれない場合、VC6
  3. php.iniファイルの編集
    php.iniファイルにextensionとして、追加したファイルを指定する。
    ex.) extension=php_sqlsrv_53_ts_vc9.dll
    ※ファイル名を変更しても良い
  4. SQL Serverにログインの作成
    IISからWindows認証でログインできるよう、SQL Serverに「NT AUTHORITY¥IUSR」ログインを作成する。

    1. Microsoft SQL Server Management Studioを起動
      [スタート]メニュー - [プログラム] - [Microsoft SQL Server 2008] - [SQL Server Management Studio]を選択し、ログインする。
    2. 左側のツリーで「ログイン」を右クリックし、「新しいログイン...」を選択する。
      sql_server_login01
    3. 「ログイン」 - 新規作成画面で必要な情報を入力する。
      • 「全般」ページ
        ログイン名:NT AUTHORITY¥IUSR
        sql_server_login02
      • 「ユーザー マッピング」ページ
        「このログインにマップされたユーザー」の一覧で、PHPから利用したいデータベースを選択する。
        sql_server_login03

以上

参考)

[2009/08/19] SQL Server Driver for PHP 1.1 CTPのリリースに伴い、バージョンに合わせて内容を修正しました。
SQL Server Driver for PHP 1.0をご利用の場合は、Microsoft SQL Server 2005 用 Future PackのNative Clientをインストールしてください。

[参考書籍]

SQL Server 2008 Express

2009年4月27日 月曜日

WebアプリケーションのデータベースというとMySQLやPostgreSQLなどのオープンソースデータベースが一般的ですが、Microsoft SQL Serverを利用することができるものもあります。
そのようなWebアプリケーションであればデータベースにSQL Serverを選択することで、可用性や耐障害性を強化することが可能です。

今回は、SQL Serverの無償版であるMicrosoft SQL Server 2008 ExpressをWindows Server 2008にインストールする手順を以下に示します。

  1. 事前に必要なソフトウェアのインストールと設定
    SQL Server 2008 Expressのインストールには、Windows Installer 4.5とWindows PowerShell 1.0が必要です。

    • Windows Installer 4.5のインストール
      ダウンロードページからインストールするWindowsの環境にあったインストーラをダウンロードしてインストールする。
      インストールするOSに対応するインストーラは、ダウンロードページの「注意事項」に記載されている。
      Windows Server 2008の場合は、

      • 32bit: Windows6.0-KB942288-v2-x86.msu
      • 64bit(x86_64):Windows6.0-KB942288-v2-x64.msu
      • Itanium:Windows6.0-KB942288-v2-ia64.msu
    • Windows PowerShellのインストール
      1. [スタート] - [管理ツール] - [サーバー マネージャ]を起動する。
      2. 左側ツリーで「機能」を選択する。
        右側の機能に表示される一覧に、「Windows PowerShell」が表示されている場合はインストール済み。
        そうでない場合は「機能の追加」をクリックする。
        powershell-setup01
      3. 「機能の選択」画面で「Windows PoserShell」を選択する。
        powershell-setup02
      4. 「インストール オプションの確認」画面でWindows PowerShellがインストールされることを確認し「インストール」する。
        powershell-setup03
      5. 「インストールの結果」画面で、インストールが正常に完了したことを確認する。
        powershell-setup04
      6. 「サーバー マネージャ」に戻り、Windows PowerShellが機能に含まれていることを確認する。
        powershell-setup05
    • SQL Server Database Engineサービスのアカウントを作成する。
      1. [スタート] - [管理ツール] - [サーバー マネージャ]を起動する。
      2. 左側ツリーの[構成] - [ローカル ユーザとグループ] - [ユーザー]を右クリックし、「新しいユーザー...」を選択する。
        sql_server_express-user01
      3. 「新しいユーザー」画面で、アカウント名とパスワードを入力し、「パスワードを無期限にする」にチェックをする。
        sql_server_express-user02
  2. SQL Server 2008 Expressのダウンロード
    Microsoft SQL Server 2008 Express with Advanced Servicesのダウンロードページより、インストール先のWindowsが32bitであれば「SQLEXPRADV_x86_JPN.exe」を、64bitであれば「SQLEXPRADV_x64_JPN.exe」をダウンロードする。
  3. ダウンロードしたファイルを実行すると、「SQL Server インストール センター」が起動する。
  4. システム構成をチェックする。
    1. 「システム構成チェッカー」をクリックする。
      sql_server_express-setup01
    2. 「セットアップ サポート ルール」画面で、失敗や警告が0になっていることを確認する。
      0じゃない場合は、「詳細の表示」ボタンをクリックして、失敗の原因を確認し、「合格」となっていない問題を解消する。
      sql_server_express-setup02
  5. 「SQL Server インストールセンター」画面に戻り、左側メニューの「インストール」をクリックする。
    sql_server_express-setup03
  6. 「SQL Server の新規スタンドアロン インストールまたは既存のインストールへの機能の追加」をクリックする。
    sql_server_express-setup04
  7. 「セットアップ サポート ルール」画面で、失敗や警告が0になっていることを確認する。
    (4-2.システム構成のチェックで確認済みのため、0になっているはず。)
    sql_server_express-setup02
  8. 「プロダクト キー」画面が表示されるが、SQL Server Expressでは入力の必要がないので、そのまま「次へ」をクリックする。
    sql_server_express-setup05
  9. 「ライセンス条項」画面で、「使用許諾契約書に同意する。」を選択する。
    sql_server_express-setup06
  10. 「セットアップ サポート ファイル」画面で、「インストール」をクリックし、インストールを実行する。
    sql_server_express-setup07
  11. 「セットアップ サポート ルール」画面で、問題となる失敗や警告が出ていないか確認する。
    「Windows ファイアウォール」が警告となる場合があるが、ここではそのまま進める。
    sql_server_express-setup08
  12. 「機能の選択」画面で、「データベース エンジン サービス」「管理ツール - 基本」「SQL クライアント接続 SDK」を選択する。
    sql_server_express-setup09
  13. 「インスタンスの構成」画面では、インスタンスの名前やIDなどを変更する必要がなければ、そのまま「次へ」をクリックする。
    sql_server_express-setup10
  14. 「必要なディスク領域」画面で、ディスク領域が不足していないことを確認する。
    sql_server_express-setup11
  15. 「サーバーの構成」画面で、SQL Server Database Engineサービスの「アカウント名」と「パスワード」に、前述(1-SQL Server Database Engineサービスのアカウントを作成する。)で作成したアカウントの情報を入力する。
    sql_server_express-setup12
  16. 「データベース エンジンの構成」画面で、SQL Server 管理者を指定する。
    SQL Serverの管理専用ユーザーを作成しても、既存のユーザーを指定しても良いだろう。
    sql_server_express-setup13
  17. 「エラーと使用状況レポート」画面で、エラー時などにMicrosoftに自動で送信する情報を指定する。
    これは、選択してもしなくても、どちらでもよい。
    sql_server_express-setup14
  18. 「インストール ルール」画面で、インストール処理がブロックされる原因がないか確認する。
    失敗や警告が0でない場合は、その問題を解消する。
    sql_server_express-setup15
  19. 「インストールの準備完了」画面で、設定を確認し、問題なければインストールする。
    sql_server_express-setup16
  20. 「インストールの進行状況」画面で、各機能のセットアップが成功していることを確認する。
    sql_server_express-setup17
  21. これで、SQL Server 2008 Expressのインストールは完了。
    sql_server_express-setup18
  22. IIS上のPHPからSQL Serverを利用する場合は、当サイトのPHP on IISからSQL Serverを使うに従って設定する。

以上

[参考書籍]