RHEL + Oracle 11g + udev + ASM實驗擴展

最近一段時間在刻苦的學習Oracle的體系結構等理論知識,在這裏總結一些知識,以及自己在此做個實驗擴展鞏固最近所學的知識。

實驗環境

 Redhat Enterprise Linux 6.5 x86_64    IP地址:192.168.60.100
 Oracle 11g release 11.2.0.4

系統安裝在此略過,IP地址已經更改完成,首先通過ssh協議登陸到RHEL系統,配置YUM本地源環境,安裝Oracle所必須的軟件依賴包;

[c:\~]$ ssh [email protected]
[root@rhel6 ~]# vi /etc/yum.conf
[local]                                             //修改本地YUM源環境;
name=local
baseurl=file:///mnt
gpgcheck=0
enabled=1
[root@rhel6 ~]# mount /dev/sr0 /mnt/                //掛載本地光盤作爲YUM源;
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@rhel6 ~]# yum repolist                        //檢測本地YUM源配置是否正確;
Loaded plugins: product-id, refresh-packagekit, security,
              : subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
local                                        | 3.9 kB     00:00 ... 
local/primary_db                             | 3.1 MB     00:00 ... 
repo id                         repo name                     status
local                           local                         3,690
repolist: 3,690
[root@rhel6 ~]#yum install binutils -y            //通過YUM安裝Oracle所必須的軟件包;
[root@rhel6 ~]#yum install compat-libcap1 -y
[root@rhel6 ~]#yum install compat-libstdc++-33 -y
[root@rhel6 ~]#yum install gcc -y
[root@rhel6 ~]#yum install gcc-c++ -y
[root@rhel6 ~]#yum install glibc -y
[root@rhel6 ~]#yum install glibc-devel -y
[root@rhel6 ~]#yum install ksh -y
[root@rhel6 ~]#yum install libgcc -y
[root@rhel6 ~]#yum install libstdc++ -y
[root@rhel6 ~]#yum install libstdc++-devel -y
[root@rhel6 ~]#yum install libaio -y
[root@rhel6 ~]#yum install libaio-devel -y
[root@rhel6 ~]#yum install libXext -y
[root@rhel6 ~]#yum install libXtst -y
[root@rhel6 ~]#yum install libX11 -y
[root@rhel6 ~]#yum install libXau -y
[root@rhel6 ~]#yum install libxcb -y
[root@rhel6 ~]#yum install libXi -y
[root@rhel6 ~]#yum install make -y
[root@rhel6 ~]#yum install sysstat -y
[root@rhel6 ~]#yum install unixODBC -y
[root@rhel6 ~]#yum install unixODBC-devel -y

修改相應的系統主機名以及IP地址

[root@rhel6 ~]# vi /etc/hosts 
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
192.168.60.100  rhel6

添加相應的grid用戶及用戶組

[root@rhel6 ~]# groupadd -g 501 oinstall
[root@rhel6 ~]# groupadd -g 502 dba
[root@rhel6 ~]# groupadd -g 503 oper
[root@rhel6 ~]# groupadd -g 504 asmadmin
[root@rhel6 ~]# groupadd -g 505 asmoper
[root@rhel6 ~]# groupadd -g 506 asmdba
[root@rhel6 ~]# useradd -g oinstall -G dba,asmdba,oper oracle
[root@rhel6 ~]# useradd -g oinstall -G asmadmin,asmdba,asmoper,oper,dba grid
[root@rhel6 ~]# passwd oracle
[root@rhel6 ~]# passwd grid

創建Grid Infrastructure組件安裝目錄

[root@rhel6 ~]# mkdir -p /u01/app/grid
[root@rhel6 ~]# mkdir -p /u01/app/11.2.0/grid
[root@rhel6 ~]# chown -R grid:oinstall /u01
[root@rhel6 ~]# mkdir -p /u01/app/oraInventory
[root@rhel6 ~]# chown -R grid:oinstall /u01/app/oraInventory
[root@rhel6 ~]# mkdir -p /u01/app/oracle
[root@rhel6 ~]# chown -R oracle:oinstall /u01/app/oracle
[root@rhel6 ~]# chmod -R 775 /u01

修改操作系統參數

[root@rhel6 ~]# vi /etc/security/limits.conf
grid       soft   nproc   2047 
grid       hard   nproc   16384
grid       soft   nofile  1024
grid       hard   nofile  65536
grid       soft   stack   10240
grid       hard   stack   32768
oracle     soft   nproc   2047
oracle     hard   nproc   16384
oracle     soft   nofile  1024
oracle     hard   nofile  65536
oracle     soft   stack   10240
oracle     hard   stack   32768

修改Linux服務器ulmits限制

[root@rhel6 ~]# vi /etc/security/limits.d/90-nproc.conf
#*          soft    nproc     1024
* - nproc 16384

禁用SELINUX安全限制

[root@rhel6 ~]# vi /etc/selinux/config
SELINUX=disabled                                //修改配置文件永久關閉selinux;
[root@rhel6 ~]# setenforce 0

關閉IPTABLES防火牆

[root@rhel6 ~]# service iptables stop
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Unloading modules:                               [  OK  ] 
[root@rhel6 ~]# chkconfig --level 35 iptables off          //3、5級別永久關閉iptables;

修改Linux操作系統的登陸配置文件

[root@rhel6 ~]# vi /etc/pam.d/login
session    required     pam_limits.so

修改Linux系統內核Kernel配置

[root@rhel6 ~]# vi /etc/sysctl.conf
#kernel.shmmax = 68719476736                //註釋掉原先的系統的配置;
#kernel.shmall = 4294967296
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmmax = 858993459                   //大於SGA,小於物理內存;
kernel.shmall = 1048576                     //物理內存%4K;
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
[root@rhel6 ~]# sysctl -p

配置grid和oracle用戶的環境變量

[root@rhel6 ~]# su - grid                        //grid用戶環境變量配置;
[grid@rhel6 ~]$ vi .bash_profile 
PS1="[`whoami`@`hostname`:"'$PWD]$'
export PS1
umask 022
export TMP=/tmp
export LANG=en_US
export TMPDIR=$TMP
export ORACLE_HOSTNAME=rhel6
ORACLE_SID=+ASM; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
ORACLE_BASE=/u01/app/grid; export ORACLE_BASE
ORACLE_HOME=/u01/app/11.2.0/grid; export ORACLE_HOME
NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"; export NLS_DATE_FORMAT
PATH=.:$PATH:$HOME/bin:$ORACLE_HOME/bin; export PATH
THREADS_FLAG=native; export THREADS_FLAG
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
----------------------------------------------------------------------------
[root@rhel6 ~]# su - oracle
[oracle@rhel6 ~]$ vi .bash_profile 
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
export LANG=en_US
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0; export ORACLE_HOME
ORACLE_SID=itpuxdb; export ORACLE_SID
export ORACLE_UNQNAME=orcl
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
NLS_DATE_FORMAT="yyyy-mm-dd HH24:MI:SS"; export NLS_DATE_FORMAT
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK;export NLS_LANG
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

配置udev配置ASM(在此係統所用磁盤爲/dev/sda),

[root@rhel6 ~]# fdisk /dev/(sdb\sdc\sdd\sde\sdf)          //對磁盤進行分區;
[root@rhel6 ~]# vi /etc/udev/rules.d/99-oracle-asmdevices.rules
KERNEL=="sdb1", NAME="asm_grid1", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sdc1", NAME="asm_system", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sdd1", NAME="asm_recovery", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sde1", NAME="asm_data01", OWNER="grid", GROUP="asmadmin", MODE="0660"
KERNEL=="sdf1", NAME="asm_data02", OWNER="grid", GROUP="asmadmin", MODE="0660"
[root@rhel6 ~]# partprobe /dev/sdb1
[root@rhel6 ~]# partprobe /dev/sdc1
[root@rhel6 ~]# partprobe /dev/sdd1
[root@rhel6 ~]# partprobe /dev/sde1
[root@rhel6 ~]# partprobe /dev/sdf1
[root@rhel6 ~]# udevadm control --reload-rules 
[root@rhel6 ~]# start_udev 
Starting udev:                                             [  OK  ]
[root@rhel6 ~]# ls -lsa /dev/asm*
0 brw-rw----. 1 grid asmadmin 8, 65 May 24 05:48 /dev/asm_data01
0 brw-rw----. 1 grid asmadmin 8, 81 May 24 05:48 /dev/asm_data02
0 brw-rw----. 1 grid asmadmin 8, 17 May 24 05:48 /dev/asm_grid1
0 brw-rw----. 1 grid asmadmin 8, 49 May 24 05:48 /dev/asm_recovery
0 brw-rw----. 1 grid asmadmin 8, 33 May 24 05:48 /dev/asm_system

上傳Oracle安裝包到服務器

[root@rhel6 ~]#yum -y install lrzsz            //安裝xshell所用的FTP軟件;
[root@rhel6 ~]#unzip  p13390677_112040_Linux-x86-64_3of7.zip 
[root@rhel6 ~]# chown -R grid:oinstall  /opt/grid/

配置VNC遠程桌面

[root@rhel6 ~]# yum -y install vnc-server
[root@rhel6 opt]# su - grid
[grid@rhel6:/home/grid]$vncserver 
You will require a password to access your desktops.
Password:
Verify:
xauth:  creating new authority file /home/grid/.Xauthority
New 'rhel6:1 (grid)' desktop is rhel6:1
Creating default startup script /home/grid/.vnc/xstartup
Starting applications specified in /home/grid/.vnc/xstartup
Log file is /home/grid/.vnc/rhel6:1.log

 VNC遠程桌面連接配置安裝Grid Infrastructure組件

[grid@rhel6 ~]$ cd /opt/grid/
[grid@rhel6 grid]$ ./runInstaller

選擇單節點安裝配置Grid Infrastructure

wKioL1kkTJ3Rdk2MAARQ2GFhwr0774.jpg-wh_50

選擇語言環境

wKiom1kkTVKSTwIrAAR2ZQQeeYI183.jpg-wh_50

掃描ASM磁盤

wKioL1kkTZWxW6E9AARi0btp1H0368.jpg-wh_50

配置統一的賬戶密碼

wKioL1kkTeSgALH1AARoJprwgXw196.jpg-wh_50

環境變量配置正確的情況下會自動識別用戶組

wKiom1kkTingTl0bAARgIH_8vVI989.jpg-wh_50

配置安裝目錄(可手動調整)

wKiom1kkT0vhFDJVAAToNDLe6ZE103.jpg-wh_50

檢測依賴包等信息後,出現警告(因測試虛擬機內存較少,未能達到Oracle推薦值這裏可以忽略)

wKioL1kkUETgCrlNAAT7Tom_uyg082.jpg-wh_50

執行所要求的腳本

wKiom1kkUWbwOo5zAATG0Wl_hD8782.jpg-wh_50

[root@rhel6 ~]# /u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /u01/app/oraInventory to oinstall.
The execution of the script is complete.
[root@rhel6 ~]# /u01/app/11.2.0/grid/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
    ORACLE_OWNER= grid
    ORACLE_HOME=  /u01/app/11.2.0/grid
Enter the full pathname of the local bin directory: [/usr/local/bin]: 
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...
Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Using configuration parameter file: /u01/app/11.2.0/grid/crs/install/crsconfig_params
Creating trace directory
LOCAL ADD MODE 
Creating OCR keys for user 'grid', privgrp 'oinstall'..
Operation successful.
LOCAL ONLY MODE 
Successfully accumulated necessary OCR keys.
Creating OCR keys for user 'root', privgrp 'root'..
Operation successful.
CRS-4664: Node rhel6 successfully pinned.
Adding Clusterware entries to upstart
rhel6     2017/05/24 07:14:47     /u01/app/11.2.0/grid/cdata/rhel6/backup_20170524_071447.olr
Successfully configured Oracle Grid Infrastructure for a Standalone Server

配置安裝成功

wKiom1kkU6Tiyaz5AATHVCFEAfQ832.jpg-wh_50

wKiom1kkU8aQkC-jAAQfDNVxKgU994.jpg-wh_50

配置安裝Oracle 客戶端

[root@rhel6 opt]# su - oracle
[oracle@rhel6 ~]$ vncserver
You will require a password to access your desktops.
Password:
Verify:
xauth:  creating new authority file /home/oracle/.Xauthority
New 'rhel6:2 (oracle)' desktop is rhel6:2
Creating default startup script /home/oracle/.vnc/xstartup
Starting applications specified in /home/oracle/.vnc/xstartup
Log file is /home/oracle/.vnc/rhel6:2.log 
[root@rhel6 opt]# unzip p13390677_112040_Linux-x86-64_1of7.zip 
[root@rhel6 opt]# unzip p13390677_112040_Linux-x86-64_2of7.zip 
[root@rhel6 opt]# chown -R oracle.oinstall database/

VNC遠程桌面安裝Oracle軟件

[oracle@rhel6 database]$ ./runInstaller

選擇只安裝Oracle軟件(後續再建實例)

wKiom1kkVtqyjOw4AAVYUeHr6ds225.jpg-wh_50

選擇單實例節點安裝

wKioL1kkVz3AhP72AAVS5MQ_evE383.jpg-wh_50

選擇安裝企業版

wKiom1kkV2nDnEZgAAUQnXHr8do164.png-wh_50

Oracle數據庫軟件安裝位置(環境變量讀取正確不需要修改)

wKiom1kkV6ai__06AAT_Fs1p_Tw496.png-wh_50

由於測試環境內存偏小,所以這裏可以忽略警告繼續安裝

wKioL1kkV-2ChFb8AAUW3e9VyRI041.png-wh_50

以root用戶執行所需的腳本

wKiom1kkWP2QpkCvAAUmS08lBCs303.png-wh_50

[root@rhel6 tmp]# /u01/app/oracle/product/11.2.0/root.sh
Performing root user operation for Oracle 11g
The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/oracle/product/11.2.0
Enter the full pathname of the local bin directory: [/usr/local/bin]: 
The contents of "dbhome" have not changed. No need to overwrite.
The contents of "oraenv" have not changed. No need to overwrite.
The contents of "coraenv" have not changed. No need to overwrite.
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Finished product-specific root actions.

安裝完成

wKiom1kkWVDDA5hXAATeJlurRNw769.png-wh_50

Oracle和ASM配置安裝完成接下來安裝配置ASM,建instance

以grid用戶遠程桌面登陸,配置ASM磁盤

[grid@rhel6:/home/grid]$asmca

wKioL1kkWqajVneUAATiamX8Y0E232.png-wh_50

以oracle用戶遠程桌面登陸,配置創建數據庫

[oracle@rhel6 database]$ dbca

選擇創建數據庫

wKioL1kkWyOwgm1kAAZmuDltND8349.png-wh_50

由於這裏是實驗環境選擇第一項

wKiom1kkW17iIzP5AAZIqVUlF6E772.png-wh_50

配置instance名

wKioL1kkW5DzkZ1rAAZBjtDMeU0676.png-wh_50

由於這裏是實驗環境,選擇啓用OEM,不勾選快速閃回

wKiom1kkW-jSIOSPAAY3ygkL7jU327.png-wh_50

配置統一的密碼

wKioL1kkXA2CiToPAAY3ygkL7jU788.png-wh_50

在此選擇ASM磁盤而非file system,選擇創建的ASM磁盤組

wKioL1kkXEuinfg7AAZoKGkC0is678.png-wh_50

實驗環境勾選實例

wKiom1kkXLOSnPmOAAY_pLE2uZQ205.png-wh_50

配置SGA、PGA空間大小,配置中文字符集ZHFS16GBK,配置併發連接數,配置專用共享池

wKiom1kkXdfj0x6AAAZ6yU6sE84819.png-wh_50

在此可配置數據文件大小以及自動擴展、redo log組配置,(實驗環境在此不做過多配置)

 wKioL1kkXjGS4gM2AAXoUrSsJ7k175.png-wh_50

在此可將數據配置文件等信息導出(方便後續文檔撰寫)

wKioL1kkXqix_RpSAAWyEmpqNMk074.png-wh_50

創建數據庫中...

wKiom1kkXwWgR9QqAAbIWgQyIrQ934.png-wh_50

數據庫安裝完成

wKioL1kkYcCQNqJuAAdZt4mhOmE941.jpg-wh_50

以grid用戶查看集羣狀態及監聽狀態

[grid@rhel6:/home/grid]$crsctl status resource -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
               ONLINE  ONLINE       rhel6                                        
ora.DSG.dg
               ONLINE  ONLINE       rhel6                                        
ora.LISTENER.lsnr
               ONLINE  ONLINE       rhel6                                        
ora.asm
               ONLINE  ONLINE       rhel6                    Started             
ora.ons
               OFFLINE OFFLINE      rhel6                                        
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
      1        ONLINE  ONLINE       rhel6                                        
ora.diskmon
      1        OFFLINE OFFLINE                                                   
ora.evmd
      1        ONLINE  ONLINE       rhel6                                        
ora.orcl.db
      1        ONLINE  ONLINE       rhel6                    Open            
------------------------------------------------------------------------      
[grid@rhel6:/home/grid]$lsnrctl status
LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 24-MAY-2017 08:28:36
Copyright (c) 1991, 2013, Oracle.  All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.4.0 - Production
Start Date                24-MAY-2017 07:15:42
Uptime                    0 days 1 hr. 12 min. 53 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/11.2.0/grid/network/admin/listener.ora
Listener Log File         /u01/app/grid/diag/tnslsnr/rhel6/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=rhel6)(PORT=1521)))
Services Summary...
Service "+ASM" has 1 instance(s).
  Instance "+ASM", status READY, has 1 handler(s) for this service...
Service "orcl" has 1 instance(s).
  Instance "orcl", status READY, has 1 handler(s) for this service...
Service "orclXDB" has 1 instance(s).
  Instance "orcl", status READY, has 1 handler(s) for this service...
The command completed successfully

以oracle用戶登錄連接數據庫,查詢表空間

[oracle@rhel6 database]$ sqlplus / as sysdba  

SQL*Plus: Release 11.2.0.4.0 Production on Wed May 24 08:27:56 2017
Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Data Mining
and Real Application Testing options 
SQL> select * from V$TABLESPACE;
       TS# NAME      INC BIG FLA ENC
---------- ------------------------------ --- --- --- ---
  0 SYSTEM     YES NO  YES
  1 SYSAUX     YES NO  YES
  2 UNDOTBS1     YES NO  YES
  4 USERS     YES NO  YES
  3 TEMP      NO  NO  YES
  6 EXAMPLE     YES NO  YES
6 rows selected.

在此,Rhel Linux環境下的udev + ASM Oracle 11gR2安裝部署完成,狀態正常。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章