Linux 7安裝Oracle 11g打怪經歷

  • 2020 年 3 月 15 日
  • 筆記

最近接到個需求,要將一套開發環境中Linux 6平台的Oracle 11g,遷移到兩套Linux7平台,原以為很簡單,但過程中,確實歷經坎坷,就像過山車一般,解決這個問題,又碰到下一個。

軟體資訊

RedHat Linux 7.5

Oracle 11.2.0.4

坑坑坑

1. 軟鏈接

為了安裝路徑的標準和簡便,可以使用軟鏈接,語法如下,

ln -s 【目標目錄】 【軟鏈接地址】

例如,為了讓原始路徑/opt/app/oracle軟鏈接到/u01/app/oracle,並且記得授權,如下所示,

ln -s /opt/app/oracle /u01/app/oracle  chown -R oracle:dba /u01

2. 圖形安裝介面無法啟動

用VNC連接到Linux,常規來講,在root下,執行xhost +,一般就可以用oracle賬戶啟動Oracle安裝介面,但這次失敗了,

>>> Could not execute auto check for display colors using command /usr/bin/xdpyinfo.  Check if the DISPLAY variable is set.  Failed <<<<

解決方式,

(1) root下執行xhost + 返回資訊為:access control disabled,clients canconnect from any host

(2) 切換到oracle(su – oracle),執行export DISPLAY=:2(之所以是2,不是1,應該是我之前啟動了兩次VNC)。

(3) 執行xdpyinfo,如果能正常顯示,說明設置成功。

3. 缺少Package

啟動圖形介面,在預檢的環節,提示缺少compat-libstdc++-33-3.2.3,這個和Linux的版本是有關的,MOS(2254198.1)已經說明了,Linux 7的版本已經將compat-libstdc++-33-3.2.3移到了可選配件中,這個包是和Oracle Text功能相關的,如果不用這功能,就可以不安裝這個包了,

As of Red Hat Enterprise Linux version 7 compat-libstdc+±33-3.2.3 (x86_64) has been moved into the optional channel. RedHat policy on this software is that support and guarantees cannot be maintained.

4. 極其詭異的圖形介面提示

在這個介面,彈窗顯示太小,不能拖動,不管關,不能取消,奇了怪了,

解決方式,

這個問題和啟動安裝介面時使用的jre環境有關,在執行runInstaller的時候,可以指定jre路徑,

./runInstaller -jreLoc /usr/java/jdk1.7.0_79/jre

P.S. 如果使用yum,安裝的是openjdk,不是SUN jdk,

yum install java

還是會提示錯誤,需要的是SUN jdk。

5. sysctl

Linux 7下,/etc/sysctl.conf配置文件中,默認缺少這些訊號量的配置,需要手工加上,

# Controls the default maxmimum size of a mesage queue  kernel.msgmnb = 65536    # Controls the maximum size of a message, in bytes  kernel.msgmax = 65536    # Controls the maximum shared segment size, in bytes  kernel.shmmax = 68719476736    # Controls the maximum number of shared memory segments, in pages  kernel.shmall = 4294967296  vm.swappiness=1

否則Oracle圖形介面預檢的時候,就會提示錯誤,

6. 圖形介面安裝進度過程中提示錯誤

經過了上面這些準備工作,在安裝進度中,還會提示錯誤,這個又和Linux 7的版本相關,需要做這些改動,

vi $ORACLE_HOME/sysman/lib/ins_emagent.mk  將  $(SYSMANBIN)emdctl:          $(MK_EMAGENT_NMECTL)  改為  $(SYSMANBIN)emdctl:          $(MK_EMAGENT_NMECTL) -lnnz11

此時,繼續安裝,就可以了。

Oracle安裝部署相關的歷史文章:

Oracle 19c之RPM安裝

資料庫安裝的兩個小錯誤

12c CC,不得已的重裝

Oracle 12c CC安裝碰見的認證問題

Oracle 12c CC安裝部署攻略 (下)

Oracle 12c CC安裝部署攻略 (上)

Oracle Patch修補程式體系和如何打修補程式

客戶端ADR配置

安裝Oracle Linux碰見的幾個問題

11g Grid Control安裝過程的一些「坑」