CentOS6.5x64採用靜默模式安裝64位Oracle 11g

來源:互聯網
上載者:User

CentOS6.5x64採用靜默模式安裝64位Oracle 11g

1、下載 64位版本Oracle11g的源檔案,並上傳到Linux伺服器。

2、Package安裝檢查安裝:

通過yum工具直接安裝:

yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc gcc-c++ libaio-devel libaio libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel pdksh numactl-devel glibc-headers

安裝完成後檢查未能成功安裝的包,若安裝失敗後可根據包名在網上自行下載:
# rpm -q  binutils  compat-libstdc++-33  elfutils-libelf  elfutils-libelf-devel  expat  gcc  gcc-c++  glibc  glibc-common  glibc-devel  glibc-headers  libaio  libaio-devel  libgcc  libstdc++  libstdc++-devel  make  pdksh  sysstat  unixODBC  unixODBC-devel | grep "not installed"

3、 增加資料庫組和使用者
# id oracle (確認oracle使用者是否存在)
 # /usr/sbin/groupadd oinstall (建立產品清單管理組)
 # /usr/sbin/groupadd dba (建立資料庫安裝組)
 # /usr/sbin/groupadd asmadmin (建立ASM管理組)
 # /usr/sbin/groupadd asmdba (建立Grid管理組)
 # /usr/sbin/useradd -g oinstall -G dba,asmdba oracle -d /home/oracle (oinstall為主要組,確保/home/oracle原不存在)
 # id oracle (記住oracle使用者的uid和gid)
 uid=501(oracle) gid=501(oinstall) groups=501(oinstall),502(dba),504(asmdba)
 # passwd oracle

4、調整OS核心參數
 設定原則:
kernel.shmmax 為 4GB-1byte或一半的實體記憶體, 哪個值更低用哪個;
fs.file-max 為512 * PROCESSES.
 # vi /etc/sysctl.conf (增加或修改以下參數, 參考值為最小需求, kernel.shmmax預設即可無需設定 )
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/sysctl -p (設定參數立即生效)

5、增加shell限制
 為了提升效能增加oracle使用者的shell限制.
 # vi /etc/security/limits.conf  (在檔案最後增加或修改以下參數)
oracle    soft    nproc  2047
 oracle    hard    nproc  16384
 oracle    soft    nofile  1024
 oracle    hard    nofile  65536

# vi /etc/pam.d/login  (在檔案最後增加或修改以下參數)
session    required    pam_limits.so

# vi /etc/profile  (在檔案最後增加或修改以下指令碼)
if [ $USER = "oracle" ]; then
          if [ $SHELL = "/bin/sh" ]; then
                ulimit -p 16384
                ulimit -n 65536
          else
                ulimit -u 16384 -n 65536
          fi
 fi

6、建立必需目錄
# more /etc/oratab (確認原來是否存在Oracle主目錄)
 # more /etc/oraInst.loc (確認原來是否存在Oracle產品清單目錄)
 # mkdir -p /u01/app/oracle/
 # chown -R oracle: oinstall /home/oracle
 # chown -R oracle: oinstall /u01
 # chmod -R 775 /home/oracle
 # chmod -R 775 /u01

7、設定oracle使用者環境變數
 如果伺服器有多網卡, 注意設定ORACLE_HOSTNAME為某網卡IP對應的主機名稱, 參照/etc/hosts檔案.
 # su - oracle
 $ vi ~/.bash_profile
 umask 022
 export ORACLE_HOSTNAME=rhel5
 export ORACLE_BASE=/u01/app/oracle
 export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
 export ORACLE_SID=ORCL
 export PATH=.:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/jdk/bin:$PATH
 export LC_ALL="en_US"
 export LANG="en_US"
 export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
 export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"

#source  ~/.bash_profile(使環境變數生效)

8、切換到oracle賬戶,解壓oracle11g壓縮板1和2到同一目錄,並產生回應檔模板
  $ unzip linux.x64_11gR2_database_*.zip /u01/database/

  $vi /u01/database/db_swonly.rsp


建立相應檔案,粘貼如下內容即可:

 

 

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0
oracle.install.option=INSTALL_DB_SWONLY
DECLINE_SECURITY_UPDATES=true
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oracle/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.isCustomInstall=true
oracle.install.db.customComponents=oracle.install.db.customComponents=oracle.server:11.2.0.1.0,oracle.sysman.ccr:10.2.7.0.0,oracle.xdk:11.2.0.1.0,oracle.rdbms.oci:11.2.0.1.0,oracle.network:11.2.0.1.0,oracle.network.listener:11.2.0.1.0,oracle.rdbms:11.2.0.1.0,oracle.options:11.2.0.1.0,oracle.rdbms.partitioning:11.2.0.1.0,oracle.oraolap:11.2.0.1.0,oracle.rdbms.dm:11.2.0.1.0,oracle.rdbms.dv:11.2.0.1.0,orcle.rdbms.lbac:11.2.0.1.0,oracle.rdbms.rat:11.2.0.1.0
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=oinstall

 

 

各參數含義如下:
-silent 表示以靜默方式安裝,不會有任何提示
-force 允許安裝到一個非空目錄
-noconfig 表示不回合組態助手netca
-responseFile 表示使用哪個回應檔,必需使用絕對路徑
oracle.install.responseFileVersion 回應檔模板的版本,該參數不要更改
oracle.install.option 安裝選項,本例只安裝oracle軟體,該參數不要更改
DECLINE_SECURITY_UPDATES 是否需要線上安全更新,設定為false,該參數不要更改
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.isCustomInstall 是否定製安裝,預設Partitioning,OLAP,RAT都選上了
oracle.install.db.customComponents 定製安裝組件列表:除了以上預設的,可加上Label Security和Database Vault
 oracle.install.db.DBA_GROUP oracle使用者用於授予OSDBA許可權的組名
oracle.install.db.OPER_GROUP oracle使用者用於授予OSOPER許可權的組名

9、開始安裝oracle軟體
 通過response檔案靜默安裝:
 $ ./runInstaller -silent -force -noconfig -responseFile /u01/database/db_swonly.rsp  -ignorePrereq

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

/u01/app/oracle/oraInventory/orainstRoot.sh
 /u01/app/oracle/product/11.2.0/dbhome_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.

10、運行orainstRoot.sh和root.sh
若本機第一次安裝oracle軟體, 則執行orainstRoot.sh來建立oraInst.loc檔案和修改許可權:
 $ su -
# /u01/app/oracle/oraInventory/orainstRoot.sh
 # more /etc/oraInst.loc
執行$ORACLE_HOME下的root.sh來建立oratab,dbhome,oraenv,coraenv檔案, 如果提示則一直斷行符號:
 # /u01/app/oracle/product/11.2.0/dbhome_1/root.sh
 # more /etc/oratab

11、開機啟動設定 --(可以不做)
1)vi /u01/app/oracle/product/11.2.0/dbhome_1/bin/dbstart
 ORACLE_HOME_LISTNER=$1
修改為:
ORACLE_HOME_LISTNER=$ORACLE_HOME
 2)vi /u01/app/oracle/product/11.2.0/dbhome_1/bin/dbshut
 ORACLE_HOME_LISTNER=$1
修改為:
ORACLE_HOME_LISTNER=$ORACLE_HOME

12、編寫開機開機檔案 --(可以不做)
#vi /etc/init.d/oracle
添加以下內容:

 

 

View Code
 

編寫完成後依次執行如下命令:

#  chmod 750 /etc/init.d/oracle
 #  ln -s /etc/init.d/oracle /etc/rc1.d/K61oracle
 #  ln -s /etc/init.d/oracle /etc/rc3.d/S61oracle
 #  chkconfig --level 345 oracle on
 #  chkconfig --add oracle
 [root@localhost ~]#  service oracle start
 Oracle Start Succesful!OK.
 [root@localhost ~]#  service oracle stop
 Oracle Stop Succesful!OK.

安裝readline

# yum -y install readline*

下載、安裝rlwrap 目前最高版本為:rlwrap-0.42.tar.gz

這個是個加強工具,可以不下載安裝

# tar -zxvf rlwrap-0.42.tar.gz
 # cd rlwrap-0.42
 # ./configure
 # make
 # make install

# vi /etc/bashrc
 #添加如下資訊:


alias sqlplus='/usr/local/bin/rlwrap sqlplus'
alias rman='/usr/local/bin/rlwrap rman'

 

13、編輯靜默建庫回應檔

切換到oracle使用者

#su - oracle

$cd /u01/database/response
$cp dbca.rsp dbca_dbcsk.rsp  //改名為dbca_資料庫名.rsp

14、靜默配置監聽

$netca /silent /responsefile /u01/database/response/netca.rsp


Parsing command line arguments:
    Parameter "silent" = true
    Parameter "responsefile" = /u01/database/response/netca.rsp
Done parsing command line arguments.
Oracle Net Services Configuration:
Profile configuration complete.
Oracle Net Listener Startup:
    Running Listener Control:
      /u01/app/oracle/product/11.2.0/dbhome_1/bin/lsnrctl start LISTENER
    Listener Control complete.
    Listener started successfully.
Listener configuration complete.

Oracle Net Services configuration successful. The exit code is 0

成功運行後,在/u01/app/oracle/product/11.2.0/dbhome_1/network/admin目錄下產生sqlnet.ora和listener.ora兩個檔案。

啟動監聽:

$ /u01/app/oracle/product/11.2.0/dbhome_1/bin/lsnrctl start LISTENER
通過netstat -tlnp 命令,看到
 tcp  0  0 :::1521        :::*      LISTEN      5477/tnslsnr
 說明監聽器已經在1521連接埠上開始工作了。
15、靜默建立新庫(同時也建立一個對應的執行個體)

修改 /u01/database/response/dbca_dbcsk.rsp,設定如下:

RESPONSEFILE_VERSION = "11.2.0"  //不能更改
 OPERATION_TYPE = "createDatabase"
 GDBNAME = "oracle11g.dbcsk.cn"  //資料庫的名字
 SID = "ORAC"    //對應的執行個體名字
 TEMPLATENAME = "General_Purpose.dbc" //建庫用的模板檔案
 SYSPASSWORD = "oracle1234"  //SYS管理員密碼
 SYSTEMPASSWORD = "oracle1234"  //SYSTEM管理員密碼
 DATAFILEDESTINATION = /home/oracle/oradata //資料檔案存放目錄
 RECOVERYAREADESTINATION=/home/oracle/oradata_back //恢複資料存放目錄
 CHARACTERSET = "AL32UTF8"  //字元集,重要!!! 建庫後一般不能更改,所以建庫前要確定清楚。
 TOTALMEMORY = "10240"    //oracle記憶體10G,也可小一些為5120M

靜默建庫命令如下

$ dbca -silent -responseFile /u01/database/response/dbca_dbcsk.rsp
Copying database files
1% complete
3% complete
11% complete
18% complete
26% complete
37% complete
Creating and starting Oracle instance
40% complete
45% complete
50% complete
55% complete
56% complete
60% complete
62% complete
Completing Database Creation
66% complete
70% complete
73% complete
85% complete
96% complete
100% complete
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/orcl11g/orcl11g.log" for further details.

至此為止,建庫完成, 查看監聽狀態

$ lsnrctl status

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.