linux 64ビットで10 g oracle 64ビットをインストール

13657 ワード

ソフトウェア情報のインストール
Redhat 6.5 64ビット
Oracle 10 g 64ビット
1、固定IP
#vi /etc/sysconfig/network-scripts/ifcfg-eth0

終了、再起動
#service network restart

ステップ1:インストール前の準備
ソフトウェア要件環境:デフォルトのカーネルおよび必要なパッケージのバージョン(またはそれ以上)
インストールされていない場合は、次の開発パッケージがインストールされているかどうかを確認します.
# rpm –qa         --    

linux x 86 10 g Release 2(10.2)バージョン
-- glibc-2.3.4-2.9
-- make-3.79
-- binutils-2.15.92.0.2-13
-- gcc-3.4.3-22.1
-- libaio-0.3.96
-- glibgc-common-2.3.4-2.9
-- setarch-1.6-1
-- pdksh-5.2.14-30
-- openmotif21-2.1.30-11
-- sysstat-5.0.5-1
-- gnome-libs-1.4.1.2.90-44.1
-- libstdc++-3.4.3-22.1
-- libstdc++devel-3.4.3-22.1
-- compat-libstdc++-296-2.96-132.7.2
-- compat-db-4.1.25-9
-- control-center-2.8.0-12
-- xscreensaver-4.18-5.rhel4.2
10 g Release 2(10.2)for linux x 86-64バージョン
binutils-2.20.51.0.2-5.36.el6.x86_64.rpm
compat-db-4.6.21-15.El 6(32ビットおよび64ビット)control-center-2.28.1-39.el6.(64ビット)
gcc-4.4.7-4.El 6(64ビット)gcc-c++-4.4.7-4.El 6(64ビット)
glibc-2.12-1.132(32ビットと64ビット)
glibc-common-2.12-1.132.el6.(64ビット)
glibc-devel-2.12-1.132.el6.(32ビットと64ビット)
compiz-gnome-0.8.2-24.El 6(64ビット)
compat-libstdc++-33-3.2.3-69.el6.(32ビットと64ビット)
libstdc++-4.4.7-4.El 6(32ビットと64ビット)
libstdc++-devel-4.4.7-4.el6.(32ビットと64ビット)
mksh-39-7.el6_4.1.(64ビット)(一部のシステムはpdksh)
make-3.81-20.el6.(64ビット)
libXp-1.0.0-15.1.el6.(32ビットと64ビット)
libXt-1.1.3-1.el6.(32ビットと64ビット)
libXtst-1.2.1-2.El 6(32ビットと64ビット)
sysstat-9.0.4-22.El 6(64ビット)
ローカルyumソースを作成してインストールしやすい
マウントディスク
#mount /dev/cdrom /media

yumプロファイルの作成
#vi /etc/yum.repos.d/local.repo

内容は次のとおりです.
[base]
name=linux6
baseurl=file:///media
gpgcheck=0
enable=1

YUMソースアドレスの変更
#vi /usr/lib/python2.6/site-packages/yum/yumRepo.py

remote=url+'/'+relativeを見つけます
変更:remote='/yum'+relative
これでローカルYUMソース構成が完了しました.
Oracleのインストールにはグラフィックインタフェースを起動する必要がありますので、まずグラフィックインタフェースをインストールします.
# yum groupinstall “X Window System”
# yum groupinstall “Desktop”

ステップ2:oracleの作成に必要なグループ、ユーザー、oracleユーザー環境変数の設定
1.oracleインストールユーザーグループとユーザーアカウントの追加
# groupadd dba
# groupadd oinstall
# useradd -m -g oinstall -G dba oracle 
# passwd oracle

パスワードをoracleに設定
2.oracleインストールディレクトリを作成し、ユーザーに権限を与える
#mkdir -p /home/oracle/10g
#mkdir -p /home/oracle/dbdata       
#mkdir -p /home/oracle/dbbak
#chown -R oracle.oinstall /home/oracle/10g
#chown -R oracle.dba /home/oracle/10g
#chown -R 775 /home/oracle/10g
#chown -R oracle.dba /home/oracle/dbdata
#chown -R oracle.dba /home/oracle/dbbak
#chmod 775 /home/oracle

3.ファイルに対するoracleの要件の設定
ファイルの編集:
# vi /etc/security/limits.conf

次の文を追加します.
oracle   soft nofile 1024
oracle  hard nofile 65536
oracle  soft nproc 2047
oracle  hard nproc 16384

4.カーネルパラメータの設定
ファイルの編集:
# vi /etc/sysctl.conf

次の文を追加します.
kernel.shmall = 2097152
kernel.shmmax = 2147483648 (1073741824)
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536   (206173)
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

ディスクが終了したら、このコマンドを実行して、正しく設定されているかどうかを確認します.
# sysctl –p

..........................................................................
SHMMAX最大共有メモリセグメントサイズ(バイト)512 kB+8192*バッファ数+追加...無限大
SHMMIN最小共有メモリセグメントサイズ(バイト)1(最大約256 kB)
SHMSEGのプロセスあたりの最大共有メモリセグメント数は1セグメントしか必要ないが、デフォルトはこれよりずっと高い.
SHMMNIシステム範囲の最大共有メモリセグメント数SHMSEG+他のアプリケーションに使用される空間に類似
SEMMNI信号灯識別子の最小数(すなわち、ソケット)>=ceil(max_connections%16)
SEMMNSシステム範囲の最大信号灯数ceil(max_connections/16)*17+その他の応用のための空間
SEMMSL信号セットあたり最小信号量>=17
SEMMAP信号マッピングのレコード数はテキストを参照
SEMVMX信号灯の最大値>=255(デフォルトは通常32767で、要求されない限り変更しない)
...............................................................................
5.ログインプロファイルを/etc/pamに設定.d/loginファイルに次の行を追加します.
#vi /etc/pam.d/login
session    required     /lib64/security/pam_limits.so
session    required    pam_limits.so

6.oracleユーザーログイン環境変数の設定
Rootユーザー編集
 #vi /etc/profile

末尾に追加
if [ \$USER = "oracle" ]; then
     if [ \$SHELL = "/bin/ksh" ]; then
           ulimit -p 16384
           ulimit -n 65536
      else
       ulimit -u 16384 -n 65536
     fi
fi

7.ホスト名とipの設定
#vi /etc/hosts

次の内容を追加
192.168.1.212 dev

8.oracleユーザーを使用してログインし、環境プロファイルを変更する
ファイルの編集:
$ vi $HOME/.bash_profile

次の文を追加します.
export ORACLE_BASE=/home/oracle/10g
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=eup
export ORACLE_TERM=xterm
export LD_ASSUME_KERNEL=2.6.42
export NLS_LANG=AMERICAN
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORA_NLS33=$ORACLE_HOME/ocoommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/lib32:$ORACLE_HOME/oracm/lib:/lib64:/lib:/usr/lib:/us
r/lib64:/usr/local/lib
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
export CLASSPATH
export PATH=$PATH:$ORACLE_HOME/bin

ディスクアウト
$ source $HOME/.bash_profile

次の手順で有効かどうかを確認できます.
$ echo $ORACLE_HOME

プロファイルの内容が表示されている場合は有効です.
システムの再起動
#reboot

9.oracleインストールファイルをアップロードし、解凍する
10201_database_linux_x86_64.cpio.gz
#gunzip 10201_database_linux_x86_64.cpio.gz
#cpio -idmv < 10201_database_linux_x86_64.cpio

ステップ3:oracleソフトウェアとデータベースの作成をインストールする
ステップ1:接続構成グラフィックパラメータの設定
1.xmanageリモートツールを選択し、中のXshellツールを開いてlinuxにログインし、SSHはグラフィックウィンドウをサポートしない
xshellの選択
新規接続
2.グラフィック設定
Rootユーザーの下で実行
# xhost +
access control disabled, clients can connect from any host

上記のプロンプトの設定に成功しました
Oracleユーザーログイン
#xhost +
access control disabled, clients can connect from any host

oracleユーザーの下でも設定に成功しました
xhost+を入力して問題が発生しました.関連する問題の解決を参照してください.
3.oracleユーザーがログインし、インストールファイルディレクトリに入り、runInstallerファイルを実行する
[root@dev ~]# su - oracle
[oracle@dev ~]$ cd /opt/oracle/database/
[oracle@dev database]$ ll
total 36
drwxrwxr-x. 9 94110 42424  4096 Oct 19  2005 doc
drwxr-xr-x. 5 94110 42424  4096 Oct 23  2005 install
drwxr-xr-x. 2 94110 42424  4096 Oct 23  2005 response
-rwxr-xr-x. 1 94110 42424  1326 Oct 23  2005 runInstaller
drwxrwxr-x. 9 94110 42424 12288 Oct 23  2005 stage
-rw-rw-r--. 1 94110 42424  5416 Oct 19  2005 welcome.html
[oracle@dev database]$ ./runInstaller

手順2:oracleソフトウェアのインストール
(以下の画像経路は実際の状況に応じて設定)
1.インストーラ画面に入り、ウィザードの指示に従ってインストールする
「Oracle Home Location」でのパスは$HOME/.bash_プロファイルで構成されているORACLE_HOMEパスが一致し、「UNIX DBA Group」にdbaを入力し、「Create Starter Database」オプションをオフにし、ライブラリを構築せずに「Next」をクリックします.
2.Inventoryディレクトリの構成
「Next」をクリックします.
3.rootで構成を実行します(このプロンプトが表示されるステップは固定されていません.実際のインストール状況によって異なります)
rootユーザーはダイアログボックスのスクリプトを実行した後、「Continue」をクリックします.
4.インストール前のチェック(システム、パッケージ、環境変数などを含む)
システムの検査が終わった後に問題がなくて“Next”をクリックします;問題があればヒントを押して解決します.
5.インストール概要の表示
「Install」をクリックするとインストールを開始します.
6.設置プロセス
7.アシスタントの構成
システムの自動構成が完了したら、rootユーザーでダイアログボックスで要求された実行スクリプトを入力し、実行後に「OK」をクリックします.
8.最後のページでは、これらのurlをメモして「Exit」をクリックしたほうがいいです.
9.確認
「Yes」をクリックしてインストールを完了
ステップ3:データベースの作成(dbca)
Oracleユーザーにログインし、
#./home/oracle/10g/product/10.2.0/db_1/bin/dbca  --       

「Next」をクリックします.
「Createa Database」を選択し、「Next」をクリックします.
「General Purpose」を選択し、「Next」をクリックします. 
インスタンス名を設定し、次に
次のステップ
管理者パスワードを設定し、「Usethe Same Password for All Account」を選択して下のリストのユーザーに統一的なパスワードを設定し(推奨しない)、「UseDifferent Passwords」を選択して下のリストのユーザーにそれぞれパスワードを設定します.設定後「Next」をクリックします.
データベースファイルシステムを設定し、デフォルトの「File System」を選択し、「Next」をクリックします. 
「UseCommon Location for All Database Files」を選択してデータベースファイルの保存パスを設定し、「Next」をクリックします. 
10 gフラッシュバックパラメータを設定し、デフォルト設定で「Next」をクリックする. 
次のステップ
「Character Sets」タブを選択し、「Choose from the list of character sets」を選択リストで「ZHS 16 GBK」を選択し、その他はデフォルト設定を選択して「Nxet」をクリックします(文字セットの設定は実際の状況に応じて選択します)
「CreateDatabase」を選択し、「Finish」をクリックして設定を完了し、ライブラリの構築を開始します.
インストールプロセス; 
「Exit」をクリックし、インストール画面を終了し、ライブラリの作成が完了したことを確認します.
手順4:リスニングの作成
データベースが作成されたら、ビジネス・プログラムで使用するためにデータをインポートする前に、データベースが正常に動作するかどうかをテストします.
1リスニングの作成
   netca 
リスナーの設定(作成)
Oracleユーザーでログイン
#vi $ORACLE_HOME/network/admin/listener.ora

次のように入力します.
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /database/oracle/OraHome/10g)
      (PROGRAM = extproc)
    )
  )
 
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))
    )
  )
 
 
SID_LIST_LISTENER =
(SID_LIST =
  (SID_DESC =
  (GLOBAL_DBNAME = orcl)
  (SID_NAME = orcl)
  )
)
#vi $ORACLE_HOME/network/admin/ tnsnames.ora
PROJECT =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = project)
    )
  )
 
EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

2 Listenerの起動
Oracleユーザーでログイン
#lsnrctl start

3データベースの起動
Oracleユーザーでログイン
sqlplus /nolog
SQL> connect /as sysdba  connect sys/sys as sysdba
SQL> startup

3.Windowsでpl/sqlツールでsysユーザー検証にログインする
以上のORACLEソフトウェアのインストール
問題と解決方法
1.グラフィックパラメータの設定
Rootユーザー入力xhost+
A.ヒントxhost cammand not found、コマンドが見つからず、グラフィックインタフェースがインストールされていないため
解決策yumコマンドでグラフィックインタフェースをインストールする
yum groupinstall "X Window System"
yum groupinstall "Desktop"
B.ヒントunable to open display
解決策の再接続
Oracleユーザー入力xhost+
A.ヒントunable to open display
解決策:
rootユーザー入力
#xdpyinfo | grep name    --   name of display:     

例:name of display::10.0
#su - oracle --  oracle   
#export DISPLAY=:10.0
#xhost +
access control disabled, clients can connect from any host --     

インスタンスエラーの作成
[oracle@dev bin]$ ./dbca 
UnsatisfiedLinkError exception loading native library: njni10
Exception in thread "main" java.lang.UnsatisfiedLinkError: get
at oracle.net.common.NetGetEnv.get(Native Method)
at oracle.net.config.Config.getNetDir(Unknown Source)
at oracle.net.config.Config.initConfig(Unknown Source)
at oracle.net.config.Config.<init>(Unknown Source)
at oracle.sysman.assistants.util.NetworkUtils.<init>(NetworkUtils.java:222)

解決方法1
glibcとglibc-develパッケージを表示すると、64ビットしかインストールされていませんが、32ビットバージョンはインストールされていません.手動でインストールする必要があります.
# cd /media/cdrom/RedHat/RPMS
# rpm -Uvh glibc-2.3.4-2.41.i686.rpm glibc-devel-2.3.4-2.41.i386.rpm

32 bitのglibcとglibc-develをインストールした後、Oracleをrelinkします.
$ $ORACLE_HOME/bin/relink all

最後にdbcaを再実行すればよいはずです.
解決方法2
ソフトウェアを削除して再インストールし、
[root@oracle10 oracle]# ll
total 8
drwxrwx--- 6 oracle oinstall 4096 Mar 10 19:57 oraInventory
drwxrwx--- 3 oracle oinstall 4096 Mar 10 19:48 product
[root@oracle10 oracle]# rm -rf *

状況が現れる
java.lang.UnsatisfiedLinkError: /home/oracle/10g/product/10.2.0/db_1/lib32/libOsUtils.so: libgcc_s.so.1: wrong ELF class: ELFCLASS64

解決策
ダイナミックライブラリ接続の表示
#ldd libOsUtils.so 
ldd: warning: you do not have execution permission for `./libOsUtils.so'
 linux-gate.so.1 =>  (0x0079e000)
 libimf.so => /home/oracle/10g/product/10.2.0/db_1/lib32/libimf.so (0x00196000)
 libm.so.6 => /lib/libm.so.6 (0x00d5e000)
 libc.so.6 => /lib/libc.so.6 (0x00828000)
 /lib/ld-linux.so.2 (0x00a4d000)
 libgcc_s.so.1 => not found

インストールに欠けているパッケージlibgcc
8.Linuxではデータベースにログインできますが、window接続データベースはora-12560と報告します.
解決策
リスニングの有効化、データベースの有効化の確認
[root@dev ~]# su - oracle
[oracle@dev ~]$ lsnrctl status

Windowsが他のデータベースに接続できることを確認する
以上の状況が満たされた後、Linuxファイアウォールは
[root@dev ~]# vi /etc/sysconfig/iptables
-A INPUT -p tcp -m state --state NEW -m tcp --dport 1521 -j ACCEPT 
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

-A INPUT -p tcp -m state --state NEW -m tcp --dport 1521 -j ACCEPT
ファイアウォールの再起動
[root@dev ~]# service iptables restart