Oracle11g R2 with ASMをvmwareでのインストール方法
Install Oracle 11g Release2 with ASM on Oracle Enterprise Linux5.3 with Vmware workstation
スクリーンショートありのPDFも作成しましたので、下記からご覧になれます。
http://dl.getdropbox.com/u/173976/Ora11gR2ASM_install.pdf
前日、Oracle11g Release 2ようやくリリースされました。 さっそくVMWARE使って自分のノートでASMの環境を構築してみました。 ここで構築のメモとして残したいと思います。 とりあえずASMのシングルインスタンスを構築しましたが、 時間あるときまたRACを構築してメモを掲載したいと思います。 Oracle11g R2ではDatabaseをインストール前にGrid Infrastructureをインストールする必要があります。 以下は必要な作業です: 0、概要 1、vmwareでOEL5.3のインストール 2、vmware設定の変更 3、Oracleインストール準備 4、Oracle 11g Grid Infrastructureのインストール 5、Oracleソフトウェアのインストール 6、Oracleデータベースの作成
0、概要
今回利用する環境として、 vmware workstation 6.5 と Oracle Enterprise Linux 5.3を使用しました。
1、OEL5.3のインストール
メモリが1500MB以上あったほうがいいでしょう。 Oracle Enterprise Linux 5.3のインストールはここで省略させていただきます。
2、vmware設定の変更
ASMを構築するために、ディスクを三枚追加設定します。
3、Oracleインストール準備
(1)下記のインストールパッケージを用意しましょう。 Oracleインストール必要パッケージ: unixODBC-devel-2.2.11-7.1.i386.rpm unixODBC-2-2.11-7.1.i386.rpm sysstat-7.0.2-3.el5.i386.rpm libaio-devel-0.3.106-3.2.i386.rpm ASM構築必要なパッケージ: oracleasm-support-2.1.3-1.el5.i386.rpm oracleasmlib-2.0.4-1.el5.i386.rpm oracleasm.2.6.18-128.el5-2.0.5-1.el5.i686.rpm * oracleasmlib以外全部OEL5.3のインストールDVDに入ってます。 自分のLinuxカーネルバージョンによって下記の場所から入手可能 http://www.oracle.com/technology/software/tech/linux/asmlib/rhel5.html
(2)rootユーザで下記の操作を行う # /usr/sbin/groupadd -g 501 oinstall # /usr/sbin/groupadd -g 502 dba # /usr/sbin/groupadd -g 503 oper # /usr/sbin/groupadd -g 504 asmadmin # /usr/sbin/groupadd -g 505 asmoper # /usr/sbin/groupadd -g 506 asmdba # /usr/sbin/useradd -g oinstall -G dba,asmdba,oper oracle # /usr/sbin/useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid # mkdir -p /u01/app/oracle/product/11.2.0/dbhome_1 # mkdir -p /u01/app/grid/product/11.2.0/grid # chown -R oracle:oinstall /u01/app/ # chown -R grid:oinstall /u01/app/grid # chmod -R 775 /u01/ # passwd grid # passwd oracle # vi /etc/security/limits.conf #ORACLE SETTING grid soft nproc 2047 grid hard nproc 16384 grid soft nofile 1024 grid hard nofile 65536 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 # vi /etc/pam.d/login #ORACLE SETTING session required pam_limits.so # vi /etc/sysctl.conf #ORACLE SETTING fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 536870912 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048586 # /sbin/service ntpd stop # chkconfig ntpd off # mv /etc/ntp.conf to /etc/ntp.conf.org.
(3)gridユーザの環境設定を行う * ホストネームは自分の環境に合わせて設定する # vi /home/grid/.bash_profile TMP=/tmp; export TMP TMPDIR=$TMP; export TMPDIR ORACLE_HOSTNAME=<ホストネーム>; export ORACLE_HOSTNAME ORACLE_SID=+ASM; export ORACLE_SID ORACLE_BASE=/u01/app/grid; export ORACLE_BASE ORACLE_HOME=$ORACLE_BASE/product/11.2.0/grid; export ORACLE_HOME PATH=$ORACLE_HOME/bin:$PATH; export PATH if [ $USER = "oracle" ] || [ $USER = "grid" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi umask 022 fi
(4)oracleユーザの環境設定を行う * ホストネームは自分の環境に合わせて設定する # vi /home/oracle/.bash_profile # Oracle Settings oracle TMP=/tmp; export TMP TMPDIR=$TMP; export TMPDIR ORACLE_HOSTNAME=<ホストネーム>; export ORACLE_HOSTNAME ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1; export ORACLE_HOME ORACLE_SID=ORCL; export ORACLE_SID ORACLE_TERM=xterm; export ORACLE_TERM PATH=/usr/sbin:$PATH; export PATH PATH=$ORACLE_HOME/bin:$PATH; export PATH LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH if [ $USER = "oracle" ] || [ $USER = "grid" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi umask 022 fi
4、Oracle 11g Grid Infrastructureのインストール
(1)パーティションの初期化 # ls sd* sda sda1 sda2 sdb sdc sdd # fdisk /dev/sdb Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel. Changes will remain in memory only, until you decide to write them. After that, of course, the previous content won't be recoverable. The number of cylinders for this disk is set to 1305. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-1305, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-1305, default 1305): Using default value 1305 Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. # /dev/sdc と/dev/sddに対しても同じようにパーティションを切ります。
(2)ASMLibのインストール 上記用意したRPMパッケージを同じフォルダに格納し、「rpm -ivh *」でインストールする。 unixODBC-devel-2.2.11-7.1.i386.rpm unixODBC-2-2.11-7.1.i386.rpm sysstat-7.0.2-3.el5.i386.rpm libaio-devel-0.3.106-3.2.i386.rpm oracleasm-support-2.1.3-1.el5.i386.rpm oracleasmlib-2.0.4-1.el5.i386.rpm oracleasm.2.6.18-128.el5-2.0.5-1.el5.i686.rpm インストール後、ASMカーネルモジュールを設定する。 # /etc/init.d/oracleasm configure Configuring the Oracle ASM library driver. This will configure the on-boot properties of the Oracle ASM library driver. The following questions will determine whether the driver is loaded on boot and what permissions it will have. The current values will be shown in brackets ('[]'). Hitting <ENTER> without typing an answer will keep that current value. Ctrl-C will abort. Default user to own the driver interface []: grid Default group to own the driver interface []: asmadmin Start Oracle ASM library driver on boot (y/n) [n]: y Fix permissions of Oracle ASM disks on boot (y/n) [y]: Writing Oracle ASM library driver configuration: [ OK ] Creating /dev/oracleasm mount point: [ OK ] Loading module "oracleasm": [ OK ] Mounting ASMlib driver filesystem: [ OK ] Scanning system for ASM disks: [ OK ] # ASMディスクとしてマークする # /etc/init.d/oracleasm createdisk VOL1 /dev/sdb1 Marking disk "/dev/sdb1" as an ASM disk: [ OK ] # /etc/init.d/oracleasm createdisk VOL2 /dev/sdc1 Marking disk "/dev/sdc1" as an ASM disk: [ OK ] # /etc/init.d/oracleasm createdisk VOL3 /dev/sdd1 Marking disk "/dev/sdd1" as an ASM disk: [ OK ] # ASMディスクを探す # /etc/init.d/oracleasm scandisks Scanning system for ASM disks: [ OK ] # 一覧を表示する # /etc/init.d/oracleasm listdisks VOL1 VOL2 VOL3 # これでASMディスクの準備が終えました。 サービス起動させるため、いったんマシンを再起動します。 起動時のサービス起動からOracleasm関連サービスの起動が確認できます。
(3)Grid Infrastructureのインストール gridユーザでGUIにログインし、Grid圧縮ファイルを解凍し、 grid/runInstallerを実行し、Grid Infrastructureのインストーラを起動します。 ソフトインストールと設定を行います。 ディスクグループを選択し、ASMパスワードの入力が要求されます。 ここで設定したパスワードはのちほどDBインストール時に使用されます。 Oracle11gR2のASMは1.5GB以上のメモリがないとFailedとなり、 ここでFailedをIgnoreします。 インストールが76%の時、スクリプトの実行が要求されます。 rootユーザでスクリプトを実行します。 root.shはすこし時間かかり、OracleHAサービスの起動が確認できます。 「OK」押下し、最後までインストールを続行します。 これでGrid Infrastructureのインストールが完了します。 asmcaでディスクグループの管理ができます。
5、Oracleソフトウェアのインストール
oracleユーザでGUIにログインし、database 1of2と2of2を同じフォルダに解凍し、 runInstallerを実行します。インストーラが開始後、 ソフトのみインストールします。 インストール中にroot.shスクリプトの実行が要求されるが、 実行しません。 これでデータベースソフトのインストールが完了します。
6、Oracleデータベースの作成
最後にdbcaでデータベースを作成します。 ストレージタイプはASMを選択し、設定したASM管理用パスワードが要求されます。 インストールステップは4つあります。三番目に自動起動の登録があります。 これで、全てのインストールが完了しました。