トップページへ PASSJ ブログへ
トップページへ
分科会
特集!
コミュニケーション
資格
セミナー・コンファレンス
インフォメーション
Oracleキーワードから学ぶ、逆引き! SQL Server入門
文=株式会社CSK 教育サービス事業部
第3回
アーキテクチャ編(1)
スペシャルキーワード:インスタンスとデータベース
このコーナーでは、毎回Oracleの重要なキーワードをピックアップして、それぞれに対応するSQL Serverの用語や機能を解説していきます。Oracleを基準とした逆引き形式なので、これまでにマスターしたOracleの知識を最大限に生かしながら、スムーズにSQL Serverを習得できます!
特に重要な“スペシャルキーワード”は、さらに詳しく別ページを設けて解説しています。
◎アーキテクチャ編(1)◎
第3回・第4回と連続で、Oracle Serverアーキテクチャを中心にしたキーワードを取り上げていきます。今回は、インスタンスを構成するものやデータベースを構成するものを中心に紹介します。特にインスタンスとデータベースの関係は、Oracle ServerとSQL Serverとで大きな違いがあるところです。

インスタンスとデータベース


Oracle Serverにおけるインスタンスは、SGA(メモリ)とバックグラウンドプロセスから構成され、データベースとは物理的なファイル群を指します。また、インスタンス対データベースは1対1(RACの場合はn対1)の関係です。
一方、SQL Serverにおけるインスタンスとデータベースの関係は、Oracle Serverのそれとは大きく異なります。インスタンスとはサービスそのものを指し、「既定のインスタンス」と「名前付きインスタンス」の2種類があります。
また、データベースはインスタンスに対して複数作成され、「システムデータベース」と「ユーザーデータベース」の2種類があります。

☆さらに詳細はこちら→


初期化パラメータファイル


Oracle Serverの初期化パラメータファイルは、インスタンス起動時に読み込まれるファイルです。このファイルには、データベースの名前やメモリの大きさ、制御ファイルの情報などが格納されています。
SQL Serverには、初期化パラメータファイルは存在しません。それに相当するのはシステムデータベースの1つである「masterデータベース」です。このmasterデータベースの情報はサービス起動時に自動的に読み込まれます。また、メモリの大きさは自動的に最適化されるので、通常は管理者が指定する必要がありません。

REDOログファイル


Oracleでは、変更記録がREDOログファイルに書き込まれます。1つのデータベースに対して2つ以上のREDOログファイルが用意され、それらは循環して使用されます。障害時にデータが紛失した場合などは、このREDOログファイルに書き込まれた変更記録をもとに復旧が可能です。
SQL Serverでは「トランザクションログファイル」がOracleのREDOログファイルにあたり、さらにトランザクションの復旧にも使用されます。通常は1つのデータベースに1つのトランザクションログファイルを用意します。トランザクションログファイルの中は「仮想ログ」と呼ばれる複数のブロックに自動的に分けられ、この仮想ログがREDOログファイルのように循環して使われます。

表領域


Oracleの表や索引は、記憶域として表領域を使用します。表領域には1つ以上の物理データファイルが割り当てられます。
SQL Serverには「ファイルグループ」という考え方があり、Oracleと同様、テーブルやインデックスの格納先として指定できます。OracleのSYSTEM表領域と似ているのが「プライマリファイルグループ」で、このプライマリファイルグループに割り当てられた物理データファイルに「システムテーブル」(データディクショナリのようなもの)が格納されます。プライマリファイルグループは、データベースの作成時に必ず作成されます。ユーザーはバックアップの頻度を変えたり、読み取り専用のファイルグループを作成するなど、管理作業を軽減する目的で新たにユーザー定義のファイルグループを作成することができます。

ユーザー認証


データベースにログインするには、何らかの形で認証されたユーザー名を使う必要があります。SQL Serverにおける認証は、「Windows認証」と「SQL Server認証」の2つの方法があります。
Windows認証はオペレーティングシステム上のユーザーにSQL Serverへログインする権限を与える方法で、Oracle ServerのOS認証にあたります。ユーザー名の確認やパスワード管理にはWindowsの機能を使います。一方、SQL Server認証はログイン可能なユーザー名およびパスワードをデータベースに登録する方法で、Oracle Serverのデータベース認証にあたります。この認証方法では、パスワードの有効期限設定などの機能はありません。SQL ServerではWindows認証を推奨しています。ただしWindows以外のOSやインターネットからの接続の場合、Windows認証が使えないことがあります。この場合はSQL Server認証を使う必要があります。

SGA


SQL Serverのインスタンスを構成するメモリ構造は、ほぼOracle Serverと同じです。Oracle ServerではSGAやPGAという名前を特定のメモリ領域の集まりに対してつけていますが、SQL Serverでは、使用するメモリ全体を通称「メモリプール」と呼んでいます。メモリプールには、「データバッファキャッシュ」、「プロシージャキャッシュ」および「ログキャッシュ」などの領域があります。
データバッファキャッシュは、データファイルから読み取ったテーブルのデータを格納する領域です。この領域はOracle Serverでいうデータブロックに該当する、「ページ」という単位でデータを読み込みます。プロシージャキャッシュは、SQLを実行する際の実行プランを格納する領域です。実行プランとは実行計画のことです。ログキャッシュは、DMLを発行したときの変更履歴(ログレコード)を格納するための領域です。SQL Serverではメモリプール内の各領域は自動調整されますので、Oracle Serverのようにパラメータを使って各領域を個別にチューニングする必要はありません。SQL Serverが使う実メモリ領域の最小値と最大値を指定するだけです。




・ 第1回 基本用語編:データベースオブジェクト
・ 第2回 ユーティリティ編:SQL*Plus
・ 第3回 アーキテクチャ編(1):インスタンスとデータベース
・ 第4回 アーキテクチャ編(2):セグメント/エクステント/データブロック
・ 第5回 アーキテクチャ編(3):索引
・ 第6回 プログラミング編:カーソル
・ 第7回 トランザクション/ロック編:読み取り一貫性
・ 第8回 バックアップとリカバリ編:スタンバイ・データベース
・ 第9回 ユーザー管理編:ロール
・ 第10回 パフォーマンスチューニング編:EXPLAIN PLAN(実行プランの表示)



← 特集!DBバイリンガル 目次

PASSJメールニュース 著作権ついて プライバシーポリシー リンクポリシー お問い合わせ
(C) 2005 Professional Association for SQL Server Japan. All rights reserved.