管理に関する機能強化 (データベース エンジン)

Microsoft SQL Server 2008 データベース エンジンの管理は、ツールおよび監視機能の強化によって簡略化されています。

データベースの管理

監査

SQL Server Audit は、カスタマイズされたデータベース エンジン イベント監査を作成するための SQL Server 2008 の新機能です。SQL Server Audit では拡張イベントを使用して監査の情報を記録し、さまざまなサーバーやデータベース オブジェクトで監査を有効化、保存、および表示するために必要なツールやプロセスを提供します。詳細については、「監査 (データベース エンジン)」を参照してください。

バックアップの圧縮

SQL Server 2008 Enterprise 以降では、バックアップの圧縮がサポートされており、SQL Server 2008 以降の各エディションでは、圧縮されたバックアップを復元することができます。バックアップ、バックアップ ジョブ、またはログ配布構成ごとにバックアップ圧縮動作を変更できます。詳細については、「バックアップの圧縮 (SQL Server)」を参照してください。

既定の設定では、バックアップを圧縮すると CPU 使用率が著しく増加し、同時に実行される操作が悪影響を受ける場合があります。リソース ガバナを使用すると、CPU 使用率が制限されるセッションで、優先度の低い圧縮されたバックアップを作成することができます。詳細については、「リソース ガバナーを使用してバックアップの圧縮による CPU 使用率を制限する方法 (Transact-SQL)」を参照してください。

変更データ キャプチャ

変更データ キャプチャによって、ソース テーブルからデータ マートおよびデータ ウェアハウスへの増分読み込みを効率的に実行するための効果的なソリューションが実現します。変更データは、SQL Server のテーブルに対して適用された挿入、更新、削除の各アクティビティをキャプチャし、変更の詳細を、利用しやすいリレーショナル形式で格納します。変更データ キャプチャで使用される変更テーブルには、追跡されたソース テーブルの列構造をミラー化する列が、行われた変更を理解するために必要なメタデータと共に含まれています。詳細については、「変更データ キャプチャの基礎」を参照してください。

変更の追跡

SQL Server の変更の追跡を使用すると、ユーザー テーブルに対する増分変更をアプリケーションで取得できます。双方向同期が必要な場合は、データの競合をアプリケーションでチェックすることもできます。開発者は、SQL Server 2008 に組み込まれている変更の追跡を使用することで、複雑なカスタム変更追跡ソリューションを作成する必要がなくなります。

変更の追跡機能が SQL Server に組み込まれる以前、開発者はしばしばトリガ、timestamp 列、他の追加の列、および追加のテーブルの組み合わせを使用したカスタム変更追跡ソリューションを作成する必要がありました。新しいバージョンでは、同期アプリケーションを簡単かつ迅速に開発できます。

詳細については、「変更の追跡」を参照してください。

データ コレクタ

SQL Server 2008 では、複数のソースから集めたデータを取得して保存するために使用できるデータ コレクタを導入しています。データ コレクタでは、データ コレクション コンテナを使用して、SQL Server サーバー システムでのデータ コレクションの範囲と頻度を決定できます。詳細については、「データ コレクタの概要」を参照してください。

エディションに関連するデータベースの移行問題の検出

sys.dm_db_persisted_sku_features (Transact-SQL) ビューを使用すると、SQL Server 2008 の別のエディションへのデータベースの移行を妨げる機能を識別できます。

イベントおよびパフォーマンス カウンタ

非推奨カウンタ

非推奨機能の使用状況を追跡するために、パフォーマンス カウンタとトレース イベントが用意されています。詳細については、「SQL Server:Deprecated Features オブジェクト」および「SQL Server 2008 データベース エンジンの非推奨機能」を参照してください。

DDL トリガとイベント通知

DDL トリガとイベント通知を作成できるイベントのクラスが拡張され、DDL と同様の操作を実行するさまざまなストアド プロシージャが含まれるようになりました。イベントの一覧については、「DDL イベント」および「DDL イベント グループ」を参照してください。さらに、イベント用の XML スキーマがデータベース エンジンと共にインストールされており、インターネットでも利用できます。詳細については、「EVENTDATA (Transact-SQL)」を参照してください。

sp_configure オプション

access check cache quota オプションと access check cache bucket count オプションは、access check result cache に使用されるエントリ数とハッシュ バケット数を制御します。詳細については、「access check cache オプション」を参照してください。

サーバーの管理

中央管理サーバー

SQL Server 2008 では、中央管理サーバーを指定できるようにすることで複数のサーバーを管理する新しい方法を導入しています。中央管理サーバーとして指定されている SQL Server のインスタンスは、登録済みサーバーの一覧を管理します。詳細については、「中央管理サーバーを使用した複数のサーバーの管理」を参照してください。

動的管理ビュー

メモリ情報を提示する 5 つの新しい動的管理ビューがあります。

sys.dm_os_sys_info 動的管理ビューの cpu_ticks_in_ms 列は廃止され、2 つの新しい列、sqlserver_start_time_ms_ticks および sqlserver_start_time が追加されています。

ホット アド CPU

SQL Server 2008 では、CPU を実行中のシステムに動的に追加する機能をサポートしています。CPU の追加は、物理的には新しいハードウェアの追加、論理的にはオンライン ハードウェア パーティション分割、仮想的には仮想化レイヤの利用によって行われます。詳細については、「ホット アド CPU」を参照してください。

optimize for ad hoc workloads オプション

新しいサーバー構成オプションである optimize for ad hoc workloads オプションを使用すると、1 回のみ使用するアドホック バッチが多数含まれているワークロードのプラン キャッシュの効率を高めることができます。このオプションを 1 に設定すると、データベース エンジンでは、バッチが初めてコンパイルされるときに、完全なコンパイル済みプランではなく、コンパイル済みプランの小さいスタブをプラン キャッシュに格納します。これにより、再利用されないコンパイル済みプランでプラン キャッシュがいっぱいにならないようにして、メモリの負荷を下げることができます。詳細については、「サーバー構成オプションの設定」を参照してください。

リソース ガバナ

リソース ガバナは、SQL Server のワークロードとシステム リソースの消費を管理するために使用できる機能です。リソース ガバナを使用すると、受信するアプリケーション要求で使用可能な CPU とメモリの量を制限できます。詳細については、「リソース ガバナを使用した SQL Server ワークロードの管理」を参照してください。

SQL Server 拡張イベント

SQL Server 2008 には、サーバー システムのイベント インフラストラクチャである SQL Server 拡張イベントが導入されています。このリリースの拡張イベントを使用すると、イベントをトレース ポイントとして使用して、ホスト プロセスの実行時にウィンドウを開くことができます。これらのイベントはその後メモリに集計するか、ファイルに送信するか、Event Tracing for Windows (ETW) に出力できます。詳細については、「SQL Server 拡張イベントの概要」を参照してください。

ポリシー ベースの管理の使用

総保有コストを削減するためのマイクロソフトの継続的な取り組みの一環として、SQL Server 2008 では SQL Server を管理するための新しいフレームワークである、ポリシー ベースの管理を導入しています。ポリシーには、ポリシーによって評価される状態を示す確認条件と、評価の対象セットを示すフィルタ条件が含まれています。たとえば、管理者は SQL Server のすべてのインスタンスに対して SQL Mail をオフにするポリシーや、AdventureWorks データベースのマーケティング スキーマ内のテーブルに "mk_pr_" で始まる名前を付けるポリシーを設定できます。

ポリシー ベースの管理には、次の利点があります。

  • システム構成のポリシーに準拠していることを確認します。

  • 構成に対するポリシーを作成することで、システムへの変更を阻止または監視します。

  • 管理タスクを簡略化することで総所有コストを削減します。

  • SQL Server Management Studio の準拠に関する問題を検出します。

  • ポリシーを同時に複数のサーバー上で実行できます。

  • 組み込み関数、および指定したシステム状態と対象セットにポリシーを適用する条件式に対してユーザー定義の Transact-SQL クエリやユーザー定義の WMI/WQL クエリを実行する機能を含んでいます。

  • ベスト プラクティス アナライザの規則およびセキュリティ構成の既定のシステム状態設定に対応しており、追加設定なしで使用できる 40 以上のポリシーを含んでいます。ポリシーはデータベース エンジンのインスタンスにインポートする必要があります。詳細については、「ポリシー ベースの管理ポリシーをエクスポートおよびインポートする方法」を参照してください。

追加設定なしのポリシーをインポートすることに加えて、[ファイル] メニューの [新規作成] で新しいポリシーを直接作成することもできます。

詳細と、ポリシー ベースの管理の使用方法に関するチュートリアルについては、「ポリシー ベースの管理を使用したサーバーの管理」を参照してください。

SQL Server Management Studio

クエリ エディタ

Transact-SQL デバッガ

データベース エンジン クエリ エディタには、Visual Studio デバッガに似た Transact-SQL デバッガが追加されました。Transact-SQL デバッガを使用すると、特定のステートメントで実行を一時停止し、Transact-SQL 呼び出し履歴や、変数およびパラメータに格納されている値などのデータ値やシステム情報を表示することで、Transact-SQL コード内の問題を解決できます。詳細については、「Transact-SQL デバッガの使用」を参照してください。

IntelliSense

データベース エンジン エディタには、単語の入力候補の表示、エラーの下線表示、パラメータのヘルプ、色分け、クイック ヒント、アウトライン、構文ペアの照合などの IntelliSense 機能が追加されました。IntelliSense は、頻繁に使用される Transact-SQL 要素のために用意されています。今後のリリースでは他の Transact-SQL 要素にも拡張される予定です。詳細については、「IntelliSense の使用」を参照してください。

データベース エンジンの [エラー一覧] ウィンドウ

SQL Server Management Studio には、データベース エンジン クエリ エディタの IntelliSense コードによって生成された構文エラーとセマンティック エラーを表示する [エラー一覧] ウィンドウが含まれています。詳細については、「[エラー一覧] ウィンドウ (Management Studio)」を参照してください。

オブジェクト エクスプローラ

SQL Server Management Studio の [オブジェクト エクスプローラの詳細] ウィンドウは、次のように強化されています。

  • [オブジェクト エクスプローラの詳細] ウィンドウに表示される列をカスタマイズできます。選択したオブジェクトの種類で使用可能な列の一覧を表示するには、列見出しを右クリックします。表示を並べ替えるには、列をドラッグします。

  • 選択した項目のプロパティは、[オブジェクト エクスプローラの詳細] ウィンドウの下部に表示されます。追加のプロパティを表示するには、ステータス バーのトピックの境界を上にドラッグしてステータス バーを大きくします。

Transact-SQL および MDX のコード エディタの下部には、色分けされたステータス バーが表示されます。このステータス バーは、エディタの接続に関する情報を表示し、コード エディタに複数の接続がある場合に色が変化します。

コード エディタ ウィンドウのタイトル バーでは項目の名前を追加または削除できます。タブ名をカスタマイズするには、[ツール] メニューの [オプション] をクリックし、[テキスト エディタ][エディタのタブとステータス バー] ページの順に選択します。

Management Studio では、オブジェクト エクスプローラで選択した項目に関する詳細の表示が強化されています。列はサイズ変更、並べ替え、および再構成が可能で、新しいナビゲーション ボタンを使用して親オブジェクトや最後にアクセスしたオブジェクトに移動することもできます。詳細領域では複数のオブジェクトを選択し、これらのオブジェクトに対して個別に、またはまとめてアクションを実行できます。

[オブジェクト エクスプローラの詳細] でのオブジェクトの同期では、親オブジェクトではなく、オブジェクト エクスプローラ内の個別のオブジェクトが選択されるようになりました。また、表示する列はプロパティ一覧から選択できます。並べ替えや選択項目は操作中もそのまま保持されます。また、選択したオブジェクトに対しては、詳細領域の下部にあるサイズ変更領域にプロパティ一覧が表示されます。詳細については、「[オブジェクト エクスプローラの詳細] の使用および SQL Server オブジェクトの検索」を参照してください。

オブジェクト エクスプローラの Service Broker ノード

オブジェクト エクスプローラには、Service Broker メッセージ交換の優先度用の新しいノードが含まれています。また、他の Service Broker ノードを右クリックすると、[プロパティ] などの追加のメニュー オプションが表示されるようになりました。詳細については、「Service Broker オブジェクトの [プロパティ] の F1 ヘルプ」を参照してください。

顧客からの要望による強化機能

SQL Server Management Studio には、顧客から要望があった次のような強化機能が含まれています。

  • クエリ エディタ ウィンドウでは、登録済みサーバーのグループからクエリ ウィンドウを開くことで、同時に複数のサーバーに対してクエリを実行できます。クエリ結果は、結合して 1 つの結果ペインに表示するか、別々の結果ペインに表示することができます。詳細については、「中央管理サーバーを使用した複数のサーバーの管理」を参照してください。

  • SQL Server Profiler にアクセスするには、クエリ エディタ ウィンドウ、[クエリ] メニュー、クエリ エディタのツール バーを使用するか、Ctrl + Alt + P キーを押します。

  • テーブルは、[上位 n 行の表示] オプションを使用して開くことができるようになりました。

  • テーブルを開いたときに表示される行数は構成できます。

  • [ツール] メニューの [オプション] では、オブジェクト エクスプローラでテーブルをダブルクリックしたときに実行されるアクションを指定できます。

  • 設計変更を実装するときは、テーブル デザイナがテーブルを再作成しないようにすることができます。

  • [オブジェクトの詳細] ページは、追加の列を使用してカスタマイズできます。このページでは検索もサポートされるようになりました。詳細については、「[オブジェクト エクスプローラの詳細] の使用および SQL Server オブジェクトの検索」を参照してください。

  • SQL Server Management Studio を使用して接続するときは、追加の接続パラメータを接続文字列に追加できます。詳細については、「[サーバーへの接続] ([追加の接続パラメータ] ページ)」を参照してください。

SQL Server PowerShell プロバイダおよびコマンドレット

SQL Server 2008 では、次の機能を実装する 2 つの PowerShell スナップイン DLL ファイルが導入されています。

  • SQL Server 管理オブジェクト モデルをファイル システム パスと同様のパスとして公開する SQL Server PowerShell プロバイダ。パス内の各ノードは、SQL Server 管理オブジェクト クラスに関連付けられています。

  • sqlcmd スクリプトの実行、ポリシーの評価、PowerShell パスで使用する区切られた識別子のエンコードなどのタスクを行う SQL Server PowerShell コマンドレットのセット。

さらに、プロバイダやスナップインなどの SQL Server 機能を使用して構成された PowerShell 環境を起動する新しい sqlps ユーティリティが用意されています。PowerShell サブシステムが SQL Server エージェントに追加され、スケジュールに従って、またはデータベース エンジン イベントに対応して PowerShell スクリプトを実行できるようになっています。SQL Server PowerShell セッションを起動するには、SQL Server Management Studio のオブジェクト エクスプローラのノードを右クリックします。詳細については、「SQL Server PowerShell の概要」を参照してください。