Oracle Database インストレーション・ガイド 10gリリース2(10.2) for Linux x86-64 B25530-02 |
|
この章では、Oracle Universal Installerを起動する前に完了しておく必要のある作業について説明します。この章の内容は、次のとおりです。
Oracleソフトウェアをインストールする前に、root
ユーザーとして複数の作業を完了しておく必要があります。root
ユーザーとしてログインするには、次の手順のどちらか一方を実行します。
注意
サイレント・モード・インストールを実行する場合を除き、 サイレント・モード・インストールの詳細は、付録Aを参照してください。 |
xterm
)などのローカル・ターミナル・セッションを開始します。
$ xhost fully_qualified_remote_host_name
次に例を示します。
$ xhost somehost.us.acme.com
ssh
、rlogin
またはtelnet
コマンドを使用して、ソフトウェアをインストールするシステムに接続します。
$ telnet fully_qualified_remote_host_name
root
ユーザーとしてログインしていない場合は、次のコマンドを入力してユーザーをroot
に切り替えます。
$ su - root password: #
システムは、次の最小ハードウェア要件を満たしている必要があります。
RAM | スワップ領域 |
---|---|
512MB以下 |
RAMのサイズの2倍 |
1024〜2048MB |
RAMのサイズの1.5倍 |
2049〜8192MB |
RAMのサイズと同じ |
8192MB超 |
RAMのサイズの0.75倍 |
/tmp
ディレクトリに400MBのディスク領域。
自動バックアップを構成する場合は、フラッシュ・リカバリ領域に対して、ファイルシステムまたは自動ストレージ管理ディスク・グループに追加のディスク領域が必要です。
システムがこれらの要件を満たしているかどうかを確認する手順は、次のとおりです。
# grep MemTotal /proc/meminfo
物理RAMのサイズが必要サイズより小さい場合は、先に進む前にメモリーを増設する必要があります。
# grep SwapTotal /proc/meminfo
追加のスワップ領域を構成する方法は、必要に応じてオペレーティング・システムのドキュメントを参照してください。
# free
/tmp
ディレクトリで使用可能なディスク領域の量を判別するには、次のコマンドを入力します。
# df -k /tmp
/tmp
ディレクトリで使用可能な空きディスク領域が400MB未満の場合は、次のいずれかの手順を実行します。
# df -k
次の表に、各インストール・タイプのソフトウェア・ファイルに必要なディスク領域の概算を示します。
インストール・タイプ | ソフトウェア・ファイルに必要なディスク領域(GB) |
---|---|
Enterprise Edition |
1.9 |
Standard Edition |
1.9 |
カスタム(最大) |
2.0 |
# grep "model name" /proc/cpuinfo
インストールする製品に応じて、システムに次のソフトウェアがインストールされているかどうかを確認します。これらの要件が満たされているかどうかを確認する手順は、表の後に説明します。
システムがこれらの要件を満たしているかどうかを確認する手順は、次のとおりです。
# cat /proc/version
# uname -r
このコマンドをRed Hat Enterprise Linux 3.0システム上で実行した場合のサンプル出力を次に示します。
2.4.21-27
.EL
この例の出力は、システムのカーネル・バージョン(2.4.27
)およびエラータ・レベル(27.EL
)を示しています。
カーネル・バージョンが前述の要件を満たしていない場合、カーネル更新の取得およびインストールについてはオペレーティング・システム・ベンダーに問い合せてください。
# rpm -q package_name
パッケージがインストールされていない場合は、Linuxディストリビューションのメディアからインストールするか、またはLinuxベンダーのWebサイトから必要なパッケージ・バージョンをダウンロードします。
http://www.ibm.com/software/integration/mqfamily/support/summary/lin.html
通常、Oracle Databaseをインストールするコンピュータはネットワークに接続され、Oracle Databaseインストールを格納するためのローカル記憶域があり、ディスプレイ・モニターとCD-ROMまたはDVDドライブを備えています。
この項では、このような標準的な構成とは異なるコンピュータにOracle Databaseをインストールする方法について説明します。この項の内容は、次のとおりです。
名前解決が設定されていない場合は、Oracle Universal Installerを実行するとエラーが発生することがあります。このエラーを回避するには、インストール前に、ホスト名が/etc/hosts
ファイルを介してのみ解決されることを確認する必要があります。
ホスト名が/etc/hosts
ファイルを介してのみ解決されることを確認する手順は、次のとおりです。
nsswitch.conf
ファイル内のhostsファイル・エントリを確認します。
# cat /etc/nsswitch.conf | grep hosts
このコマンドの出力には、ファイルのエントリが含まれています。
# hostname
このコマンドの出力は、次のようになります。
myhost.mycomputer.com
# domainname
このコマンドでは結果が戻されません。
# cat /etc/hosts | grep `eval hostname`
このコマンドの出力には、完全修飾ホスト名とlocalhostのエントリが含まれています。
次に例を示します。
192.168.100.16 myhost.us.mycompany.com myhost 127.0.0.1 localhost localhost.localdomain
hostsファイルに完全修飾ホスト名が含まれていない場合は、ファイルを開き、必要な変更を行います。
Dynamic Host Configuration Protocol(DHCP)は、ネットワーク上で動的なIPアドレスを割り当てます。動的アドレッシングにより、コンピュータはネットワークに接続するたびに異なるIPアドレスを使用できます。コンピュータを接続したままでIPアドレスを変更できる場合もあります。DHCPシステムでは、静的IPアドレッシングと動的IPアドレッシングを混在させることができます。
DHCP設定時に、ソフトウェアによりIPアドレスが追跡され、ネットワーク管理が簡素化されます。これにより、新規コンピュータに一意のIPアドレスを手動で割り当てなくても、ネットワークに追加できます。
Oracle Databaseをマルチホーム・コンピュータにインストールできます。マルチホーム・コンピュータは複数のIPアドレスに関連付けられています。通常は、そのためにコンピュータに複数のネットワーク・カードが搭載されています。各IPアドレスはホスト名に関連付けられています。また、ホスト名の別名を設定できます。デフォルトでは、Oracle Universal InstallerはORACLE_HOSTNAME
環境変数の設定を使用してホスト名を検索します。ORACLE_HOSTNAME
が設定されておらず、インストール先コンピュータに複数のネットワーク・カードが搭載されている場合は、/etc/hosts
ファイルの最初のエントリを使用してホスト名を判別します。
クライアントは、このホスト名を使用するか、このホスト名の別名を使用して、コンピュータにアクセスできる必要があります。これを確認するには、短縮名(ホスト名のみ)および完全名(ホスト名とドメイン名)を使用して、クライアント・コンピュータからホスト名をpingします。両方のテストに成功する必要があります。
ORACLE_HOSTNAME
環境変数を設定する手順は、次のとおりです。
たとえば、完全修飾ホスト名がsomehost.us.acme.com
の場合は、次のいずれかのコマンドを入力します。
Bourne、BashまたはKornシェルの場合
$ ORACLE_HOSTNAME=somehost.us.acme.com $ export ORACLE_HOSTNAME
Cシェルの場合
% setenv ORACLE_HOSTNAME somehost.us.acme.com
複数の別名を持つコンピュータは、ネーミング・サービスに1つのIPと複数の別名で登録されます。ネーミング・サービスでは、これらの別名のいずれかが同じコンピュータに解決されます。この種のコンピュータにOracle Databaseをインストールする前に、ORACLE_HOSTNAME
環境変数を、ホスト名を使用するコンピュータに設定してください。
Oracle Databaseを非ネットワーク・コンピュータにインストールできます。ラップトップなどのコンピュータがDHCP用に構成されており、そのコンピュータをOracle Databaseのインストール後にネットワークに接続する予定の場合は、データベースのインストール先コンピュータでping
コマンドを使用して、コンピュータ自体に接続できるかどうかを確認します。この手順は、最初にホスト名のみ、次に完全修飾名を使用して実行します。この名前は/etc/hosts
ファイルで指定されている必要があります。
ping
コマンドに失敗した場合は、ネットワーク管理者に問い合せてください。
インストール後にコンピュータをネットワークに接続すると、コンピュータ上のOracle Databaseインスタンスはネットワーク上の他のインスタンスで作業できます。コンピュータでは、接続先ネットワークに応じて静的IPまたはDHCPを使用できます。
このシステムへOracleソフトウェアを初めてインストールするかどうかにより、またインストールする製品により、複数のオペレーティング・システム・グループおよびユーザーの作成が必要になる場合があります。
Oracle Databaseをインストールする場合は、次のオペレーティング・システム・グループおよびユーザーが必要です。
dba
)Oracle Databaseソフトウェアをシステムに初めてインストールする場合は、このグループを作成する必要があります。このグループにより、データベース管理権限(SYSDBA権限)を持つオペレーティング・システム・ユーザー・アカウントが識別されます。このグループのデフォルト名はdba
です。
デフォルトのdba
以外のグループ名を指定する場合は、「カスタム」インストール・タイプを選択してソフトウェアをインストールするか、このグループのメンバーでないユーザーとしてOracle Universal Installerを起動する必要があります。この場合は、このグループの名前を指定するように求めるプロンプトが表示されます。
oper
)これはオプションのグループです。一連のデータベース管理権限(SYSOPER権限)を限定した別個のオペレーティング・システム・ユーザー・グループが必要な場合は、このグループを作成します。デフォルトでは、OSDBAグループのメンバーにはSYSOPER権限も付与されます。
デフォルトであるdba
グループ以外に別個のOSOPERグループを指定する場合は、「カスタム」インストール・タイプを選択してソフトウェアをインストールするか、dba
グループのメンバーでないユーザーとしてOracle Universal Installerを起動する必要があります。この場合は、このグループの名前を指定するように求めるプロンプトが表示されます。通常、このグループ用に選択する名前はoper
です。
権限のないユーザーnobodyがシステム上に存在することを確認します。nobodyユーザーは、インストール後に外部ジョブ(extjob)実行可能ファイルの所有者にする必要があります。
すべてのインストールに、次のオペレーティング・システム・グループおよびユーザーが必要です。
oinstall
)Oracleソフトウェアをシステムに初めてインストールする場合は、このグループを作成する必要があります。通常、このグループ用に選択する名前はoinstall
です。このグループは、システムにインストールされている全OracleソフトウェアのカタログであるOracleインベントリの所有者となります。
oracle
)Oracleソフトウェアをシステムに初めてインストールする場合は、このユーザーを作成する必要があります。このユーザーは、インストールされる全ソフトウェアの所有者となります。このユーザーのプライマリ・グループには、Oracleインベントリ・グループを指定する必要があります。また、セカンダリ・グループとしてOSDBAグループおよびOSOPERグループを指定する必要があります。
システム上のOracleソフトウェアの全インストールに対して、1つのOracleインベントリ・グループが必要です。初回インストール後は、そのシステムへの以降のすべてのOracleソフトウェアのインストールに、同じOracleインベントリ・グループを使用する必要があります。ただし、個別にインストールする場合は、異なるOracleソフトウェア所有者ユーザー、OSDBAグループおよびOSOPERグループ(oracle
、dba
およびoper
以外)を作成するように選択できます。インストールごとに異なるグループを使用すると、各グループのメンバーは、システム上のすべてのデータベースではなく、関連するデータベース上でのみDBA権限を持つことになります。
必要なオペレーティング・システム・ユーザーおよびグループの作成方法については後述します。
Oracleインベントリ・グループが存在しない場合は、作成する必要があります。ここでは、Oracleインベントリ・グループが存在する場合にその名前を判別する方法と、必要な場合に作成する方法について説明します。
Oracleソフトウェアをシステムに初めてインストールするときには、Oracle Universal InstallerによりoraInst.loc
ファイルが作成されます。このファイルでは、Oracleインベントリ・グループ名およびOracleインベントリ・ディレクトリのパスが識別されます。
Oracleインベントリ・グループが存在するかどうかを判別するには、次のコマンドを入力します。
# more /etc/oraInst.loc
このコマンドの出力がoinstall
グループ名を示す場合は、このグループがすでに存在します。
oraInst.loc
ファイルが存在する場合、このコマンドの出力は次のようになります。
inventory_loc=/u01/app/oracle/oraInventory inst_group=oinstall
inst_group
パラメータは、Oracleインベントリ・グループ名oinstall
を示します。
oraInst.loc
ファイルが存在しない場合は、次のコマンドを入力してOracleインベントリ・グループを作成します。
# /usr/sbin/groupadd oinstall
次の場合には、OSDBAグループを作成する必要があります。
OSDBAグループが存在するかどうかを判別するには、次のコマンドを入力します。
# grep dba /etc/group
OSDBAグループが存在しない場合、または新規OSDBAグループが必要な場合は、次の手順で作成します。次のコマンドでは、同じ名前のグループが存在する場合を除き、グループ名にはdba
を使用してください。
# /usr/sbin/groupadd dba
OSOPERグループを作成するのは、一連の限られたデータベース管理権限(SYSOPERオペレータ権限)を持つオペレーティング・システム・ユーザーのグループを識別する必要がある場合のみです。ほとんどのインストールの場合は、OSDBAグループのみを作成すれば十分です。OSOPERグループを使用する必要があれば、次の場合に作成してください。
新規のOSOPERグループが必要な場合は、次の手順で作成します。次のコマンドでは、同じ名前のグループが存在する場合を除き、グループ名にはoper
を使用してください。
# /usr/sbin/groupadd oper
次の場合には、Oracleソフトウェア所有者ユーザーを作成する必要があります。
oracle
という名前のOracleソフトウェア所有者ユーザーが存在するかどうかを判別するには、次のコマンドを入力します。
# id oracle
oracle
ユーザーが存在する場合、このコマンドの出力は次のようになります。
uid=440(oracle) gid=200(oinstall) groups=201(dba),202(oper)
ユーザーが存在する場合は、既存のユーザーを使用するか、または別のoracle
ユーザーを作成するかを決定します。既存のユーザーを使用する場合は、ユーザーのプライマリ・グループがOracleインベントリ・グループであり、かつ適切なOSDBAグループおよびOSOPERグループのメンバーであることを確認してください。詳細は、次のいずれかの項を参照してください。
Oracleソフトウェア所有者ユーザーが存在しない場合、または新規Oracleソフトウェア所有者ユーザーが必要な場合は、次の手順で作成します。次の手順では、同じ名前のユーザーが存在する場合を除き、ユーザー名にはoracle
を使用してください。
oracle
ユーザーを作成するには、次のようなコマンドを入力します。
# /usr/sbin/useradd -g oinstall -G dba[,oper] oracle
各項目の意味は次のとおりです。
oracle
ユーザーのパスワードを設定します。
# passwd oracle
操作を続けるには、「ユーザーnobodyの有無の確認」に進んでください。
oracle
ユーザーが存在するが、そのプライマリ・グループがoinstall
でない場合、あるいは適切なOSDBAグループまたはOSOPERグループのメンバーでない場合は、次のようなコマンドを入力して変更します。-g
オプションを使用してプライマリ・グループを指定し、-G
オプションを使用して必要なセカンダリ・グループを指定します。
# /usr/sbin/usermod -g oinstall -G dba[,oper] oracle
ソフトウェアをインストールする前に、次の手順でシステム上にnobody
ユーザーが存在することを確認します。
# id nobody
このコマンドでnobody
ユーザーに関する情報が表示される場合、そのユーザーを作成する必要はありません。
nobody
ユーザーが存在しない場合は、次のコマンドを入力して作成します。
# /usr/sbin/useradd nobody
次の表で、各カーネル・パラメータが表に示す推奨値以上の値に設定されていることを確認してください。表の後に、値を確認および設定する手順について説明します。
前述のカーネル・パラメータに指定されている現行の値を表示し、必要に応じて変更する手順は、次のとおりです。
テキスト・エディタを使用して/etc/sysctl.conf
ファイルを作成または編集し、次のような行を追加または編集します。
kernel.shmall = 2097152 kernel.shmmax = 2147483648 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 fs.file-max = 65536 net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default = 262144 net.core.rmem_max = 262144 net.core.wmem_default = 262144 net.core.wmem_max = 262144
/etc/sysctl.conf
ファイルに指定した値は、システムの再起動時にも保持されます。
SUSEシステムの場合にのみ、次のコマンドを入力してシステムの再起動時に/etc/sysctl.conf
ファイルが確実に読み取られるようにします。
# /sbin/chkconfig boot.sysctl on
Linuxシステム上でソフトウェアのパフォーマンスを改善するためには、oracle
ユーザーの次のシェル制限値を大きくする必要があります。
シェル制限 | limits.confにある項目 | 強い制限 |
---|---|---|
最大オープン・ファイル記述子数 |
|
65536 |
シングル・ユーザーが使用可能な最大プロセス数 |
|
16384 |
シェル制限値を大きくする手順は、次のとおりです。
/etc/security/limits.conf
ファイルに次の各行を追加します。
oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536
/etc/pam.d/login
ファイルに次の1行を追加するか、またはこの行を編集します。
session required pam_limits.so
oracle
ユーザーのデフォルト・シェルに応じて、デフォルトのシェル起動ファイルを次のように変更します。
/etc/profile
ファイル(またはSUSEシステムの/etc/profile.local
ファイル)に次の各行を追加します。
if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi
csh
またはtcsh
)の場合は、/etc/csh.login
ファイル(または、SUSEシステムのファイル)/etc/csh.login.local
に次の各行を追加します。
if ( $USER == "oracle" ) then limit maxproc 16384 limit descriptors 65536 endif
操作を続けるには、「必須ソフトウェア・ディレクトリの識別」に進んでください。
Oracleソフトウェアについて、次の各ディレクトリを識別または作成する必要があります。
Oracleベース・ディレクトリは、Oracleソフトウェア・インストールのトップレベル・ディレクトリです。Microsoft Windowsシステム上でOracleソフトウェア・インストールに使用されるC:¥Oracle
ディレクトリに似ています。Linuxシステム上では、Optimal Flexible Architecture(OFA)ガイドラインに、Oracleベース・ディレクトリに次のようなパスを使用するという推奨事項があります。
/mount_point/app/oracle_sw_owner
各項目の意味は次のとおりです。
mount_point
は、Oracleソフトウェアが格納されるファイルシステムのマウント・ポイント・ディレクトリです。このマニュアルの例では、マウント・ポイント・ディレクトリに/u01
を使用しています。ただし、/oracle
または/opt/oracle
など、別のマウント・ポイント・ディレクトリも選択できます。
oracle_sw_owner
は、oracle
など、Oracleソフトウェア所有者のオペレーティング・システム・ユーザー名です。
複数のインストールに同じOracleベース・ディレクトリを使用する方法と、インストールごとに個別のOracleベース・ディレクトリを作成する方法があります。様々なオペレーティング・システム・ユーザーが同じシステムにOracleソフトウェアをインストールする場合は、各ユーザーが個別のOracleベース・ディレクトリを作成する必要があります。次の例では、Oracleベース・ディレクトリがすべて同じシステムに存在します。
/u01/app/oracle /u01/app/orauser /opt/oracle/app/oracle
次の各項では、インストールに適した既存のOracleベース・ディレクトリの識別方法、および必要に応じたOracleベース・ディレクトリの作成方法について説明します。
Oracleベース・ディレクトリを作成するか既存のものを使用するかに関係なく、ORACLE_BASE環境変数を設定して、このディレクトリへのフル・パスを指定する必要があります。
Oracleインベントリ・ディレクトリ(oraInventory
)には、システムにインストールされた全ソフトウェアのインベントリが格納されます。このディレクトリは、単一システムにインストールされたすべてのOracleソフトウェアに必須であり、共有のものです。システムにOracleソフトウェアを初めてインストールするときには、Oracle Universal Installerからこのディレクトリへのパス指定を求めるプロンプトが表示されます。次のパスを選択することをお薦めします。
oracle_base/oraInventory
指定したディレクトリが作成され、そこに適切な所有者、グループおよびアクセス権が設定されます。Oracleインベントリ・ディレクトリを手動で作成する必要はありません。
Oracleホーム・ディレクトリは、特定のOracle製品のソフトウェアをインストールするために選択するディレクトリです。様々なOracle製品、または同じOracle製品の異なるリリースは、個別のOracleホーム・ディレクトリにインストールする必要があります。Oracle Universal Installerを実行すると、このディレクトリへのパスと識別名の指定を求めるプロンプトが表示されます。Oracleホーム・ディレクトリは、Oracleベース・ディレクトリのサブディレクトリとして指定する必要があります。Oracleホーム・ディレクトリについては、次のようなパスを指定することをお薦めします。
oracle_base/product/10.2.0/db_1
指定したディレクトリ・パスがOracleベース・ディレクトリの下に作成されます。また、適切な所有者、グループおよびアクセス権も設定されます。Oracleホーム・ディレクトリを手動で作成する必要はありません。
インストールを開始する前に、既存のOracleベース・ディレクトリを識別するか、必要な場合は作成する必要があります。この項の内容は、次のとおりです。
既存のOracleベース・ディレクトリのパスが、OFAガイドラインに準拠していない場合があります。ただし、既存のOracleインベントリ・ディレクトリまたは既存のOracleホーム・ディレクトリを識別する場合、通常はOracleベース・ディレクトリを次の手順で識別できます。
次のコマンドを入力してoraInst.loc
ファイルの内容を表示します。
# more /etc/oraInst.loc
oraInst.loc
ファイルが存在する場合、このコマンドの出力は次のようになります。
inventory_loc=/u01/app/oracle/oraInventory inst_group=oinstall
inventory_loc
パラメータでは、Oracleインベントリ・ディレクトリ(oraInventory
)を識別します。oraInventory
ディレクトリの親ディレクトリは、通常、Oracleベース・ディレクトリです。前述の例では、/u01/app/oracle
はOracleベース・ディレクトリです。
次のコマンドを入力してoratab
ファイルの内容を表示します。
# more /etc/oratab
oratab
ファイルが存在する場合は、次のような行が含まれています。
*:/u03/app/oracle/product/10.2.0/db_1:N *:/opt/orauser/infra_904:N *:/oracle/9.2.0:N
各行で指定されているディレクトリ・パスは、Oracleホーム・ディレクトリを示します。使用するOracleソフトウェア所有者のユーザー名が末尾に付いているディレクトリ・パスが、Oracleベース・ディレクトリとして有効な選択となります。前述の例で、ソフトウェアのインストールにoracle
ユーザーを使用する場合は、次のディレクトリから選択できます。
/u03/app/oracle /oracle
このインストールに既存のOracleベース・ディレクトリを使用するように決定する前に、次の条件を満たしているかどうかを確認します。
要件 | 空きディスク領域 |
---|---|
Oracleベース・ディレクトリにソフトウェア・ファイルのみを格納する場合 |
最大3GB |
Oracleベース・ディレクトリにソフトウェア・ファイルとデータベース・ファイルの両方を格納する場合(本番データベースの場合は推奨外) |
最大4GB |
Oracleベース・ディレクトリがあるファイルシステムの空きディスク領域を判断するには、次のコマンドを入力します。
#df -
h
oracle_base_path
決定した方法に応じて、次のどちらかを参照してください。
oracle
ユーザーの環境を構成するときに(後述)、選択したディレクトリを指定するようにORACLE_BASE環境変数を設定します。
Oracleベース・ディレクトリを作成する前に、次に示すように、十分な空きディスク領域を持つ適切なファイルシステムを識別する必要があります。
要件 | 空きディスク領域 |
---|---|
Oracleベース・ディレクトリにソフトウェア・ファイルのみを格納する場合 |
3GBまで。プラットフォームによって異なります。 |
Oracleベース・ディレクトリにソフトウェア・ファイルとデータベース・ファイルの両方を格納する場合(本番データベースの場合は推奨外) |
4GBまで。プラットフォームによって異なります。 |
適切なファイルシステムを識別する手順は、次のとおりです。
df -k
コマンドを使用して、マウントされている各ファイルシステムの空きディスク領域を判別します。
ローカル・ファイルシステム、クラスタ・ファイルシステム、または認定されているNASデバイス上のNFSファイルシステムを識別できます。
Oracleベース・ディレクトリを作成し、適切な所有者、グループおよびアクセス権を指定する手順は、次のとおりです。
# mkdir -p /mount_point/app/oracle_sw_owner # chown -R oracle:oinstall /mount_point/app/oracle_sw_owner # chmod -R 775 /mount_point/app/oracle_sw_owner
たとえば、識別したマウント・ポイントが/u01
で、oracle
がOracleソフトウェア所有者のユーザー名の場合、推奨されるOracleベース・ディレクトリ・パスは次のようになります。
/u01/app/oracle
oracle
ユーザーの環境を構成するときに(後述)、作成したOracleベース・ディレクトリを指定するようにORACLE_BASE環境変数を設定します。
次の表に、Oracleのデータベース・ファイルおよびリカバリ・ファイルを格納するにあたり、サポートされる記憶域オプションを示します。Oracleデータベース・ファイルには、データファイル、制御ファイル、REDOログ・ファイル、サーバー・パラメータ・ファイルおよびパスワード・ファイルが含まれます。
すべてのインストールについて、Oracleデータベース・ファイルに使用する記憶域オプションを選択する必要があります。また、インストール時に自動バックアップを有効にする場合は、リカバリ・ファイル(フラッシュ・リカバリ領域)に使用する記憶域オプションを選択する必要があります。各ファイル・タイプに、同じ記憶域オプションを使用する必要はありません。
記憶域オプション |
サポートされるファイル・タイプ |
|
---|---|---|
データベース | リカバリ | |
ファイルシステム |
Yes |
Yes |
自動ストレージ管理 |
Yes |
Yes |
RAWデバイス |
Yes |
No |
各ファイル・タイプに使用する記憶域オプションを選択する場合は、次のガイドラインに従ってください。
インストールを開始する前にディスク記憶域を構成する方法については、選択するオプションに応じて次の各項を参照してください。
この項の内容は、次のとおりです。
ファイルシステムにOracleデータベース・ファイルを格納する場合は、次のガイドラインを使用してファイルの格納場所を決定できます。
最適のパフォーマンスと信頼性を得るには、複数の物理デバイス上でRAIDデバイスまたは論理ボリュームを選択して、Stripe-And-Mirror-Everything(SAME)方法論を実装します。
この方法では、様々なデバイスに物理I/Oを分散させ、個別の制御ファイルを作成することで信頼性を高めることができます。また、付録D「Optimal Flexible Architecture」で説明するOFAガイドラインを完全に実現できます。この方法を実装するには、インストール時に「詳細」データベース作成オプションまたは「カスタム」インストール・タイプを選択する必要があります。
本番データベースの場合は、そのデータベースの用途に応じてディスク領域の所要量を見積もる必要があります。
oracle
ユーザーに書込み権限が必要です。
ファイルシステムにOracleリカバリ・ファイルを格納する場合は、次のガイドラインを使用してファイルの格納場所を決定できます。
このデフォルトの位置は、本番データベースにはお薦めしません。
個別のファイルシステム上でOracleデータベース・ファイルまたはリカバリ・ファイルのディレクトリをOracleベース・ディレクトリに作成する手順は、次のとおりです。
df -k
コマンドを使用して、マウントされている各ファイルシステムの空きディスク領域を判別します。
ファイル・タイプ | ファイルシステム要件 |
---|---|
データベース・ファイル |
次のいずれかを選択します。 |
リカバリ・ファイル |
2.4GB以上の空きディスク領域を持つファイルシステムを選択します。 |
複数のファイル・タイプに対して同じファイルシステムを使用している場合は、タイプごとのディスク領域要件を加算して、合計ディスク領域要件を判別します。
この項では、自動ストレージ管理で使用できるようにディスクを構成する方法について説明します。ディスクを構成する前に、必要なディスク数および空きディスク領域の量を判別する必要があります。次の項では、要件の識別方法および各プラットフォームにおけるディスクの構成方法を説明します。
この項ではディスクについて説明していますが、自動ストレージ管理ディスク・グループ内の認定されたNASストレージ・デバイス上でゼロ埋込みファイルを使用することもできます。自動ストレージ管理ディスク・グループで使用できるようにNASベース・ファイルを作成して構成する方法については、付録Bを参照してください。
注意
自動ストレージ管理を構成する一般的な手順は、次のとおりです。
自動ストレージ管理を使用して記憶要件を識別するには、必要なデバイス数および空きディスク領域の量を判別する必要があります。このタスクを完了する手順は、次のとおりです。
インストール時に自動バックアップを有効にする場合、フラッシュ・リカバリ領域に自動ストレージ管理ディスク・グループを指定して、リカバリ・ファイルの記憶域メカニズムとして自動ストレージ管理を選択できます。インストール時のデータベース作成の選択方法により、次のオプションを指定できます。
Oracle Database Configuration Assistantを使用してインストール後にデータベースを作成する場合は、同じ選択ができます。
自動ストレージ管理ディスク・グループに冗長性レベルを選択すると、ディスク・グループにおける自動ストレージ管理によるファイルのミラー化方法および必要なディスク数とディスク領域の量を、次のように判別できます。
外部冗長性ディスク・グループには、少なくとも1つのディスク・デバイスが必要です。外部冗長性ディスク・グループの有効なディスク領域は、その全デバイス内のディスク領域の合計です。
このオプションを選択すると、自動ストレージ管理では、ディスク・グループの内容はミラー化されません。この冗長性レベルは、次のいずれかの場合に選択します。
標準冗長性ディスク・グループでは、パフォーマンスおよび信頼性を改善するために、自動ストレージ管理により、データファイルには2方向ミラー化、制御ファイルには3方向ミラー化がデフォルトで使用されます。あるいは、2方向ミラー化を使用するか、ミラー化を使用しないこともできます。2方向ミラー化を使用する場合、標準冗長性ディスク・グループには、2つ以上の障害グループ(または2つ以上のディスク・デバイス)が必要です。標準冗長性ディスク・グループの有効なディスク領域は、その全デバイス内のディスク領域の合計の1/2です。
Oracleでは、ほとんどのインストールに標準冗長性ディスク・グループの使用をお薦めします。
ディスク・グループの内容は、デフォルトで3方向でミラー化されます。高冗長性ディスク・グループを作成するには、3つ以上の障害グループ(3つ以上のデバイス)を指定する必要があります。
高冗長性ディスク・グループでは最高水準のデータ保護が提供されますが、この冗長性レベルの使用を決定する前に追加するストレージ・デバイスの高コストを考慮する必要があります。
次の表を使用して、インストールに必要な最小ディスク数と最小ディスク領域を判別します。
冗長性レベル | 最小ディスク数 | データファイル | リカバリ・ファイル |
両方のファイル・ タイプ |
---|---|---|---|---|
外部 |
1 |
1.15GB |
2.3GB |
3.45GB |
標準 |
2 |
2.3GB |
4.6GB |
6.9GB |
高 |
3 |
3.45GB |
6.9GB |
10.35GB |
ASMインスタンスがシステム上ですでに実行中である場合、これらの領域要件を満たすように既存のディスク・グループを使用できます。必要に応じて、インストール時にディスクを既存のディスク・グループに追加できます。
次の手順では、既存のディスク・グループの識別方法およびディスク・グループに含まれる空きディスク領域の判別方法を説明します。
標準冗長性ディスク・グループまたは高冗長性ディスク・グループを使用する場合、ディスク・デバイスのセットをカスタム障害グループに関連付けることにより、データベースをハードウェア障害からさらに保護できます。デフォルトでは、各デバイスはそれぞれの障害グループを導出します。ただし、標準冗長性ディスク・グループの2つのディスク・デバイスが同じSCSIコントローラに接続されている場合、コントローラに障害が発生するとディスク・グループは使用できなくなります。この例のコントローラは、シングル・ポイント障害です。
このような障害を防ぐために、2つのSCSIコントローラ(それぞれが2つのディスクを持つ)を使用し、各コントローラに接続するディスクに対して障害グループを定義できます。この構成では、ディスク・グループによる1つのSCSIコントローラの障害の許容が可能になります。
既存の自動ストレージ管理ディスク・グループにデータベース・ファイルまたはリカバリ・ファイルのいずれかを格納する場合は、選択するインストール方法に応じて次を選択します。
Oracle Database Configuration Assistantを使用してインストール後にデータベースを作成する場合は、同じ選択ができます。
既存の自動ストレージ管理ディスク・グループが存在するかどうか、またはディスク・グループ内に十分なディスク領域があるかどうかを判断するには、Oracle Enterprise Manager Grid ControlまたはDatabase Controlを使用できます。あるいは、次の手順を使用できます。
oratab
ファイルの内容を表示して、ASMインスタンスがシステム上に構成されているかどうかを判別します。
# more /etc/oratab
ASMインスタンスがシステム上に構成されると、次の行に類似した行がoratab
ファイルに含まれます。
+ASM:oracle_home_path:N
この例では、+ASM
はASMインスタンスのシステム識別子(SID)であり、oracle_home_path
はインストールされているOracleホーム・ディレクトリです。表記規則では、ASMインスタンスのSIDは、プラス記号で始まります。
ORACLE_SID
およびORACLE_HOME
環境変数を一時的に設定して、使用するASMインスタンスに適切な値を指定します。たとえば、自動ストレージ管理のSIDがOraDB10g+ASM
で、ORACLE_BASE
ディレクトリのasm
サブディレクトリにある場合は、次のコマンドを入力して必須設定を作成します。
# $ORACLE_HOME/bin/sqlplus "SYS/SYS_password as SYSDBA" SQL> STARTUP
SQL> SELECT NAME,TYPE,TOTAL_MB,FREE_MB FROM V$ASM_DISKGROUP;
自動ストレージ管理にDASまたはSANディスクを使用するには、そのディスクにパーティション表が必要です。ディスクごとに、全体を含むパーティションを1つのみ作成することをお薦めします。
Oracleが提供する自動ストレージ管理ライブラリ・ドライバを使用して、自動ストレージ管理で使用するディスク・デバイスの構成および管理を簡素化できます。自動ストレージ管理用に構成されているディスクを、候補ディスクと呼びます。
Linux上でデータベース記憶域に自動ストレージ管理を使用する場合は、自動ストレージ管理ライブラリ・ドライバおよび関連ユーティリティをインストールし、これらを使用して自動ストレージ管理ディスク・グループに組み込むデバイスを構成することをお薦めします。自動ストレージ管理ライブラリ・ドライバを使用しない場合は、使用する各ディスク・デバイスをRAWデバイスにバインドする必要があります。次の項では、それぞれの方法を使用したディスクの構成方法を説明します。
自動ストレージ管理ライブラリ・ドライバを使用して自動ストレージ管理デバイスを構成するには、次のタスクを完了します。
自動ストレージ管理ライブラリ・ドライバ・ソフトウェアをインストールおよび構成する手順は、次のとおりです。
# uname -rm
http://www.oracle.com/technology/tech/linux/asmlib/index.html
次の3つのパッケージをインストールする必要があります。version
は自動ストレージ管理ライブラリ・ドライバのバージョン、arch
はシステム・アーキテクチャ、kernel
は使用しているカーネルのバージョンです。
oracleasm-support-version.arch.rpm oracleasm-kernel-version.arch.rpm oracleasmlib-version.arch.rpm
root
に切り替えます。
$ su -
# rpm -Uvh oracleasm-support-version.arch.rpm \ oracleasm-kernel-version.arch.rpm \ oracleasmlib-version.arch.rpm
たとえば、x86システム上でRed Hat Enterprise Linux AS 3.0エンタープライズ・カーネルを使用する場合は、次のようなコマンドを入力します。
# rpm -Uvh oracleasm-support-1.0.0-1.i386.rpm \ oracleasm-2.4.9-e-enterprise-1.0.0-1.i686.rpm \ oracleasmlib-1.0.0-1.i386.rpm
oracle
)とOSDBAグループのGID(通常はdba
)を判別します。
# id oracle
configure
オプションを指定してoracleasm
初期化スクリプトを実行します。
# /etc/init.d/oracleasm configure
自動ストレージ管理ディスク・グループで使用するディスク・デバイスを構成する手順は、次のとおりです。
# /sbin/fdisk -l
ディスクのタイプによっては、次のようにデバイス名が異なる場合があります。
デバイスをディスク・グループに含めるには、ドライブ全体のデバイス名を指定する方法と、パーティションのデバイス名を指定する方法があります。
fdisk
またはparted
を使用して、使用するディスク・デバイス上でディスク全体のパーティションを1つ作成します。
# /etc/init.d/oracleasm createdisk DISK1 /dev/sdb1
この例では、DISK1
はディスクに割り当てる必要のある名前です。
自動ストレージ管理ライブラリ・ドライバおよびディスクを管理するには、次のように様々なオプションを指定してoracleasm
初期化スクリプトを使用します。
RAWデバイスを使用して自動ストレージ管理用ディスクを構成する手順は、次のとおりです。
# /sbin/fdisk -l
ディスクのタイプによっては、次のようにデバイス名が異なる場合があります。
デバイスをディスク・グループに含めるには、ドライブ全体のデバイス名を指定する方法と、パーティションのデバイス名を指定する方法があります。
fdisk
またはparted
を使用して、使用するディスク・デバイス上でディスク全体のパーティションを1つ作成します。
すでに他のデバイスにバインドされているRAWデバイスを判別するには、次のコマンドを入力します。
# /usr/bin/raw -qa
/dev/raw/raw
n
で、n
は識別番号です。ディスク・グループに含めるデバイスごとに、未使用のRAWデバイス名を識別します。
/etc/sysconfig/rawdevices
ファイルを開き、ディスク・グループに含めるデバイスごとに次のような1行を追加します。
/dev/raw/raw1 /dev/sdb1
ディスク・デバイスごとに、使用しないRAWデバイスを指定します。
rawdevices
ファイルに指定したRAWデバイスごとに、次のようなコマンドを入力して、デバイス・ファイルの所有者、グループおよびアクセス権を設定します。
# chown oracle:dba /dev/raw/rawn # chmod 660 /dev/raw/rawn
# /sbin/service rawdevices restart
システムの再起動時に、rawdevices
ファイルにリストされているデバイスが自動的にバインドされます。
# /usr/sbin/raw -qa
RAWデバイス名の書式は/dev/raw/raw
n
で、n
は識別番号です。
ディスク・グループに含めるデバイスごとに、すべてのノード上で未使用のRAWデバイス名を識別します。
/etc/raw
ファイルを開き、ディスク・グループに含めるデバイスごとに次のような1行を追加します。
raw1:sdb1
ディスク・デバイスごとに、使用しないRAWデバイスを指定します。
/etc/raw
ファイルに指定したRAWデバイスごとに、次のようなコマンドを入力して、デバイス・ファイルの所有者、グループおよびアクセス権を設定します。
# chown oracle:dba /dev/raw/rawn # chmod 660 /dev/raw/rawn
# /etc/init.d/raw start
# /sbin/chkconfig raw on
記憶域にRAWデバイスも使用する場合は、「RAWパーティションまたはRAW論理ボリュームの構成」を参照してください。
それ以外の場合は、次の項を参照してください。
次の各項では、RAWパーティションまたはRAW論理ボリュームの構成方法について説明します。
次の各項では、Oracleデータベース・ファイル記憶域用のRAWパーティションを作成する手順について説明します。サポートされるすべてのLinuxディストリビューションで、データベース・ファイル記憶域用のRAWパーティションを使用できます。
あるいは、Red Hat Enterprise Linux 3およびSUSE Linux Enterprise Serverでは、論理ボリューム・マネージャ(LVM)を使用して、必要なサイズの論理ボリュームを作成し、RAWパーティションのかわりに使用できます。LVMは、RAWデバイス上にOracleデータベース・ファイルを格納する際に使用すると便利です。たとえば、LVMを使用した場合は、単一の物理ディスクに作成できるパーティション数に制限がありません。
RAWパーティションのかわりに論理ボリュームを使用する場合の手順は、次のとおりです。
ボリューム・グループには、oracle_vg
またはdbname
_vg
などの名前を使用できます。
論理ボリュームの作成時には、次のようなネーミング規則に従います。
dbname_objectname_raw_sizem
たとえば、salesデータベースにあるSYSTEM表領域(500MB)の論理ボリュームには、次のような名前を指定できます。
sales_system_raw_500m
表2-1に、データベース・ファイルについて構成する必要があるRAWパーティションの数およびサイズを示します。
RAWデバイスにIDE、SCSIまたはRAIDデバイスを使用する場合の手順は、次のとおりです。
# /sbin/fdisk -l
ディスクのタイプによっては、次のようにデバイス名が異なる場合があります。
必要なRAWパーティションは、新規に追加したデバイス上、またはパーティション化されていない空き領域を含むパーティション化デバイス上で作成できます。パーティション化されていない空き領域を含むデバイスを識別するには、既存のパーティションの開始シリンダ番号と終了シリンダ番号を調べて、そのデバイスに未使用のシリンダが含まれているかどうかを判別します。
# /sbin/fdisk devicename
パーティションの作成時には、次のガイドラインに従ってください。
必要なパーティションを作成した後、そのパーティションをRAWデバイスにバインドする必要があります。ただし、最初に、他のデバイスにバインドされているRAWデバイスを判別してください。この作業の手順は、使用中のLinuxディストリビューションに応じて異なります。
# /usr/bin/raw -qa
RAWデバイス名の書式は/dev/raw/raw
n
で、n
は識別番号です。
使用するデバイスごとに、未使用のRAWデバイス名を識別します。
/etc/sysconfig/rawdevices
ファイルを開き、作成したパーティションごとに次のような1行を追加します。
/dev/raw/raw1 /dev/sdb1
パーティションごとに、使用しないRAWデバイスを指定します。
rawdevices
ファイルに指定したRAWデバイスごとに、次のようなコマンドを入力して、デバイス・ファイルの所有者、グループおよびアクセス権を設定します。
# chown oracle:dba /dev/raw/rawn # chmod 660 /dev/raw/rawn
# /sbin/service rawdevices restart
システムの再起動時に、rawdevices
ファイルにリストされているデバイスが自動的にバインドされます。
# /usr/sbin/raw -qa
RAWデバイス名の書式は/dev/raw/raw
n
で、n
は識別番号です。
使用するデバイスごとに、すべてのノード上で未使用のRAWデバイス名を識別します。
/etc/raw
ファイルを開き、次のような行を追加して各パーティションを未使用のRAWデバイスと関連付けます。
raw1:sdb1
/etc/raw
ファイルに指定したRAWデバイスごとに、次のようなコマンドを入力して、デバイス・ファイルの所有者、グループおよびアクセス権を設定します。
# chown oracle:dba /dev/raw/rawn # chmod 660 /dev/raw/rawn
# /etc/init.d/raw start
# /sbin/chkconfig raw on
Oracle Database Configuration Assistantでデータベース・ファイルごとに適切なRAWデバイスを識別できるように、次のようにRAWデバイス・マッピング・ファイルを作成する必要があります。
# mkdir -p $ORACLE_BASE/oradata/dbname # chown -R oracle:oinstall $ORACLE_BASE/oradata # chmod -R 775 $ORACLE_BASE/oradata
この例で、dbname
は前に選択したデータベース名です。
$ORACLE_BASE/oradata/
dbname
ディレクトリに移動します。
dbname
_raw.conf
ファイルを編集し、次のようなファイルを作成します。
system=/dev/raw/raw1 sysaux=/dev/raw/raw2 example=/dev/raw/raw3 users=/dev/raw/raw4 temp=/dev/raw/raw5 undotbs1=/dev/raw/raw6 redo1_1=/dev/raw/raw8 redo1_2=/dev/raw/raw9 control1=/dev/raw/raw12 control2=/dev/raw/raw13 spfile=/dev/raw/raw14 pwdfile=/dev/raw/raw15
このファイルの作成または編集時には、次のガイドラインに従ってください。
oracle
ユーザーの環境を構成するときに(後述)、DBCA_RAW_CONFIG環境変数を設定して、このファイルへのフルパスを指定します。
作業を進めるには、「既存のOracleプロセスの停止」を参照してください。
インストール時にデータベースの作成を選択する場合、ほとんどのインストール・タイプではTCP/IPポート1521とIPCキー値EXTPROCを使用してデフォルトのOracle Net Listenerが構成および開始されます。しかし、既存のOracle Net Listenerプロセスが同じポートまたはキー値を使用している場合には、Oracle Universal Installerは新しいリスナーを構成するのみで開始はできません。新しいリスナー・プロセスがインストール時に確実に開始されるようにするには、Oracle Universal Installerを開始する前にすべての既存のリスナーをシャットダウンする必要があります。
既存のリスナー・プロセスが実行しているかどうかを判別し、必要に応じてシャットダウンする手順は、次のとおりです。
oracle
に切り替えます。
# su - oracle
$ ps -ef | grep tnslsnr
このコマンドを実行すると、システム上で実行しているOracle Net Listenerに関する情報が表示されます。
... oracle_home1/bin/tnslsnr LISTENER -inherit
この例では、oracle_home1
はリスナーがインストールされているOracleホーム・ディレクトリで、LISTENER
はリスナー名です。
$ $ORACLE_HOME/bin/lsnrctl status listenername
$ $ORACLE_HOME/bin/lsnrctl stop listenername
Oracle Universal Installerは、oracle
アカウントから実行します。ただし、Oracle Universal Installerを起動する前に、oracle
ユーザーの環境を構成する必要があります。環境を構成するには、次の設定が必要です。
oracle
ユーザーの環境を設定する手順は、次のとおりです。
xterm
)などの新規ターミナル・セッションを開始します。
$ xhost fully_qualified_remote_host_name
次に例を示します。
$ xhost somehost.us.acme.com
oracle
ユーザーとしてログインします。
oracle
ユーザーとしてログインしていない場合は、ユーザーをoracle
に切り替えます。
$ su - oracle
oracle
ユーザーのデフォルト・シェルを判別するには、次のコマンドを入力します。
$ echo $SHELL
oracle
ユーザーのシェル起動ファイルを開きます。
umask 022
$ DISPLAY=local_host
:0.0 ; export DISPLAY
% setenv DISPLAY local_host
:0.0
この例で、local_host
は、Oracle Universal Installerの表示に使用するシステム(ワークステーションまたはPC)のホスト名またはIPアドレスです。
/tmp
ディレクトリの空きディスク領域が400MB未満であることが判明した場合は、400MB以上の空き領域を持つファイルシステムを識別し、TEMPおよびTMPDIR環境変数を設定して、このファイルシステム上の一時ディレクトリを指定します。
$ ORACLE_BASE=/u01/app/oracle $ ORACLE_SID=sales $ export ORACLE_BASE ORACLE_SID
% setenv ORACLE_BASE /u01/app/oracle % setenv ORACLE_SID sales
これらの例で、/u01/app/oracle
は前に作成または識別したOracleベース・ディレクトリ、sales
はデータベースの名前(通常は5文字以内)です。
$ umask $ env | more
umask
コマンドで値22
、022
または0022
が表示され、この項で設定した環境変数が正しい値になっていることを確認します。
|
Copyright © 2005, 2008 Oracle Corporation. All Rights Reserved. |
|