1. 程式人生 > 實用技巧 >CentOS7搭建Oracle11gRAC問題彙總

CentOS7搭建Oracle11gRAC問題彙總

CentOS7搭建Oracle11gRAC問題

CentOS7搭建Oracle11gRAC問題
1.初始環境
2.問題彙總:
2.1 圖形化異常:
2.2 在安裝GI中執行root.sh指令碼報錯
2.3 安裝Oracle報錯toc

1.初始環境

系統版本:centos7.6
Oracle版本:11.2.0

2.問題彙總:

2.1 圖形化異常:

在主機上執行圖形化安裝,由於解析度問題很多介面無法正常彈出顯示為一條白色豎線,導致圖形化安裝無法繼續進行,具體如下所示:

解決辦法:
使用xmanager進行圖形化安裝。
xmanager下載地址:
https://www.xshellcn.com/xiazai.html

軟體付費,需要進行簡單註冊可以試用。
注意:使用xmanager的前提是目標機器已經安裝了xterm,如果未安裝可以直接yum安裝。

[oracle@orcl1 ~]$ rpm -qa xterm
xterm-295-3.el7.x86_64
[oracle@orcl1 ~]$ yum -y install xterm

安裝完成後啟動Xmanager-Xstart

在指定位置輸入IP及相關資訊和執行命令/usr/bin/xterm -ls -display $DISPLAY
後點擊“執行”。

執行過程介面如下:

可以看到解析度都正常了可以繼續安裝:

2.2 在安裝GI中執行root.sh指令碼報錯

具體報錯資訊為:ohasd failed to start
錯誤原因:
oracle11g主要服務物件是CentOS7之前的版本,而CentOS6與CentOS7版本比較大的差異就是程序的啟動方式。7使用的是systemd管理程序而6使用initd管理。而root.sh指令碼是通過傳統的initd來啟動ohasd程序的。所以會出現無法啟動的問題。
解決辦法:
將ohasd在CentOS7中執行時需要提前設定為一個服務。

[root@orcl1 system]# pwd
/usr/lib/systemd/system
[root@orcl1 system]# vim ohas.service 
[Unit]
Description=Oracle High Availability Services
After=syslog.target

[Service]
ExecStart=/etc/init.d/init.ohasd run >/dev/null 2>&1 Type=simple
Restart=always

[Install]
WantedBy=multi-user.target

#注意使用root使用者
[root@orcl1 ~]# systemctl daemon-reload 
[root@orcl1 ~]# systemctl enable ohas.service
[root@orcl1 ~]# systemctl start ohas.service

#檢視此時服務的執行狀態為active
[root@orcl1 ~]# systemctl status ohas.service 
● ohas.service - Oracle High Availability Services
   Loaded: loaded (/usr/lib/systemd/system/ohas.service; enabled; vendor preset: disabled)
   Active: active (running) since Mon 2020-07-20 11:04:54 CST; 43min ago
 Main PID: 6823 (init.ohasd)
    Tasks: 1
   CGroup: /system.slice/ohas.service
           └─6823 /bin/sh /etc/init.d/init.ohasd run >/dev/null 2>&1 Type=sim...

Jul 20 11:04:54 orcl1 systemd[1]: Started Oracle High Availability Services.
# 因為此時root指令碼處於夯住的狀態,所以如果這個時候恢復ohasd服務,那麼指令碼也可以順利進行下去。

2.3 安裝Oracle報錯

具體報錯資訊:圖形化安裝,執行到80%左右,報錯“Error in invoking target 'agent nmhs' of makefile”。
錯誤原因:
缺少支援的lib庫。相關lib庫已安裝但是無法找到。
解決辦法:
在makefile中新增連結libnnz11庫的引數。

[oracle@orcl1 lib]$ pwd
/u01/app/oracle/product/11.2.0/db/sysman/lib
#保留備份
[oracle@orcl1 lib]$ cp ins_emagent.mk ins_emagent.mk.bk
[oracle@orcl1 lib]$ vim ins_emagent.mk
#進行快速查詢/NMECTL,在後面新增-lnnz11引數
#===========================
#  emdctl
#===========================

$(SYSMANBIN)emdctl:
        $(MK_EMAGENT_NMECTL) -lnnz11
...

儲存退出,重新執行。



來自為知筆記(Wiz)