3 データベース管理の概要
この章では、データベースを管理するための簡単なロードマップを示します。Oracle Databaseを管理するWebベースのインタフェースであるOracle Enterprise Manager Database Express (EM Express)について説明します。
この章の構成は、次のとおりです。
3.1 データベースの管理: 概要
この項では、Oracle Databaseインスタンスの管理タスクの概要について説明します。別のタスクの詳細は、このガイドの各章で説明します。
Oracle Databaseを管理するには、次の手順を実行します。
3.2 オペレーティング・システムの環境変数の構成
Oracle DatabaseにアクセスするSQL*Plusなどの特定のツールを使用する前に、オペレーティング・システム用の環境変数を構成する必要があります。これらの環境変数は、ツールの接続先となるデータベース・インスタンスを判別するときにOracle Databaseによって使用されます。
LinuxおよびUNIXシステム上で、データベース・インスタンス用のオペレーティング・システム環境変数を構成するには、次の手順を実行します。
-
オペレーティング・システムのコマンド・ウィンドウを開きます。
-
環境変数
ORACLE_HOME
およびORACLE_SID
が正しく設定されていることを確認します。これらの環境変数の設定に使用するコマンドは、オペレーティング・システムとのインタフェースに使用するシェルによって異なります。次に例を示します。-
(bashまたはksh)
export ORACLE_SID=orcl
-
(cshまたはtcsh)
setenv ORACLE_SID orcl
これらを設定するには、スクリプト
coraenv
(Cシェルの場合)およびoraenv
(その他のシェルの場合)を使用します。これらのスクリプトは通常、/usr/local/bin
にあります。 -
-
$ORACLE_HOME/bin
ディレクトリがPATH
環境変数に含まれていることを確認します。 -
/home/oracle
などのソフトウェア所有者のホーム・ディレクトリで、デフォルト・シェル用にプロファイル・ファイルを編集して、そのユーザーとしてログインするたびにこれらの環境変数が設定されるようにすることもできます。
Windowsシステム上で、データベース・インスタンス用のオペレーティング・システム環境変数を構成するには、次の手順を実行します。
関連項目:
-
環境変数の設定の詳細は、Oracle Database for LinuxおよびUNIX管理者リファレンスを参照
-
レジストリ・エントリの変更の詳細は、Oracle Database for Microsoft Windowsプラットフォーム・ガイドを参照
3.3 Oracle Enterprise Manager Database Expressの概要
EM Expressを使用すると、ユーザー・セキュリティの管理やデータベース・メモリーおよび記憶域の管理などの管理タスクを実行できます。また、データベースのパフォーマンスおよび情報を参照することも可能です。
EM Expressは、データベースがオープンしているときにのみ使用できます。そのため、データベースの起動にはEM Expressを使用できません。その他のデータベースの状態変更が必要になる操作(ARCHIVELOGモードの有効化や無効化など)も、EM Expressでは利用できません。
注意:
Oracle Database 12cでは、Enterprise Manager Database Controlは使用できません。12cデータベースの管理には、Enterprise Manager Cloud Control 12cまたはEM Express 12cを使用できます。
Enterprise Manager Cloud Controlでは、マルチテナント・コンテナ・データベース(CDB)、プラガブル・データベース(PDB)、Oracle Real Application Clusters (Oracle RAC)データベースおよびOracle Automatic Storage Management (Oracle ASM)データベースを含む、12cターゲットをサポートしています。
CDBおよびPDBの詳細は、『Oracle Database概要』および『Oracle Database管理者ガイド』を参照してください。また、Oracle RACデータベースの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を、Oracle ASMデータベースの詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。
後述するEnterprise Manager Database Express機能は、非CDB、CDB、PDBまたはOracle RACの各データベース・インスタンスに対して使用できます。
構成:
-
初期化パラメータ(init.ora)の管理
-
メモリー管理
-
データベース機能の使用
-
データベース・プロパティ
ストレージ:
パフォーマンス:
-
パフォーマンス・ハブ(次の機能を含みます)
-
リアルタイム・パフォーマンス監視とチューニング
-
履歴パフォーマンスとチューニング
-
SQL監視(リアルタイムと履歴)
-
データベース操作の監視
-
リアルタイムADDMを含むADDM
-
アクティブ・セッション履歴(ASH)分析
-
-
自動および手動SQLチューニング・アドバイザ
データベースのホームページ
データベース管理用のメイン・ページはデータベースのホームページです。EM Expressにログインするときにロードされるページです。「データベースのホームページへのアクセスについて」を参照してください。
ナビゲーション
データベースのホームページの上部にあるメニューでは、データベース管理タスクを異なるカテゴリに編成します。メニュー・オプションを選択すると、そのデータベース管理タスク用のEM Expressのページに移動します。たとえば、ユーザー・ページを表示するには、「セキュリティ」メニューから「ユーザー」を選択します。
関連項目:
Oracle Enterprise Manager Cloud Controlの詳細は、『Oracle Database管理者ガイド』を参照してください。
3.4 EM Expressの起動
Oracle Enterprise Manager Database Express (EM Express)を使用して、非CDB、マルチテナント・コンテナ・データベース(CDB)およびプラガブル・データベース(PDB)を管理できます。EM Expressでは、HTTPSポートを使用して、非CDB、CDBおよびPDBに接続し、管理します。
注意:
EM Expressを使用して、CDB、およびCDB内のすべてのPDB (シードPDBを除く)を管理できます。
EM Expressを使用してデータベースを管理するには、非CDB、CDBまたはPDBのHTTPSポートを把握している必要があります。
非CDB、またはCDBとそのPDBのHTTPSポートは通常、非CDBまたはCDBの構成時に、DBCAによって提供されます。
WebブラウザでEM ExpressのURLを指定する際、localhostではなくデータベース・ホスト名を入力します。
つまり、次の形式でEM ExpressのURLを入力して、EM Expressを起動します。
https://database-hostname
:portnumber
/em/
次に例を示します。
https://mydbhost.example.com:5500/em/
EM Expressでユーザー名とパスワードの入力を求めるプロンプトが表示された場合は、DBA
権限を持つユーザー(SYS
、SYSTEM
など)としてログインします。
日常的な管理タスクにSYSTEM
アカウントを使用するかわりとして推奨される手段の詳細は、「SYSおよびSYSTEMユーザー」を参照してください。
注意:
WebブラウザでEM ExpressのURLを初めて開くと、ブラウザに警告メッセージが表示される場合があります。
EM Expressは、Oracle XML DB上に構築するサーブレットです。Oracle XML DBには自己署名の証明書付きウォレットがデフォルトでありますが、信頼性のあるCA(認証局)の署名がない自己署名の証明書は、一部の既存のブラウザでは、信頼できないものとみなされてしまいます。ただし、この自己署名の証明書も、Oracle XML DBサーバーおよびクライアント(ブラウザ)間のトラフィックの暗号化を保証しており、安全です。
したがって、WebブラウザにEM ExpressのURL用にセキュリティ例外を入力する必要があります。
関連項目:
3.4.1 非CDB用EM Expressの起動
非CDB用のHTTPSポート番号がわからない場合は、非CDB内で次のSQL文を発行すると、EM Expressに構成されているポートが戻されます。
select dbms_xdb_config.gethttpsport() from dual;
gethttpsport
プロシージャによって0以外の値が返された場合、返された値はEM Expressを使用して非CDBに接続するために使用する必要のあるポートです。
プロシージャによって値0が返された場合は、HTTPSポートが非CDBに対して構成されていないことを意味します。この場合は、「EM ExpressのHTTPSポートの構成」の手順に従って、この非CDB用のHTTPSポートを手動で構成する必要があります。
関連項目:
-
gethttpsport
プロシージャの詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください
3.4.2 CDB用EM Expressの起動
CDB用のHTTPSポート番号がわからない場合は、ルートに移動して、EM Expressに構成されているポートを戻す次のSQL文を発行します。
alter session set container=CDB$ROOT; select dbms_xdb_config.gethttpsport() from dual;
gethttpsport
プロシージャによって0以外の値が返された場合、返された値はEM Expressを使用してCDBに接続するために使用する必要のあるポートです。
この文によって値0が返された場合は、HTTPSポートがCDBに対して構成されていないことを意味します。この場合は、「EM ExpressのHTTPSポートの構成」の手順に従って、このCDB用のHTTPSポートを手動で構成する必要があります。
ルートに接続されている場合、EM ExpressにはCDB全体に該当するデータが表示され、アクションが有効になります。
関連項目:
-
EM Expressを使用したCDB内のプラガブル・データベース(PDB)の管理の詳細は、「EM Expressを使用したPDBの管理」を参照してください
-
ALTER SESSION
文を使用したコンテナへの切替えの詳細は、『Oracle Database管理者ガイド』を参照してください -
gethttpsport
プロシージャの詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください
3.4.3 PDB用EM Expressの起動
PDB用のEM Expressを起動するには、PDBが読取り/書込みモードで開かれていることを確認してから、このトピックで説明している次の方法の1つを(次に示す順序で)試します。
-
PDBを含んでいるCDBのCDB$ROOTコンテナに接続して、CDBのグローバル・ポートを構成するために次のSQL文を発行します。
exec dbms_xdb_config.setglobalportenabled(TRUE);
-
次に、PDBを含んでいるCDBを構成したときにDatabase Configuration Assistant (DBCA)によって提供されたEM Express URLを、Webブラウザで入力します。
デフォルトでは、DBCAがCDBに対して構成するHTTPSポートは、そのCDB内のPDBにも使用できます。
-
EM Expressログイン画面が表示されたら、管理者資格証明を指定し、接続するPDBの名前を「コンテナ名」フィールドに入力します。
グローバル・ポートを使用する利点は、PDBごとにポートを構成する必要がなくなることです。(大規模なサイトの場合は、数千のPDBが存在することもあります)。グローバル・ポートの場合は、1つのポートを構成してから、そのポートを指すようにEM Expressを設定します。2つめの利点は、このPDBのポート番号を調べる必要がないことです。この構成では、リクエストが自動的にPDBにルーティングされます。
EM ExpressがPDBに接続しない場合は、次の方法を試します。
-
管理するPDB (この例ではPDB1)に接続し、
gethttpsport
プロシージャを使用して、HTTPSポートがEM Expressに対して構成されているかどうかを判別します。alter session set container=PDB1; select dbms_xdb_config.gethttpsport() from dual;
gethttpsport
プロシージャによって0以外の値が返された場合、返された値はEM Expressを使用してPDBに接続するために使用する必要のあるポートです。 -
gethttpsport
プロシージャによって0が返される場合は、「EM ExpressのHTTPSポートの構成」の手順に従って、このPDB用にHTTPSポートを手動で構成する必要があります。PDBのHTTPSポートを手動で構成した後で、EM Express URLにそのポートを指定して、そのPDBに接続できます。EM Express URLでPDBに対して手動で構成したHTTPSポートを使用する場合、このポートはそのPDBへのアクセスにのみ使用できるため、「コンテナ名」フィールドはEM Expressログイン画面に表示されません。
PDBに接続されている場合、EM Expressには、PDBのみに該当するデータが表示され、アクションが有効になります。
関連項目:
-
EM Expressを使用したマルチテナント・コンテナ・データベース(CDB)でのPDBの管理の詳細は、「EM Expressを使用したPDBの管理」を参照してください
-
dbms_xdb_config.setglobalportenabled
プロシージャの詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください -
dbms_xdb_config.isglobalportenabled
ファンクションの詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください -
ALTER SESSION
文を使用したコンテナへの切替えの詳細は、『Oracle Database管理者ガイド』を参照してください -
dbms_xdb_config.gethttpsport
プロシージャの詳細は、『Oracle Database PL/SQLパッケージおよびタイプ・リファレンス』を参照してください
3.5 EM ExpressのHTTPSポートの構成
WebブラウザからEM Expressにアクセスする前に、EM ExpressのHTTPSポートを構成する必要があります。EM ExpressのHTTPSポートを構成したら、それを使用してEM Expressにアクセスします。
EM ExpressのHTTPSポートを手動で構成するには、次の手順を実行します。
3.6 データベースのホームページのアクセス
データベースのホームページはOracle Enterprise Manager Database Express (EM Express)のメイン・データベース管理ページです。
データベースのホームページにアクセスするには、次の手順を実行します。
データベース・ホームページの様々なセクションでは、データベースの環境および状態について説明します。「ステータス」セクションには、データベースの基本情報が表示されます。データベース・インスタンスがマルチテナント・コンテナ・データベース(CDB)の場合、「ステータス」セクションの「タイプ」フィールドの次の行はリンクになっていて、このインスタンスをCDBとして識別し、CDB内のPDB数を示します。「CDB (n PDB)」リンクをクリックすると、CDBの「コンテナ」ページが開き、CDBコンテナ(PDB)のステータス、パフォーマンスおよびリソース情報が表示されます。「インシデント - 過去24時間」セクションには、過去24時間のデータベースのクリティカル・エラーのアラートが示されます。また、「SQLモニター」セクションでは、データベースのパフォーマンスに影響を及ぼす可能性のある長時間実行中のSQL文に警告が出されます。メニュー・オプションを使用すると、問題領域に関する詳細を参照できる以外に、場合によっては問題解決の推奨事項を入手できます。「データベースの監視およびチューニング」を参照してください。
3.7 非管理ユーザーのEM Expressへのアクセス権の付与
SYS
またはSYSTEM
ユーザー・アカウントを使用してOracle Enterprise Manager Database Express (EM Express)にログインし、管理タスクおよびその他のタスクを実行できます。非管理ユーザーがEM Expressにログインする可能性もあります。たとえば、アプリケーション開発者はEM Expressインタフェースを利用して、表、索引、ビューなどの作成または変更を行う必要があります。これらのユーザーには、ログインできるようにEM Expressへのアクセス権を付与する必要があります。
非管理ユーザーにEM Expressへのアクセス権を付与するには、EM_EXPRESS_BASIC
またはEM_EXPRESS_ALL
ロールを付与する必要があります。
EM_EXPRESS_BASIC
ロールを使用すると、ユーザーはEM Expressに接続して、読取り専用モードでページを表示できます。EM_EXPRESS_BASIC
ロールは、SELECT_CATALOG_ROLE
ロールを含みます。
EM_EXPRESS_ALL
ロールを使用すると、ユーザーはEM Expressに接続して、EM Expressによって提供されるすべての機能を使用できます(EM Expressのすべての機能への読取り/書込みアクセス権があります)。EM_EXPRESS_ALL
ロールは、EM_EXPRESS_BASIC
ロールを含みます。
ユーザー・アカウントへの権限およびロールの付与の例については、「例: ユーザー・アカウントへの権限およびロールの付与」を参照してください。
関連項目:
-
日常的な管理タスクでの
SYSTEM
アカウント使用の推奨代替手段の詳細は、「SYSおよびSYSTEMユーザー」を参照してください
3.8 SQLベースの管理ツールを使用したデータベースの管理
この項の内容は、次のとおりです。
3.8.1 SQLについて
多くの操作を実行するために、Oracle Enterprise Manager Database Express (EM Express)はStructured Query Language(SQL)文をデータベースに送信します。SQL(シークェルと読む)は、データベースへの問合せや更新を行う業界標準の英語形式のコンピュータ・プログラミング言語です。
次はユーザーhr
に所有されている国表にある国々についての情報をリストしたSQL問合せの一例です。
SELECT COUNTRY_ID, COUNTRY_NAME FROM HR.COUNTRIES;
SQLは各種のデータベース管理タスクの実行にも使用できる強力な言語です。次のSQL文はデータベース・ユーザーnick
を作成し、指定したパスワード(passwordで表されている)を割り当てます。
CREATE USER nick IDENTIFIED BY password;
EM Express内で管理タスクを実行する場合は、「SQL表示」をクリックすると、EM Expressによって生成および送信されるSQL文を表示できます。
3.8.2 SQL*Plusについて
ORACLE_HOME
/bin
ディレクトリに保存されます。
コマンドライン、またはWindowsの「スタート」メニューから、SQL*Plusを開始できます。
SQL*Plusがロードされると、次のようなSQLプロンプトが発行されます。
SQL>
SQLプロンプトで、データベースの停止または新規ユーザーなどの管理タスクを実行する文を入力するか、データの問合せ、挿入、更新および削除が可能です。
単一のSQL文を複数行に入力できます。各文の最後には、セミコロン(;)を入れる必要があります。ほとんどの文では、1行にスラッシュのみを入力すると、文を再実行できます。
3.8.3 SQL*Plusの起動およびデータベースへの接続
この項では、コマンドラインおよびWindowsのスタート・メニューからSQL*Plusを起動してデータベースに接続する方法について説明します。
新しいインストールでは、SYS
またはSYSTEM
データベース・アカウントを使用して、データベースに接続します。ユーザー名としてSYS
またはスラッシュ(/
)を入力して、AS
SYSDBA
句を指定すると、オペレーティング・システム認証を使用して、アクセスの認証が行われます。オペレーティング・システム認証では、Windows、UNIXまたはLinuxのホスト・ユーザー・アカウントを使用してOracle Databaseに対する認証が行われます。特別なユーザー・グループのメンバーであるユーザー・アカウントを持つホスト・コンピュータにログインする必要があります。UNIXおよびLinuxの場合、通常、このユーザー・グループはdba
です。このタイプの認証を使用すると、起動されていないOracle Databaseに接続できるため、起動されていないOracle Databaseを起動できます。詳細は、Oracle Database管理者ガイドを参照してください。
次の手順は、SYSDBA
権限を使用して、ユーザーSYS
としてデータベースにログインする方法を示しています。
SQL*Plusを起動してコマンドラインからデータベースに接続するには、次の手順を実行します。
-
コマンド・ウィンドウを開きます。
-
オペレーティング・システムの環境変数を構成します。詳細は、「オペレーティング・システムの環境変数の構成」を参照してください。
-
次の形式でコマンドを使用し、SQL*Plusを起動します。
sqlplus {
username
| /} [as sysdba]次に、このコマンドの例を示します。
$ sqlplus / AS SYSDBA Enter password: password
username
には、SYS
またはSYSTEM
管理ユーザーを使用できます。プロンプトで、インストール時に設定したパスワードを入力します。SYS
ユーザーを使用した場合は、ユーザー名の後にAS SYSDBA
を含める必要があります。SQL*Plusでは、デフォルトのデータベース・インスタンス(Microsoft Windows)または環境変数(LinuxおよびUNIX)により指定されたデータベース・インスタンスに接続されます。
Windowsの「スタート」メニューからSQL*Plusを起動してデータベースに接続するには、次の手順を実行します。
-
オペレーティング・システムの環境変数を構成します。詳細は、「オペレーティング・システムの環境変数の構成」を参照してください。
-
「スタート」をクリックして、「プログラム」(または「すべてのプログラム」)→「Oracle - HOME_NAME」→「Application Development」→「SQL*Plus」を選択します。
-
プロンプトが表示されたら、データベースとの接続に使用するアカウントのユーザー名およびパスワードを入力します。
ユーザー名には、
SYS
またはSYSTEM
管理アカウントを使用できます。インストール時に指定したパスワードを使用できます。ユーザー名として
SYS
または/
を使用する場合は、次の例に示すように、空白の後にAS
SYSDBA
句を続けます。Enter user-name: SYS AS SYSDBA Enter password: password or Enter user-name: / AS SYSDBA
関連項目:
-
日常的な管理タスクでの
SYSTEM
アカウント使用の推奨代替手段の詳細は、「SYSおよびSYSTEMユーザー」を参照してください
3.8.4 SQL Developerについて
SQL DeveloperはOracle Databaseにアクセスするための別のGUIです。SQL DeveloperではSQLとPL/SQLの両言語による開発がサポートされています。Oracle Databaseのデフォルトのインストールで使用可能です。
SQL Developerではデータベース・オブジェクトの参照、SQL文とSQLスクリプトの実行、PL/SQL文の編集およびデバッグを実行できます。また、付属のレポートを実行できるだけでなく、独自のレポートを作成して保存することもできます。
最新リリースのSQL Developerは、Oracle Technology Network (OTN)のWebサイトからダウンロードできます。
関連項目:
-
SQL Developerのインストールおよび使用の詳細は、「SQL Developerについて」を参照してください
-
SQL Developerの起動手順については、『Oracle Database 2日で開発者ガイド』を参照してください
3.9 データベース管理の概要: Oracle by Example Series
Oracle by Example(OBE)には、『Oracle Database 2日でデータベース管理者』に関するシリーズが含まれています。このOBEでは、この章のタスクを段階的に説明し、注釈付きのスクリーンショットを使用します。
データベース管理の概要に関するOBEを表示するには、次に示すURLをブラウザに入力します。
https://apexapps.oracle.com/pls/apex/f?p=44785:24:0::NO:24:P24_CONTENT_ID:16825
脚注の凡例
脚注1:CDBで、この機能を使用できるのはCDBに対してのみで、個別のPDBには使用できません。