SQL Server 2005 機能紹介

管理、運用

最終更新日: 2007 年 2 月 7 日

このページの内容は公開・更新された当時のものです。

データベースの管理、運用では、充実した機能ツールの操作性、設定の簡略化などが求められます。SQL Server 2005 では、SQL Server 2000 で確立された操作性の高いツールに加え、より洗練された管理ツールを提供しています。

※各機能のタイトルの下に表示されているアイコンは、対応するエディションを表しています。

Mobile Edition  Express Edition  Workgroup Edition  Standard Edition  Enterprise Edition SQL Server 2005 Service Pack 2

トピック

実際の運用管理で重要となるポイント
SQL Server Management Studio によるデータベース管理
Configuration Manager でのサーバー管理
構成ツールによるコンポーネントの管理
データベースエンジン
メンテナンス プラン

実際の運用管理で重要となるポイント

システムの運用管理では、日々のメンテナンスに加え、障害発生などの緊急時に備えた事前対策や、事後対応のスピードが求められます。

システムのイベントやプロファイルを毎日確認して、何が発生しているのかを常に監視することも重要ですが、いざ障害が発生した時にどれだけ少ないダウンタイムでシステムの復旧が可能であるか、またそのような障害による損害を事前の準備によりどのくらい補うことができるかということについて予め考慮して運用していくことも重要となります。また、システム開発においては、テスト環境から本番環境への移行作業、あるいはシステム変更によるデータベース設定の変更作業の場合、内容が複雑であることによって、設定ミスやシステムの誤動作につながりかねません。SQL Server 2005 では、機能の充実と共に管理ツールの操作性の向上、複雑な管理作業の自動化など、よりシンプルな手順で行うための手段を提供しています。以下では、これらの管理ツールの機能についてご紹介します。

SQL Server 2005 による管理、運用

ページのトップへ

SQL Server Management Studio によるデータベース管理

SQL Server Management Studio は、データベースの設定、変更、ユーザー ログインなどのセキュリティに関わる設定や、運用管理に必要となる機能が搭載されたツールです。SQL Server Management Studio には、SQL Server 2000 の Enterprise Manager、クエリ エディタ、分析マネージャとなどのツールが、統合され、より操作性の高いツールに生まれ変わっています。また、SQL Server Express Edition では、SQL Server Management Studio Express という無償版の管理ツールが提供されています。

SQL Server Management Studio

また、ディスクの空き容量や、ロック数、トランザクション数など、データベースの状態や使用状況を確認するための、 13 種類のグラフィカルなレポートが標準で搭載されています。

データベース使用状況のレポート表示

以下では、SQL Server Management の各機能をご紹介します。

バックアップ、リストア

Express EditionWorkgroup EditionStandard EditionEnterprise Edition

データベースの基本操作となるバックアップ、リストア機能は、運用、管理、開発のどのタスクにおいても、必要となる重要な機能です。バックアップではオンライン、オフライン共にサポートし、また、バックアップ方式には、フルバックアップ、差分バックアップ、トランザクション ログ バックアップの 3 つが用意されています。バックアップでは、そのシステムの性質にあった手法で、それぞれの方式を組み合わせてバックアップ計画をたてることにより、システムの可用性が向上します。また、以前まではデータベース全体、トランザクション ログのバックアップのみをサポートしていましたが、新たにファイル グループ、ファイル単位でのバックアップも可能となりました。

バックアップの手順は、以下のとおりです。

  1. SQL Server Management Studio を起動し、バックアップしたいデータベースを右クリックして、メニューの中からデータベースのバックアップ項目を選択します。

  2. データベースのバックアップ ウィンドウ画面にある、[バックアップ先] 項目にバックアップ先を指定して、[OK] ボタンをクリックすれば、処理が完了します。

データベースバックアップの実行

SQL Server 2005 では通常のバックアップに加え、バックアップの多重化を行うことができます。これは、バックアップ先のマシンまたはメディアが破損してしまうトラブルを想定し、別のディスクまたはテープにバックアップをとるといったシナリオに有効です。下図は、バックアップの多重化を行った場合の画面例です。

データベースバックアップの多重化

バックアップと必ず対になる作業がリストア (復元) 作業です。復元作業は、復元先のパスを指定するだけでバックアップと同様に実行できます。復元方法には、NORECOVERY、RECOVERY、STANDBY の 3 つのオプションが用意されています。NORECOVERY オプションでは、最新のバックアップを除くすべてのバックアップを指定でき、復旧プロセスを実行しなければ使用不可のままとなります。RECOVERY オプションでは、復元すべき最新のバックアップを指定し、未コミットのトランザクションはロールバックします。STANDBY オプションでは、データベースの読み取りが可能となり、引き続き差分や、ログのバックアップを適用することができます。また、UNDO ファイルを利用して、復旧操作を取り消すことも可能です。

リストアの実行

トランザクション ログの配布

Workgroup EditionStandard EditionEnterprise Edition

システムの障害発生に備える事前準備として、データベース 、データベース バックアップのほかに、スナップショットやデータベースの多重化が有効な手段となります。またそれ以外にもトランザクション ログの配布により、バックアップデータの冗長化を構成することができます。

ログ配布設定

ログ配布の実行

動的管理ビュー、動的管理関数

Express EditionWorkgroup EditionStandard EditionEnterprise Edition

動的管理ビューや動的管理関数を使用することで、SQL Server のより詳細な状態を監視、確認することができます。

動的管理ビューとは、文字通り SQL Server の「ビュー」の事で、SQL Server の状態を取得することができるシステムビューとなります。また動的管理関数についても同様で、通常の関数と同じ働きをします。この動的管理ビューに対しクエリで問い合わせを行ったり、動的管理関数を実行することで、サーバー インスタンスの状態監視や発生している問題などに関する詳細な情報を取得することができます。動的管理ビューや動的管理関数により、次のカテゴリに関する情報を取得することができます。

  • 共通言語ランタイム

  • データベース

  • フルテキスト検索

  • インデックス

  • I/O 関連

  • クエリ通知

  • レプリケーション

  • Service Broker

  • SQL オペレーティング システム

  • トランザクション

  • データベース ミラーリング

これらの動的管理ビューや動的管理関数は「sys」スキーマに含まれ、「dm_」というプリフィクスが頭につきます。 下図は、「sys.dm_os_memory_objects」ビューによってメモリの使用状況をを確認しています。確認することでメモリ リークなどが発生していないかを調べることができます。

動的管理ビューの実行

データのインポート、エクスポート

Workgroup EditionStandard EditionEnterprise Edition

データベースの運用を行ううえで、外部のデータを取り込んだり、データを出力する作業は頻繁に発生します。SQL Server 2005 では、このインポート、エクスポート機能は Integration Services 機能に統合されており、SQL Server Management Studio からもこの機能を簡単に利用できます。入出力可能なデータには、テキスト ファイル、Excel、Access、Oracle などもあり、さまざまなデータソースからの取り込み、または出力が可能です。

データインポートウィザード起動

インポートウィザード実行 1

インポートウィザード実行 2

インポートウィザード実行 3

インポートウィザード実行 4

SQLCMD モードと管理者専用接続

Express EditionWorkgroup EditionStandard EditionEnterprise Edition

※ 管理者用接続は Express Edition には含まれません。

SQL Server 2005 では、GUI (Graphical User Interface) ツール以外にも CUI (Character-based User Interface) ツールが実装され、すべての作業をコマンドにより行うことが可能です。SQLCMD は、SQL Server 2000 での OSQL、ISQL のサポートに加え、さらに豊富なコマンド セットを備えています。

SQL Server Management Studio のクエリ エディタでも SQLCMD モードがサポートされているため、SQLCMD でのコマンドから利用できる OS 制御コマンドも、SQLCMD モードに変更することで実行可能となります。

SQLCMD モード

また、SQLCMD では管理者専用接続モードがサポートされています。管理者専用接続モードでは、サーバーが何らかの理由でロックしてしまったり、使用できない状態にある場合でも接続可能です。管理者専用接続を利用して、障害がどのような原因で発生しているのかを、コマンドを実行して確認することができます。管理者専用接続を利用するには、以下のコマンドを実行します。

SQLCMD –A –U ユーザー名 –P パスワード

SQL Server エージェント

Workgroup EditionStandard EditionEnterprise Edition

SQL Server エージェントは、メンテナンスやデータベースのバックアップなど管理タスクを自動化し、スケジュールに沿ってそれを実行する機能です。煩雑な管理タスクを自動実行できる機能は、管理や運用の中でも重要なポイントの1つです。SQL Server エージェントでは、実行可能なタスクのうちで、メンテナンス タスク、バックアップ、データのインポート、およびエクスポート、Analysis Services のキューブ処理、Integration Services で作成したパッケージの実行、レプリケーション処理などをスケジュールに沿って実行できます。

SQL Server エージェントでのジョブの作成は、オブジェクト エクスプローラから SQL Server エージェント項目を展開し、ジョブの新規作成メニューにより行うことができます。

ジョブの新規作成

また、管理タスクやジョブの自動実行の完了などを通知する「オペレータ」を定義することができます。オペレータを定義することにより、警告やエラーの発生時に、電子メール、またはポケットベルを通じてオペレータに通知を行うことができます。

ページのトップへ

Configuration Manager でのサーバー管理

Express EditionWorkgroup EditionStandard EditionEnterprise Edition

データベース サービスの起動や停止を管理するツールとして、SQL Server 2005 では Configuration Manager が搭載されています。この Configuration Maneger には、SQL Server 2000 で利用されていた、サービス マネージャ、クライアント ネットワーク ユーティリティ、サーバー ネットワーク ユーティリティ が統合されています。

管理可能なサービスとしては、msftesql、SQL Server Browser、SQL Server、SQL Server エージェント、SQL Server Analysis Services、SQL Server Reporting Services、 SQL Server Integration Services があり、そのうちの msftesql、SQL Server Browser、SQL Server Integration Services を除く、すべてのサービスはインスタンスごとの管理となります。サービス起動の設定のほかに、サービス アカウントの設定も可能です。

Configuration Manager

ページのトップへ

構成ツールによるコンポーネントの管理

SQL Server 2005 では、サービス コンポーネントの機能制限に関するツールや、設定が困難であった項目を設定するツールが新たに追加されました。

各コンポーネントのサービスの制限を管理するツールに SQL Server Surface Area Configuration、Reporting Services のサーバー設定などを行うツールに Reporting Services Configuration ツールが追加されました。また、Business Intelligence Development Studio で作成した Analysis データベースをサーバー上に配置するツール、Analysis Services 配置ウィザードも追加されました。

SQL Server セキュリティ構成

Express EditionWorkgroup EditionStandard EditionEnterprise Edition

SQL Server 2005 では、強化されたセキュリティにより、通常であれば使用しない機能のほとんどはデフォルトで無効となっているため、SQL Server Surface Area Configuration で、各サービス コンポーネントの機能の無効、有効を設定します。データ ベース エンジンでは、アドホック リモート クエリ、 CLR 統合、 DAC (管理者専用接続) 、データベース メールや Service Broker の機能などを制限設定することが可能です。また、Analysis Services については、匿名アクセス機能、リンク オブジェクト、ユーザー定義関数、Reporting Services ではサブスクリプション機能、Web サービス機能が設定可能となっています。

SQL Server セキュリティ構成

開発時に利用できない機能があった場合、既定で無効となっていることがあるので注意する必要があります。

Reporting Services 構成

Workgroup EditionStandard EditionEnterprise Edition

SQL Server の Reporting Services では、レポート サーバー、レポート マネージャの URL や、レポートの配信に利用する SMTP サーバーのアドレスを、インストール時に設定します。さらに、SQL Server 2005 では、それらの設定を変更するための新しいユーティリティが追加されています。

以前は、暗号化キーの作成、バックアップなどをコマンド ラインから実行する必要がありましたが、Reporting Services 構成ツールにより、レポート サーバーの構成の管理が容易になりました。

Reporting Services 構成

Analysis Services 配置ウィザード

Standard EditionEnterprise Edition

Analysis Services のサポート ツールとして、 Analysis Services 配置ウィザードが用意されています。配置ウィザードでは、Analysis Services プロジェクトで構成したデータベースをサーバー上にすることが可能であるため、開発環境上で作成した Analysis データベースを本番環境に簡単に移行させることができます。

配置処理はウィザードにしたがって進めていくだけで簡単に行うことができます。また、配置する際に、パーティションやロール オプションの指定、更には構成プロパティの詳細を指定することができます。

Analysis Services 配置ウィザード 1

Analysis Services 配置ウィザード 2

ページのトップへ

データベースエンジン

SQL Server 2005 Service Pack 2

新ストレージ形式 vardecimal の追加

SQL Server 2005 Enterprise Edition では、新しい保存形式として vardecimal が用意されています。

データベースのプロパティ画面

vardecimal ストレージ形式は、10 進数データと数値データを可変長列として保存するため、vardecimal ストレージ形式を使用することで 既存の decimal 型や numeric 型の各データ型を保存するために必要なディスク領域を大幅に削減することができるようになります。10 進数データと数値データの保存に必要なディスク領域を縮小することで、全体的なパフォーマンスも向上します。また、新規のテーブルや既存のテーブルに対して、テーブルレベルで vardecimal ストレージ形式を設定することもできます。

クエリを使用したテーブルレベルでのストレージ形式の変更

sqllogship アプリケーションによるログ配布機能

トランザクションログのバックアップやコピー、復元が行える sqllogship アプリケーションが用意されました。セカンダリサーバー (スタンバイサーバー) で ログの配布機能を実施することで、障害時や保守作業時などプライマリサーバー (ログ配布元サーバー) をオフラインにしなければならない場合に、セカンダリサーバーのデータベースを使うことができますので、システムの冗長化が図れます。またログ配布構成のための関連クリーンアップタスクを実行することで、パフォーマンスが向上します。

ページのトップへ

メンテナンス プラン

SQL Server 2005 Service Pack 2

SQL Server のメンテナンスプラン

SQL Server 2000 にあった機能 [メンテナンス クリーンアップ タスク] がメンテナンス プランウィザード から利用できるようになりました。メンテナンス クリーンアップ タスクを実施することで、メンテナンスプランの実行後に残っていたファイルを削除することができます。
またデータベースのバックアップ メンテナンス プラン タスクでは、バックアップ セットの有効期限を指定する機能が追加されたほか、バックアップ フォルダに既定以外の場所を指定することができるようになりました。またシステム データ ベースの差分バックアップとトランザクション ログ バックアップを作成する際に正しく設定できるようにオプションが工夫されています。
SQL Server メンテナンス プラン ウィザードは、オブジェクトエクスプローラで [管理] - [メンテナンス プラン] を右クリックして、[メンテナンス プランウィザード] をクリックすると起動します。

メンテナンス プラン ウィザード実行 1

メンテナンス プラン ウィザード実行 2

SQL Server Management Studio からのレポート管理

SQL Server Management Studio では、データベースのリソースの利用状況やロックなどのシステム情報がレポートでグラフィカルに確認できるようになっています。SQL Server 2005 SP2 では、さらに、ユーザーが独自に作成したレポートを管理レポートとして統合することができます。レポートを個々のウィンドウで開くことによりデータベースのリソース状況を比較することもできます。また履歴も保持されるため、最近使ったレポートをすぐに開くこともできます。このようにユーザー各自のレポートを統合することにより、システムアプリケーションに合わせたデータベースの管理項目などを一枚のレポートに集約させてチェックすることができます。

SQL Server Management Studio でのレポート表示

ページのトップへ