1. 程式人生 > 實用技巧 >Centos7.6安裝Oracle11gR2

Centos7.6安裝Oracle11gR2

Centos7.6安裝Oracle11gR2

  Windows下安裝Oracle比較容易,參考部落格:https://www.cnblogs.com/ggll611928/p/5972816.html;但是在linux下就需要安裝桌面環境。

  安裝環境:

    系統:CentOS7.6 8核64G 磁碟1T(建議最小2核2G,50G)

    Oracle軟體版本:linux.x64_11gR2_database_1of2.zip

            linux.x64_11gR2_database_2of2.zip

1下載Oracle

  官方下載地址:https://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

  linux.x64_11g下載地址:https://www.oracle.com/technetwork/cn/java/112010-linx8664soft-100572.html

  官網下載時需要登陸Oracle賬號,沒有的可以註冊一個。

2 基礎環境準備

2.1 關閉防火牆和selinux

  測試環境,為了方便快速穩定部署,生產環境不建議關閉防火牆和selinux。建議提前做好系統優化,優化參考指令碼→點選進入

1 2 3 4 5 6 7 8 9 systemctl status firewalld systemctl disable firewalld systemctl disable firewalld
#firewall-cmd --zone=public --add-port=1521/tcp --permanent #如果開啟防火牆的話,需放開Oracle1521埠 #firewall-cmd --reload #增加新的配置需重新載入 sed -i's#SELINUX=.*#SELINUX=disabled#g'/etc/selinux/config sed -i's/SELINUX=enforcing/SELINUX=disabled/'/etc/selinux/config grep SELINUX=disabled /etc/selinux/config setenforce 0 getenforce

2.2 建立執行Oracle使用者和使用者組

  建立的這些使用者組的說明,請參考:https://blog.csdn.net/qq_32786873/article/details/82187346

1 2 3 4 5 6 7 8 9 groupadd oinstall groupadd dba useradd -g oinstall -G dba oracle id oracle mkdir -p /home/data/oracle #建立oracle安裝目錄 mkdir -p /home/data/database #建立oracle解壓目錄 mkdir -p /home/data/oraInventory #建立oracle配置檔案目錄 chown -R oracle:oinstall /home/data #設定oracle使用者為目錄的所有者 chmod -R 775 /home/data

2.3 修改Oracle使用者限制

  執行vim /etc/security/limits.conf檔案,修改作業系統對oracle使用者資源的限制。

1 2 3 4 oracle soft nproc 4096 oracle hard nproc 16384 oracle soft nofile 2048 oracle hard nofile 65536

  要使limits.conf檔案配置生效,必須要確保pam_limits.so檔案被加入到啟動檔案中。編輯檔案:vim /etc/pam.d/login

1 2 session required /lib/security/pam_limits.so session required pam_limits.so

  為了能讓每個使用者在每次登陸系統之後,都能自動設定其最大可啟動程序數與最多可開啟檔案數,設定 /etc/profile

1 2 3 4 5 6 7 8 if[ $USER ="oracle"]; then if[ $SHELL ="/bin/ksh"]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi

  配置完成source /etc/profile使之生效。

2.4配置核心引數和資源限制

  編輯/etc/sysctl.conf檔案,設定相關引數的系統預設值。每次作業系統啟動時,便會自動設定這些核心引數。

1 2 3 4 5 6 7 8 9 10 11 12 ####oracle 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 = 1048576

  執行sysctl -p 檢視並生效:(-p:從指定的檔案載入系統引數,如不指定即從/etc/sysctl.conf中載入)

2.5 配置Oracle使用者環境變數

  設定使用者環境變數,將下列設定新增到 /home/oracle/.bash_profile檔案中;注意:要寫到原有“PATH=PATH:PATH:HOME/bin”變數上面,否則會提示“bash: sqlplus: command not found”

1 2 3 4 5 6 7 8 9 10 11 umask 022 export ORACLE_BASE=/home/data/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 export ORACLE_SID=orcl export ORACLE_TERM=xterm export PATH=$ORACLE_HOME/bin:/user/sbin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export LANG=C export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8" PATH=$PATH:$HOME/.local/bin:$HOME/bin:$ORACLE_HOME/bin export PATH

  切換oracle使用者,執行source /home/oracle/.bash_profile 或. .bash_profile使之生效。使用echo $ORACLE_HOME 來顯示是否生效

2.6 配置主機名監聽

  增加主機名,若不執行此步,則配置監聽時會出錯,系統無法識別監聽。

1 2 3 4 5 6 7 8 hostnamectlset-hostname oracle cat /etc/sysconfig/network # Created by anaconda hostname=oracle cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 oracle ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 10.10.16.245 oracle

2.7 安裝指定jdk

  在linux下安裝oracle時,由於執行runInstaller指令碼時,部分提示框顯示不全,也有顯示正常的,為保險起見還是安裝好1.8jdk,直接執行install_jdk.sh指令碼

View Code

  安裝jdk參考另一篇部落格:https://www.cnblogs.com/qianjingchen/p/9547815.html

3 安裝Oracle11g2R

3.1 安裝相關依賴包

  安裝系統依賴包,這一步也是最關鍵出錯的地方,所以一定要注意:

1 2 3 yum -y install binutils-* compat-libcap1-* gcc-* gcc-c++-* glibc-* glibc-devel-* glibc-headers-* libstdc* elfutils-libelf-devel* libaio-devel* unixODBC-* pdksh-* libaio-* libgcc-* libXi-* libXtst-* make-* sysstat-* ld-linux.so.2 libc.so.6* wget ftp://ftp.icm.edu.pl/vol/rzm3/linux-redhat/linux/6.1/en/os/i386/RedHat/RPMS/pdksh-5.2.14-1.i386.rpm #預設pdksh會無法安裝,使用rpm安裝 rpm -ivh pdksh-5.2.14-1.i386.rpm

3.2 安裝圖形化桌面 

  安裝oracle之前,Centos需要安裝桌面環境,如果你的機器一開始就已經裝好了桌面環境,可以忽略此步驟。我這裡安裝完系統,預設是命令列介面,這時就需要手動來安裝使用者圖形介面了。

  檢視一下當前的執行級別和可以安裝的group:

1 2 systemctlget-default yum grouplist

  用命令列安裝GNOME包,這需要等待很長一段時間:

1 yum groupinstall"GNOME Desktop""Graphical Administration Tools"

  如果是centos6,安裝命令是yum install "X Window System"。在centos7裡面的預設執行級別可以檢視到有兩種:multi-user.target和graphical.target。

  更新系統的執行級別為graphical.target,設定預設啟動圖形介面:

1 2 3 systemctlset-defaultgraphical.target ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target systemctlget-default#檢查一下

  重啟系統reboot,然後開機就能進入圖形介面,按照提示設定普通使用者登入密碼,語言和時區等。

3.3 解壓縮包並安裝

  將下載好的Oracle安裝檔案上傳到CentOs上去,我這裡放到了/home/soft目錄下;

  執行解壓命令到指定目錄:

1 2 unzip linux.x64_11gR2_database_1of2.zip -d /home/data/ unzip linux.x64_11gR2_database_2of2.zip -d /home/data/

  /home/oracle/database 有執行許可權,將該目錄賦予oracle帳號所有,並擁有執行許可權:

1 2 chmod -R 700 /home/data/database chown -R oracle:oinstall /home/data/database

  切換為oracle 使用者,以靜默方式執行安裝指令碼:注意此步驟一定要在圖形桌面上執行

1 2 3 4 5 6 7 8 #切換到root使用者執行 # xhost +SI:localuser:oracle #登入回oracle使用者: # su - oracle $ cd /home/oracle/database $ source /home/oracle/.bash_profile $ export DISPLAY=10.10.16.245:0.0 $ ./runInstaller -jreLoc /usr/java/jdk1.8.0_60/ #如果是中文字符集亂碼,就執行:unset LANG LANGUAGE,再次執行安裝指令碼。這裡指定jdk版本是因為後面會有視窗顯示不全問題。

 

  取消選中這個介面上的I wish to receive security updates via My Oracle Support複選框,點選Next

  直接預設yes,點選下一步,預設建立和配置一個數據庫:

  選擇服務類:

  選擇單例項資料庫:

  我這裡選擇典型安裝,也可以選擇高階安裝,安裝步驟更多:

  選擇典型安裝Oracle基本配置:最好保持和ORACLE_BASE&&ORACLE_HOME配置環境變數一致,點選yes

  選擇清單目錄、即Oracle配置檔案存放目錄:使用者組選擇預設

  先決條件檢查:檢視缺失的依賴包

  最好不要選擇右上角“Igrnore all”(全部忽略),如下圖顯示,有些包還沒有安裝,裡面顯示是需要32位(i386)的,相關檔案已經打包好。下載地址:連結:https://pan.baidu.com/s/1Wr_csyUtsg0UFulXE5qoNA 提取碼: v2e5

  使用方法:在root使用者下,解壓後直接./oracle_rpm_setup.sh即可自動安裝全部的包。

1 2 3 unzip oracle_rpm_setup.zip cd oracle_rpm_setup/ ./oracle_rpm_setup.sh

 點選"Check Again"後,之前提示包全部完成,剩下的可以忽略。

  直接下一步,在Summary介面,保持預設,點選Finish,開始安裝:

  安裝過程中,差不多需要15—30分鐘左右,其中會有一些錯誤提示,不過不影響,我們選擇continue和預設即可。

  安裝完成後會提示需要執行兩個指令碼,使用root賬戶執行兩個指令碼即可完成所有安裝步驟。

  登入root使用者,到下面的兩個目錄下執行指令碼即可。

1 2 3 4 cd /home/data/oraInventory/ sh orainstRoot.sh cd /home/data/oracle/product/11.2.0/db_1 sh root.sh

  點選close,至此完成Oracle的配置和安裝:

4 啟動oracle和配置監聽

  linux下的Oracle在安裝結束後是處於執行狀態的。埠號1521,執行top -u oracle可以看到以Oracle使用者執行的程序。在圖形化介面下,執行$ORACLE_HOME/sqldeveloper/sqldeveloper.sh可以出現Oracle自帶的免費Oracle管理客戶端SQL Developer。試著連線剛安裝的Oracle,連線成功。

4.1 以oracle使用者登入

  以oracle身份登入資料庫,進入Sqlplus控制檯:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 # su - oracle $ sqlplus /nolog --進入Sqlplus控制檯 SQL*Plus: Release 11.2.0.1.0 Productionon星期一 3月 4 17:48:39 2019 Copyright (c) 1982, 2009, Oracle. All rights reserved. SQL> connect /assysdba --以系統管理員登入 Connected. SQL> startup --啟動資料庫例項 ORA-01081: 無法啟動已在執行的 ORACLE - 請首先關閉它 SQL> shutdown immediate --關閉資料庫例項 Database closed. Database dismounted. ORACLE instance shut down. SQL> exit --退出sqlplus控制檯 DisconnectedfromOracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing options

4.2 啟動監聽服務

  以oracle身份登入資料庫,前提是首先啟動資料庫,也可以用dbstart和dbshut啟動和關閉資料庫例項

1 2 3 4 5 6 $ dbstart $ORACLE_HOME #重啟oracle例項 $ dbshut $ORACLE_HOME #關閉oracle例項 $ lsnrctl status #檢視監聽狀態 $ lsnrctl stop #關閉監聽,1521埠關閉 $ lsnrctl start #啟動監聽,1521埠開啟 $ dbca #建立資料庫例項orcl,圖形介面操作