Oracle數據庫11g基於rehl6.5的配置與安裝


REDHAT6.5安裝oracle11.2.4

ORACLE11G R2官檔網址:

http://docs.oracle.com/cd/E11882_01/install.112/e24326/toc.htm#BHCGGJAB

一、操作系統

[root@xuegod63 ~]# cat /etc/redhat-release

Red Hat Enterprise Linux Server release 6.5 (Santiago)

[root@xuegod63 ~]# uname -m

x86_64

二、檢測硬件環境

1、內存

ORACLE官方建議swap設置標准:

對於運行ORACLE數據庫的操作系統,ORACLE官方是有設置大小建議的,在此以從ORACLE 11g R2官方文檔中提取的建議大小為例:

3.1 Memory Requirements

The following are the memory requirements for installing Oracle Database 11g Release 2 (11.2):

·         Minimum: 1 GB of RAM

Recommended: 2 GB of RAM or more

If the size of the RAM is less than the required size, then you must install more memory before continuing.

·         The following table describes the relationship between installed RAM and the configured swap space recommendation:

Note:

On Linux, the HugePages feature allocates non-swappable memory for large page tables using memory-mapped files. If you enable HugePages, then you should deduct the memory allocated to HugePages from the available RAM before calculating swap space.

Available RAM

Swap Space Required

Between 1 GB and 2 GB

1.5 times the size of the RAM

Between 2 GB and 16 GB

Equal to the size of the RAM

More than 16 GB

16 GB

 

1ORACLE官方要求最小1GBRAM,建議2GB或更大

2SWAPRAM的大小配置關系

1)、RAM1-2GB時,SWAP大小建議為RAM大小的1.5

2)、RAM2-16GB時,SWAP大小建議與RAM大小相等

3)、RAM大於16GB時,SWAP大小建議為16GB     

內存大小的查看命令:

[root@xuegod63 ~]# grep MemTotal /proc/meminfo  ---查看物理內存

MemTotal:        2046588 kB

[root@xuegod63 ~]# grep SwapTotal /proc/meminfo  --查看SWAP交換內存

SwapTotal:       2097144 kB

[root@xuegod63 ~]# free

             total       used       free     shared    buffers     cached

Mem:       2046588    1188520     858068          0      95160     107784

-/+ buffers/cache:     985576    1061012

Swap:      2097144          0    2097144

[root@xuegod63 ~]# free -m

             total       used       free     shared    buffers     cached

Mem:          1998       1160        837          0         92        105

-/+ buffers/cache:        962       1036

Swap:         2047          0       2047

swap的作用:

當系統的物理內存不夠用的時候,就需要將物理內存中的一部分空間釋放出來,臨時轉移到SWAP上,供當前運行的程序提供物理內存空間,當程序需要再訪問被轉移到了SWAP空間上的數據時,再從SWAP中恢復到物理內存中。從此工作原理不難看出來,SWAP要有,但是盡量不要使用,使用了就會發生內存交換,必然影響系統性能

2、硬盤大小

查看本機硬盤大小

[root@xuegod63 media]# df -h

Filesystem      Size  Used Avail Use% Mounted on

/dev/sda2       9.9G  3.7G  5.7G  40% /

tmpfs          1000M     0 1000M   0% /dev/shm

/dev/sda1       485M   39M  421M   9% /boot

/dev/sr0        3.6G  3.6G     0 100% /mnt

/dev/sda5        87G  2.9G   79G   4% /server

本地的/tmp目錄空間不能少於400M

三、檢測軟件環境

1、安裝oracle所需的環境依賴包

配置好YUM

查看哪些安裝包沒有安裝,然后YUM安裝

rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' binutils \

compat-libcap1 \

compat-libstdc++-33 \

gcc \

gcc-c++ \

glibc \

glibc-devel \

ksh \

libgcc \

libstdc++ \

libstdc++-devel \

libaio \

libaio-devel \

make \

sysstat

 

 

[root@xuegod63 ~]# yum -y install compat-libcap1 compat-libstdc++-33 ksh libaio-devel

 

2、設置主機名、修改/etc/hosts,設置主機名和Ip的對應關系

[root@xuegod63 ~]# cat /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.1.63 xuegod63

[root@xuegod63 ~]# hostname

xuegod63

3創建oracle用戶uid500dbagid501oracle用戶主組為dba,然后激活這個用戶

OINSTALL用戶組(oinstall)

oinstall 組是Oracle推薦創建的OS用戶組之一,建議在系統第一次安裝oracle軟件產品之前創建該oinstall組,理論上該oinstall組應當擁有oracle軟件產品目錄(例如$CRS_HOME$ORACLE_HOME)oracle Inventory信息目錄倉庫,oracle Inventory信息目錄記錄了系統上安裝過的oracle產品的記錄

OSDBA用戶組(dba)

osdba是我們必須要創建的一種系統dba用戶組(dba),若沒有該用戶組我們將無法安裝數據庫軟件及執行管理數據庫的任務。

OSOPER用戶組(oper)

osoper是一種額外的用戶組(oper),我們可以選擇要不要創建該用戶組,創建該用戶組可以滿足讓os用戶行使某些數據庫管理權限(包括SYSOPER角色權限)的目的。注意SYSOPER的權限包括startupshutdown,所以要小心為該用戶組添加成員

[root@xuegod63 ~]# groupadd -g 500 oinstall

[root@xuegod63 ~]# groupadd -g 501 dba

[root@xuegod63 ~]# groupadd -g 502 oper

[root@xuegod63 ~]# useradd -u 500 -g oinstall –G dba,oper oracle

[root@xuegod63 ~]# id oracle

[root@xuegod63 ~]# passwd oracle

更改用戶 oracle 的密碼

新的密碼:

無效的密碼:它基於字典單詞

無效的密碼:過於簡單

重新輸入新的密碼:

passwd所有的身份驗證令牌已經成功更新。

ORACLE用戶登錄一下,激活這個用戶

4、創建ORACLE用戶的安裝目錄與數據存放目錄,並設置目錄的所有者,組和權限

[root@xuegod63 ~]# mkdir -p /server/oracle

[root@xuegod63 ~]# mkdir -p /server/oradata

[root@xuegod63 ~]#mkdir -p /server/oracle/oraInventory

[root@xuegod63 ~]# chown –R oracle:dba /server/ora*

[root@xuegod63 ~]# chmod -R 775 /server/ora*

[root@xuegod63 ~]# ll /server/

drwx------ 2 root   root 16384 8   7 11:59 lost+found

drwxrwxr-x 2 oracle dba   4096 8   7 12:32 oracle

drwxrwxr-x 2 oracle dba   4096 8   7 12:32 oradata

5、修改內核參數(服務器內存為2G的情況下)

[root@xuegod63 ~]# vi /etc/sysctl.conf

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmmax = 1073741824

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

kernel.shmall = 2097152

參數說明:

fs.aio-max-nr = 1048576

//表示同時可以擁有的異步IO請求數目,推薦值是1024K,也就是1024*1024=1048576字節

fs.file-max = 6815744

//系統中可以同時打開的文件數目,計算公式:512 乘以 processes (128process則為 65536),官方建議最少6815744

kernel.shmall = 2097152

//該參數控制可以使用的共享內存的總頁數,(頁面大小查看:getconf PAGE_SIZE,如內存超過16Gshmmax/4(kb),官方建議最少值為2097152

kernel.shmmax = 1073741824

//計算公式:1G*1024*1024*1024=1073741824 (字節)  

//是核心參數中最重要的參數之一,用於定義單個共享內存段的最大值。設置應該足夠大,能在一個共享內存段下容納下整個的SGA ,設置的過低可能會導致需要創建多個共享內存段,這樣可能導致系統性能的下降。至於導致系統下降的主要原因為在實例啟動以及ServerProcess創建的時候,多個小的共享內存段可能會導致當時輕微的系統性能的降低(在啟動的時候需要去創建多個虛擬地址段,在進程創建的時候要讓進程對多個段進行“識別”,會有一些影響),但是其他時候都不會有影響。

  官方建議值:

  32linux系統:可取最大值為4GB4294967296bytes-1byte,即4294967295。建議值為多於內存的一半,所以如果是32位系統,一般可取值為429496729532位系統對SGA大小有限制,所以SGA肯定可以包含在單個共享內存段中。

  64linux系統:可取的最大值為物理內存值-1byte,建議值為多於物理內存的一半,一般取值大於SGA_MAX_SIZE即可,可以取物理內存-1byte。例如,如果為12GB物理內存,可取12*1024*1024*1024-1=12884901887SGA肯定會包含在單個共享內存段中

kernel.shmmni = 4096

//表示最小共享內存固定4096KB(最小值)

kernel.sem = 250 32000 100 128

//表示設置的信號量,它有4個參數依次是【SEMMSL:每個用戶擁有信號量最大數;SEMMNS:系統信號量最大數;SEMOPM:每次semopm系統調用操作數;SEMMNI:系統辛苦量集數最大數。這4個參數為固定內容大小】

net.ipv4.ip_local_port_range = 9000 65500

//專用服務器模式下與用戶進程通信時分配給用戶的端口區間

net.core.rmem_default = 262144

net.core.wmem_default = 262144

//上面兩個參數表示內核套接字接收緩存區默認的大小

net.core.rmem_max = 4194304

net.core.wmem_max = 1048576

//上面兩個參數表示內核套接字接收緩存區默認的最大大小

設置完成后讓它生效

[root@xuegod63 ~]# sysctl -p

6、檢查軟件安裝用戶的資源限制

root@xuegod63 ~]# vi /etc/security/limits.conf

[root@xuegod63 ~]# tail -20 /etc/security/limits.conf

#        - msgqueue - max memory used by POSIX message queues (bytes)

#        - nice - max nice priority allowed to raise to values: [-20, 19]

#        - rtprio - max realtime priority

#

#<domain>      <type>  <item>         <value>

#

 

#*               soft    core            0

#*               hard    rss             10000

#@student        hard    nproc           20

#@faculty        soft    nproc           20

#@faculty        hard    nproc           50

#ftp             hard    nproc           0

#@student        -       maxlogins       4

 

# End of file

oracle           soft    nproc   2047

oracle           hard    nproc   16384

oracle           soft    nofile  1024

oracle           hard    nofile  65536

oracle           soft    stack   10240

 

讓配置的limit參數生效,所以要配置/etc/pam.d/login

vi /etc/pam.d/login  (在文件最后增加或修改以下參數)

session    required     pam_limits.so

設置系統變量,在后面添加針對ORACLE用戶的資源限制

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、配置ORACLE用戶的環境變量

[root@xuegod63 ~]# vim /home/oracle/.bash_profile

 

# .bash_profile

 

# Get the aliases and functions

if [ -f ~/.bashrc ]; then

        . ~/.bashrc

fi

 

# User specific environment and startup programs

 

PATH=$PATH:$HOME/bin

 

export PATH

export ORACLE_BASE=/server/oracle          

export ORACLE_HOME=$ORACLE_BASE/product/11.2/db_1     

export PATH=$ORACLE_HOME/bin:$PATH

export ORACLE_SID=test

export LANG=american_america.ZHS16GBK

export LD_LIBRARY_PATH=$ORACLE_HONE/lib

alias oratrace="cd $ORACLE_BASE/diag/rdbms/$ORACLE_SID/$ORACLE_SID/trace && ls|grep alert"

alias oradata="cd /server/oradata/test"

alias topc="ps -e -o pcpu,pid,user,tty,args | sort -k 1 -r | head"

alias topm="ps -e -o pmem,pid,user,tty,args | sort -k 1 -r | head"

(LD_LIBRARY_PATH環境變量用於在程序加載運行期間查找動態鏈接庫時指定除了系統默認路徑之外的其他路徑,注意,LD_LIBRARY_PATH中指定的路徑會在系統默認路徑之前進行查找)

8、上傳軟件包

[root@xuegod63 mnt]# ls

p13390677_112040_Linux-x86-64_1of7.zip p13390677_112040_Linux-x86-64_2of7.zip

[root@xuegod63 mnt]#unzip p13390677_112040_Linux-x86-64_1of7.zip

[root@xuegod63 mnt]#unzip p13390677_112040_Linux-x86-64_2of7.zip

[root@xuegod63 mnt]# chown -R oracle.dba database/

[root@xuegod63 mnt]# ll

drwxr-xr-x 7 oracle dba 4096 8  27 2013 database

四、安裝軟件

切換到ORACLE用戶

1、安裝數據庫軟件

[oracle@xuegod63 ~]$ cd /mnt

[oracle@xuegod63 mnt]$ cd database/

[oracle@xuegod63 database]$ ls

install  readme.html  response  rpm  runInstaller  sshsetup  stage  welcome.html

[oracle@xuegod63 database]$ ./runInstaller

正在啟動 Oracle Universal Installer...

 

檢查臨時空間: 必須大於 120 MB   實際為 3314 MB    通過

檢查交換空間: 必須大於 150 MB   實際為 2047 MB    通過

檢查監視器: 監視器配置至少必須顯示 256 種顏色。    實際為 16777216    通過

准備從以下地址啟動 Oracle Universal Installer /tmp/OraInstall2016-08-07_08-15-57PM. 請稍候...

如下圖如果出現亂碼,設置一下環境變量

[oracle@xuegod63 database]$ export LANG=en.US

選擇YES

如下圖:安裝環境檢測后有幾個警告,一個是包的版本沒有安裝,一個是內核參數設置過小,一個是swap空間設置過小,內核參數可以點擊fix&check again

如下圖,復制那個sh腳本在root用戶狀態下執行,此時不要點那個OK

執行完成后,再點OK

交換分區值過小,可以有兩種方法來增加swap分區,一種是將新的分區來作為swap,另一種是在磁盤中創建一個大的文件來作swap.

我們以文件擴展swap

[root@xuegod63 ~]# cd /var

[root@xuegod63 var]# dd if=/dev/zero of=file bs=1M count=1024

[root@xuegod63 var]# mkswap -f file

[root@xuegod63 var]# swapon file

[root@xuegod63 var]# free -m

             total       used       free     shared    buffers     cached

Mem:          1998       1921         77          0         50       1385

-/+ buffers/cache:        485       1513

Swap:         3071          0       3071

[root@xuegod63 var]# echo "/var/file   swap   swap   defaults  0   0" >> /etc/fstab

安裝pdksh包,如果安裝不上,可以先把KSH這個包卸載

[root@xuegod63 mnt]# wget http://mirror.centos.org/centos/5/os/x86_64/CentOS/pdksh-5.2.14-37.el5_8.1.x86_64.rpm

[root@xuegod63 Packages]# rpm -qa|grep ksh

ksh-20120801-10.el6.x86_64

[root@xuegod63 Packages]# rpm -e ksh-20120801-10.el6.x86_64

[root@xuegod63 mnt]# rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm

warning: pdksh-5.2.14-37.el5_8.1.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID e8562897: NOKEY

Preparing...                ########################################### [100%]

   1:pdksh                  ########################################### [100%]

然后我們再次點安裝檢測

root用戶身份執行上面兩條腳本,然后點ok

[root@xuegod63 oraInventory]# /server/oracle/oraInventory/orainstRoot.sh

Changing permissions of /server/oracle/oraInventory.

Adding read,write permissions for group.

Removing read,write,execute permissions for world.

 

Changing groupname of /server/oracle/oraInventory to dba.

The execution of the script is complete.

[root@xuegod63 oraInventory]# /server/oracle/product/11.2/db_1/root.sh

Performing root user operation for Oracle 11g

 

The following environment variables are set as:

    ORACLE_OWNER= oracle

    ORACLE_HOME=  /server/oracle/product/11.2/db_1

 

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.

Finished product-specific root actions.

2、配置監聽

[oracle@xuegod63 database]$ netca

 

 

3、安裝oracle數據庫

[oracle@xuegod63 database]$ dbca

安裝完成

查看監聽狀態正常

查看數據庫版本及狀態正常

 

根據時間關系,把另外幾種安裝方式說一下,軟件安裝的三種方式:圖形、靜默、克隆

二、克隆安裝($ORACLE_HOME

1、首先建立Oracle的相關OS用戶、組還有調整好內核參數,設置Oracle用戶的環境變量

 2、如果源機和目標機的Oracle Home目錄一樣,用戶、組也一樣,那直接復制過去后重新用root用戶運行一下root.sh就可以了,非常簡單。

 3、如果源機和目標機的Oracle Home目錄一樣,用戶、組不一樣(主要是用戶ID不一樣),復制過去后要重新設定一下文件所屬 chown -R 用戶: $ORACLE_HOME,然后 relink all;再運行一下root.sh就可以了

 4、如果用戶、組和Oracle Home目錄都不一樣

先介紹一下環境

源機:

 [oracle@test01 oracle]$ echo $ORACLE_BASE

/u01/app/oracle

[oracle@test01 oracle]$ echo $ORACLE_HOME

/u01/app/oracle/11.2.0.2

[oracle@test01 oracle]$ id

uid=1003(oracle) gid=501(oracle) groups=501(oracle)

目標機:

[ora11g@test06 ora11g]$ echo $ORACLE_BASE

/u01/app/ora11g

[ora11g@test06 ora11g]$ echo $ORACLE_BASE

/u01/app/ora11g/product/11.2.0.2/db_1

[ora11g@test06 ora11g]$ id

uid=731(ora11g) gid=700(oradba) groups=700(oradba)

首先在源機上對Oracle Home打包,要用root用戶執行,並且保留相關的權限,復制到目標機器上:

[oracle@test01 oracle]$ echo $ORACLE_HOME

/u01/app/oracle/11.2.0.2

[oracle@test01 oracle]$ exit

[oracle@test01 ~]$ cd /u01/app/oracle/

[root@test01 oracle]# tar zcvfp 11.2.0.2.tar.gz ./11.2.0.2/

[root@test01 oracle]# scp ./11.2.0.2.tar.gz 10.168.0.206:/u01/app/ora11g/product/11.2.0.2/

下面在目標機上操作:

[root@test06 ~]# cd /u01/app/ora11g/product/11.2.0.2/

[root@test06 11.2.0.2]# tar zxvf 11.2.0.2.tar.gz

[root@test06 11.2.0.2]# ll

total 2129880

drwxr-xr-x 75   1003 oradba       4096 Nov 20 22:19 11.2.0.2

-rw-r--r--  1 root   root   2178854174 Jan 21 09:35 11.2.0.2.tar.gz

drwxr-xr-x  2 ora11g oradba       4096 Jan 21 09:47 db_1

[root@test06 11.2.0.2]# rm -rf db_1/

[root@test06 11.2.0.2]# mv 11.2.0.2 db_1

[root@test06 11.2.0.2]# chown -R ora11g:oradba ./db_1/

      修改 $ORACLE_HOME/rdbms/lib/config.c Oracle用戶的組名改過來,relink all一下就可以了:

[root@test06 ~]# su - ora11g

[ora11g@test06 ~]$ cat $ORACLE_HOME/rdbms/lib/config.c

 

/*  SS_DBA_GRP defines the UNIX group ID for sqldba adminstrative access.  */

/*  Refer to the Installation and User's Guide for further information.  */

 

/* IMPORTANT: this file needs to be in sync with

              rdbms/src/server/osds/config.c, specifically regarding the

              number of elements in the ss_dba_grp array.

 */

 

#define SS_DBA_GRP "oradba"

#define SS_OPER_GRP "oradba"

#define SS_ASM_GRP "oradba"

 

char *ss_dba_grp[] = {SS_DBA_GRP, SS_OPER_GRP, SS_ASM_GRP};  

[ora11g@test06 ~]$ relink all

    

  修改 $ORACLE_HOME 中的 oraInst.loc 文件,其實就是填入正確 oraInventory 目錄,這個oraInventory 可以不建,但是父目錄必須存在,並且Oracle用戶可以寫入(建目錄):

[ora11g@test06 ~]$ cd $ORACLE_HOME

[ora11g@test06 db_1]$ cp oraInst.loc{,.bak}

[ora11g@test06 db_1]$ vim oraInst.loc

[ora11g@test06 db_1]$ more oraInst.loc*  

::::::::::::::

oraInst.loc

::::::::::::::

inventory_loc=/u01/app/ora11g/oraInventory

inst_group=oradba

::::::::::::::

oraInst.loc.bak

::::::::::::::

inventory_loc=/u01/app/oracle/oraInventory

inst_group=oradba

      修改 $ORACLE_HOME/clone/config/cs.properties  在最后加上參數-invPtrLoc 指明 oraInst.loc 所在的路徑:

[ora11g@test06 db_1]$ cd $ORACLE_HOME/clone/config

[ora11g@test06 config]$ cat cs.properties

# Copyright (c) 2005, Oracle. All rights reserved. 

 

# clone command line

clone_command_line= -silent -noConfig -nowait -invPtrLoc "/u01/app/ora11g/product/11.2.0.2/db_1/oraInst.loc"

 

再去到 $ORACLE_HOME/clone/bin 目錄執行一下一個perl腳本:

./clone.pl \

ORACLE_HOME="/u01/app/ora11g/product/11.2.0.2/db_1" \

ORACLE_BASE="/u01/app/ora11g" \

OSDBA_GROUP="oradba" \

OSOPER_GROUP="oradba" \

OSASM_GROUP="oradba" \

ORACLE_HOME_NAME="OracleHome1"

[ora11g@test06 config]$ cd $ORACLE_HOME/clone/bin

[ora11g@test06 bin]$ ls

clone.pl  prepare_clone.pl

[ora11g@test06 bin]$ ./clone.pl \

[ora11g@test06 bin]> ORACLE_HOME="/u01/app/ora11g/product/11.2.0.2/db_1" \

[ora11g@test06 bin]> ORACLE_BASE="/u01/app/ora11g" \

[ora11g@test06 bin]> OSDBA_GROUP="oradba" \

[ora11g@test06 bin]> OSOPER_GROUP="oradba" \

[ora11g@test06 bin]> OSASM_GROUP="oradba" \

[ora11g@test06 bin]> ORACLE_HOME_NAME="OracleHome1"

最后按照提示用root用戶執行那個 $ORACLE_HOME root.sh OK了。

5.到了這一步,如果你要是復制數據庫數據oradata的文件,那么只需要需要相應的文件路徑

6.也可以自己建,先刪除$ORACLE_HOME/dbs/spfiletest.ora文件,還有$ORACLE_HOME/network/admin/*.ora都刪除,然后dbca ,netca

三、根據響應文件安裝(針對個別單位不能使用圖形界面,只能使用靜默安裝)

解壓完數據庫軟件包以后,在它的目錄下面有相應的響應文件

[root@xuegod63 mnt]# ls

database  pdksh-5.2.14-37.el5_8.1.x86_64.rpm

[root@xuegod63 mnt]# cd database/

[root@xuegod63 database]# ls

install  readme.html  response  rpm  runInstaller  sshsetup  stage  welcome.html

[root@xuegod63 database]# cd response/

[root@xuegod63 response]# ls

dbca.rsp  db_install.rsp  netca.rsp

 

1、生成響應文件模板

 $ vi db_install.rsp

#--------------------------------------------------------------------

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0

oracle.install.option=INSTALL_DB_SWONLY

ORACLE_HOSTNAME=xuegod64

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/server/oracle/oraInventory

SELECTED_LANGUAGES=en

ORACLE_HOME=/server/oracle/product/11.2/db_1

ORACLE_BASE=/server/oracle

oracle.install.db.InstallEdition=EE

oracle.install.db.EEOptionsSelection=true

oracle.install.db.optionalComponents=oracle.rdbms.partitioning:11.2.0.4.0,oracle.oraolap:11.2.0.4.0,oracle.rdbms.dm:11.2.0.4.0,oracle.rdbms.dv:11.2.0.4.0,oracle.rdbms.lbac:11.2.0.4.0,oracle.rdbms.rat:11.2.0.4.0

oracle.install.db.DBA_GROUP=oinstall

oracle.install.db.OPER_GROUP=dba

SECURITY_UPDATES_VIA_MYORACLESUPPORT=false

DECLINE_SECURITY_UPDATES=true

oracle.installer.autoupdates.option=SKIP_UPDATES

 

#--------------------------------------------------------------------

 

 

各參數含義如下:

-silent 表示以靜默方式安裝,不會有任何提示

-force 允許安裝到一個非空目錄

-noconfig 表示不運行配置助手netca

-responseFile 表示使用哪個響應文件,必需使用絕對路徑

oracle.install.responseFileVersion 響應文件模板的版本,該參數不要更改

oracle.install.option 安裝選項,本例只安裝oracle軟件,該參數不要更改

DECLINE_SECURITY_UPDATES 是否需要在線安全更新,設置為true

ORACLE_HOSTNAME 安裝主機名

UNIX_GROUP_NAME oracle用戶用於安裝軟件的組名

INVENTORY_LOCATION oracle產品清單目錄

SELECTED_LANGUAGES oracle運行語言環境,一般包括英文和簡繁體中文

ORACLE_HOME Oracle安裝目錄

ORACLE_BASE oracle基礎目錄

oracle.install.db.InstallEdition 安裝版本類型,一般是企業版

oracle.install.db.optionalComponents 定制安裝組件列表

oracle.install.db.DBA_GROUP oracle用戶用於授予OSDBA權限的組名

oracle.install.db.OPER_GROUP oracle用戶用於授予OSOPER權限的組名

2 開始安裝oracle軟件

1) 通過response文件靜默安裝大概10-15分鍾:

 $ ./runInstaller -silent  -responseFile /mnt/database/response/db_install.rsp

用法:

runInstaller  [-options] [(<CommandLineVariable=Value>)*]

 

其中選項包括:

  -clusterware oracle.crs,<crs version> 

         已安裝的集群就緒服務的版本。

 

  -crsLocation <Path> 

         僅用於安裝集群, 可指定 CRS 主目錄位置的路徑。指定此路徑將覆蓋從主產品清單中獲取的 CRS 信息。

 

  -invPtrLoc <full path of oraInst.loc> 

         僅適用於 Unix。指向其他產品清單位置。orainst.loc 文件中包含:

inventory_loc=<location of central inventory>

inst_group=<>

 

  -jreLoc <location> 

         Java 運行時環境的安裝路徑。沒有該路徑, OUI 就無法運行。

 

  -logLevel <level> 

         過濾優先級別低於 <level> 的日志消息。有效的選項包括: severe, warning, info, config, fine, finer, finest, basic, general, detailed trace。建議不要使用 basic, general, detailed trace

 

  -paramFile <location of file> 

         指定 OUI 要使用的 oraparam.ini 文件的位置。

 

  -responseFile <Path> 

         指定要使用的響應文件和路徑。

 

  -attachHome 

         將主目錄附加到 OUI 產品清單。

 

  -cfs 

         表明指定的 Oracle 主目錄位於集群文件系統 (已共享) 中。如果指定 '-local', 則必須同時指定此選項, 這樣 Oracle Universal Installer 才能相應地在產品清單中注冊該主目錄。

 

  -clone 

         使 Oracle 主目錄副本與當前環境匹配。

 

  -debug 

         OUI 獲取調試信息。

 

  -detachHome 

         用於將主目錄與 OUI 產品清單分離, 而不刪除 Oracle 主目錄內的產品清單目錄。

 

  -enableRollingUpgrade 

         在集群環境中使用, 用於允許在 (安裝了該產品的) 節點子集上對產品進行升級。

 

  -executeSysPrereqs 

         執行系統先決條件檢查並退出。

 

  -force 

         允許在非空目錄中進行無提示模式的安裝。

 

  -help 

         顯示上述用法。

 

  -ignoreSysPrereqs 

         忽略系統先決條件檢查的結果。

 

  -local 

         無論是否指定集群節點, 均在本地節點上執行操作。

 

  -printdiskusage 

         記錄有關磁盤使用情況的調試信息。

 

  -printmemory 

         記錄有關內存使用情況的調試信息。

 

  -printtime 

         記錄有關時間使用情況的調試信息。

 

  -relink 

         Oracle 主目錄執行重新鏈接操作

          用法: -relink -maketargetsxml <location of maketargetsxml> [-makedepsxml <location of makedepsxml>] [name=value]

 

  -silent 

         對於無提示模式下的操作, 輸入內容可以是一個響應文件, 也可以是命令行變量值對的列表。

 

  -waitforcompletion 

         安裝程序將等待完成, 而不是衍生 Java 引擎並退出。

 

  -suppressPreCopyScript 

         禁止執行預復制腳本。

 

  -acceptUntrustedCertificates 

         接受來自安全站點的不受信任的證書。

 

  -suppressPostCopyScript 

         禁止執行復制后腳本。

 

  -noconfig 

         不執行配置工具。

 

  -noconsole 

         禁止在控制台中顯示消息。不分配控制台。

 

  -formCluster 

         安裝 Oracle Clusterware 以構成集群。

 

  -remotecp <Path> 

         Unix 特定選項。僅用於安裝集群, 可指定本地集群節點上遠程復制程序的路徑。

 

  -remoteshell <Path> 

         Unix 特定選項。僅用於安裝集群, 可指定本地集群節點上遠程 shell 程序的路徑。

 

  -executePrereqs

         僅執行先決條件檢查。

 

  -ignorePrereq

         忽略運行先決條件檢查。

 

  -ignoreInternalDriverError

         忽略任何內部驅動程序錯誤。

 

  -downloadUpdates

         只下載更新。

 

  -showProgress

         用於在控制台上顯示安裝進度。僅在無提示安裝下才支持此選項。

 

控制台直到出現以下提示則表示安裝完成:

#-------------------------------------------------------------------

...

/server/oracle/oraInventory/orainstRoot.sh

/server/oracle/product/11.2/db_1/root.sh

To execute the configuration scripts:

         1. Open a terminal window 

         2. Log in as "root" 

         3. Run the scripts 

         4. Return to this window and hit "Enter" key to continue 

 

Successfully Setup Software.

#-------------------------------------------------------------------

 

 2) 安裝期間查看安裝日志信息了解安裝進度:

 

$ cd $ORACLE_BASE/oraInventory/logs

$ tail -100f installActions*.log

 

3) 安裝的軟件信息會寫入inventory.xml文件

如果需重運行則把該文件的對應安裝條目信息刪除即可:

 $ vi $ORACLE_BASE/oraInventory/ContentsXML/inventory.xml

 

4)  運行orainstRoot.shroot.sh

 若本機第一次安裝oracle軟件則執行orainstRoot.sh來建立oraInst.loc文件和修改權限:

$ su - root

/server/oracle/oraInventory/orainstRoot.sh

# more /etc/oraInst.loc

  執行$ORACLE_HOME下的root.sh來建立oratab,dbhome,oraenv,coraenv文件如果提示則一直回車:

/server/oracle/product/11.2/db_1/root.sh

# more /etc/oratab

3 靜默配置監聽

 通過response文件運行netca, 生成sqlnet.oralistener.ora文件位於$ORACLE_HOME/network/admin目錄下:

# su - oracle

$ORACLE_HOME/bin/netca -silent -responseFile /mnt/database/response/netca.rsp

$ ll $ORACLE_HOME/network/admin/*.ora

$ lsnrctl status

執行完后監聽就已經啟動了默認端口是1521, 默認是動態監聽只要實例啟動了就會監聽到

4 靜默建庫

1) 生成響應文件模板:

$ vi /mnt/database/db_create.rsp

#--------------------------------------------------------------------

#以下參數不要更改

[GENERAL]

RESPONSEFILE_VERSION = "11.2.0"

OPERATION_TYPE = "createDatabase"

#以下參數必須設置

[CREATEDATABASE]

GDBNAME = "ORCL.LK"

TEMPLATENAME = "General_Purpose.dbc"

#以下參數不設置則使用默認值,建議設置

CHARACTERSET = "ZHS16GBK"

TOTALMEMORY = "1024"

#--------------------------------------------------------------------

 

 2) dbca靜默建庫大概3-5分鍾:

種子數據庫和控制文件位於$ORACLE_HOME/assistants/dbca/templates/Seed_Database.dfbSeed_Database.ctl文件實際上建庫就是基於通過rman恢復種子數據庫和控制文件來實現的.

 

$ORACLE_HOME/bin/dbca -silent -responseFile /mnt/database/response/db_create.rsp

Enter SYS user password: 

<輸入sys用戶密碼

Enter SYSTEM user password: 

<輸入system用戶密碼

Copying database files

...

37% complete

Creating and starting Oracle instance

...

62% complete

Completing Database Creation

...

100% complete

Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/ORCL/ORCL.log" for further details.

 

 各參數含義如下:

-silent 表示以靜默方式安裝

-responseFile 表示使用哪個響應文件,必需使用絕對路徑

RESPONSEFILE_VERSION 響應文件模板的版本,該參數不要更改

OPERATION_TYPE 安裝類型,該參數不要更改

GDBNAME 全局數據庫名,點號前面默認是db_name,點號后面默認就是db_domain

TEMPLATENAME 建庫模板名,參考各模板定義:$ORACLE_HOME/assistants/dbca/templates/*.dbc

CHARACTERSET 字符集,默認是WE8MSWIN1252

TOTALMEMORY 實例內存,默認是服務器物理內存的40%

 

3) 安裝期間查看日志信息了解進度:

 $ tail -100f $ORACLE_BASE/cfgtoollogs/dbca/$ORACLE_SID/$ORACLE_SID.log 

 

 

 ORACLE軟件安裝包:鏈接:https://pan.baidu.com/s/1minm5rq 密碼:請在評論處留下郵箱,統一發送

 

 



 



 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM