linux64位centos7安裝oracle12c以及相關錯誤解決


操作系統版本:CentOS 7、數據庫版本:Oracle 12c

安裝步驟:

  1. 關閉防火牆,禁止防火牆開機自啟
    # 關閉防火牆
    systemctl stop firewalld.service 
    # 禁止防火牆開機啟動
    systemctl disable firewalld.service
    # 查看防火牆狀態
    systemctl status firewalld.service

     

  2. 關閉selinux安全限制
    # 編輯文件
    vi /etc/selinux/config
    # 修改內容
    SELINUX=disabled

     

  3. root用戶安裝相關依賴
    [root@RD-GYJDEDRT~]#  yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33.i686 gcc gcc-c++ glibc glibc.i686 glibc-devel glibc-devel.i686 ksh libgcc libgcc.i686 libstdc++ libstdc++.i686 libstdc++-devel libstdc++-devel.i686 libaio libaio.i686 libaio-devel libaio-devel.i686 ibXext ibXext.i686 libX11 libX11.i686 libxcb libxcb.i686 libXi libXi.i686 make sysstat

     

  4. root用戶修改系統內核參數
    [root@RD-GYJDEDRT~]# vi /etc/sysctl.conf

    在文件末尾加上以下內容

    kernel.shmmni=4096
    kernel.sem=250 32000 100 128
    fs.file-max=6815744
    fs.aio-max-nr=1048576
    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

    使剛才的修改生效,執行:

    [root@RD-GYJDEDRT~]# sysctl -p

     

  5. 建立用戶和組
    [root@RD-GYJDEDRT~]# groupadd oinstall  
    [root@RD-GYJDEDRT~]# groupadd dba  
    [root@RD-GYJDEDRT~]# groupadd oper  
    [root@RD-GYJDEDRT~]# useradd -g oinstall -G dba,oper oracle

     

  6. 限制資源參數
    [root@RD-GYJDEDRT~]#  vi /etc/pam.d/login

        打開文件后,在文件中添加如下:

    session    required     pam_selinux.so open
    session    required     pam_namespace.so
    
    <span style="color:#ff0000;">session    required     pam_limits.so #添加</span>
    
    session    optional     pam_keyinit.so force revoke
    session    include      system-auth
    session   optional     pam_ck_connector.so

     

     
  7. 修改用戶限制
    [root@RD-GYJDEDRT~]#   vi /etc/security/limits.conf

     打開文件后,在文件末尾添加如下:

    oracle  soft  nproc   2047
    oracle  hard  nproc   16384
    oracle  soft  nofile  1024
    oracle  hard  nofile  65536
    oracle  soft  stack   10240
    oracle  hard  stack   32768

     

  8. 在root用戶下創建oracle基目錄與oracle軟件位置並給與權限
    mkdir /u01/app/oracle
    mkdir /u01/app/oracle/product/12.2.0/dbhome_1

    給與權限

    chown -R 775 /u01

     

  9. 配置安裝環境
    為oracle用戶創建密碼
    passwd oracle
    輸入密碼

    切換用戶

    切換用戶
    
      [root@RD-GYJDEDRT~]# su - oracle 
     [oracle@RD-GYJDEDRT~]$ vi ./bash_profile

    在文件中添加以下內容

    umask 022
    export ORACLE_BASE=/u01/app/oracle

    基本內容配置已完成

  10. 解壓縮與安裝(安裝過程中一定要記好自己的實例名)
    使用unzip解壓文件
    進入解壓后的database文件夾啟動
    ./runInstaller

    如果無法啟動可參考之后的netca錯誤解決方案



    注:執行數據庫安裝腳本./runInstal 的時候,
    如果無法啟動也可能是和startup時遇到的同樣的問題,
    參考最下方startup報錯解決方式,復制並修改init.ora文件即可

     

     

     郵件可以不需要配置,之后的安裝中如果跳出兩行腳本需要執行,那么在外面切換到root下執行兩個命令之后點擊繼續就行了

 

 

 

 

 

 

 

 

 

 

 

 如果無法創建,就去創建對應的文件夾並給與775權限,之后一路next就行了

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 以上安裝中文是我從別的地方拷貝過來的,與英文內容一致,可以進行參考。

  安裝完配置路徑環境

[oracle@RD-GYJDEDRT ~]$ vi ~/.bash_profile
export ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1
export PATH=$PATH:$ORACLE_HOME/bin
使得配置生效

[oracle@RD-GYJDEDRT ~]$ source ~/.bash_profile

  創建監聽

[oracle@RD-GYJDEDRT ~]$ netca 
如果運行不了就去/u01/app/oracle/product/12.2.0/dbhome_1/bin文件下執行
或者source ~/.bash_profile再次生效試試
沒問題最好,如果仍然無法啟動可以參考以下解決方案

netca 無法啟動
圖形界面無法啟動
先切換到root用戶,執行xhost +
然后再切換到oracle用戶,執行export DISPLAY=:0.0
出現亂碼執行export LANG=US_en

 


在這里介紹下兩種情況的常見問題:
一種是本地運行的命令,另一種則是遠程ssh命令安裝。
DISPLAY科普
DISPLAY變量是用來設置將圖形顯示到何處.比如CENTOS,你用圖形界面登錄進去,DISPLAY自動設置為DISPLAY=:0.0表示顯式到本地監視器,那么通過終端工具(例如:xshell)進去,運行圖形界面的程序,如果沒有設置,系統是不允許程序啟動的。
在執行xhost +命令(使得所有客戶都可以訪問)
正常返回信息為:
access control disabled,clients can connect from any host

此時就可以啟動了

如果xhost +不能執行,報錯:xhost : unable to open display ""
可以輸入命令export DISPLAY=:0執行一下
再執行xhost +
#xhost + ip (name表示該ip機器可以使用該服務)

#(本地安裝不需要考慮)遠程ssh安裝
先安裝xmanager,自行百度下載安裝,否則無法彈窗。
先切換到root用戶,執行xhost +()
正常返回:access control disabled,clients can connect from any host
切回oracle用戶,執行:export DISPLAY=192.168.1.2:0.0
比如你的oracle服務器ip是192.168.0.1,訪問的客戶端的ip是192.168.1.2,當你用192.168.1.2連接上數據庫后,希望在192.168.1.2上顯示圖像界面,這是就需要export DISPLAY=192.168.1.2:0.0
再執行oracle安裝文件,會提示彈窗授權:
unable to open display
點擊是后,會正常彈窗。

如果出現了如下錯誤:
u01/oracle/bin/netca: line 178: 11819 Aborted $JRE $JRE_OPTIONS -classpath $CLASSPATH oracle.net.ca.NetCA $*
是由於默認的主機名導致的,修改2處
[oracle@jc11g ~]$ cat /etc/sysconfig/network 查看,之后使用vi修改為以下形式
NETWORKING=yes
HOSTNAME=安裝時的實例名
GATEWAY=你的主機GATAWAY
[oracle@jc11g ~]$ cat /etc/hosts 查看,之后使用vi修改為以下形式
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost 安裝時的實例名

( 由於默認主機名錯誤導致,修改配置文件/etc/hosts,修改
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost 安裝時的實例名)
再執行
hostname 安裝時的實例名

 

 

 

 

 

 

 

 

 

 

 

 

 

 

oracle安裝完成后,可以創建數據庫啦!

 運行dbca

[oracle@RD-GYJDEDRT ~]$ dbca

 

 

 

 

 

 

 

 應定義為你的全局數據庫名與SID

 

 

 

 

 

 

 

 

 

 默認大小就行,此處不需要修改為圖中值直接next就可以

 

 

 

 

 

 

 注:安裝過程非常長,毀天滅地形式的長,建議睡前安裝美滋滋,不然會等到精神崩潰(也可能是我的電腦配置太差了)

 

之后切換到oracle用戶然后
sqlplus "/as sysdba"
進入sql界面,然后
startup
數據庫就會顯示出來,至此安裝結束
startup可能遇到的問題標注在下面

注:執行數據庫安裝腳本./runInstal 的時候,如果無法啟動也可能是和startup時遇到的同樣的問題,參考startup報錯解決方式,復制並修改init.ora文件即可

 

Oracle 12c報錯:ORA-01078和LRM-00109的解決辦法
數據庫首次安裝完成后,startup啟動數據庫顯示報錯:

[oracle@lemon admin]$ sqlplus / as sysdba;
 
SQL*Plus: Release 12.2.0.1.0 Production on Sun Dec 17 10:00:20 2017
 
Copyright (c) 1982, 2016, Oracle.  All rights reserved.
 
Connected to an idle instance.
 
SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/u01/app/oracle/product/12..
0/db_1/dbs/initNNLEI.ora
' 查看報錯路徑: [oracle@lemon ~]$ cd /u01/app/oracle/product/12.2.0/db_1/dbs [oracle@lemon dbs]$ ll 總用量 20 -rw-rw---- 1 oracle oinstall 1544 12月 17 06:17 hc_nnlei.dat -rw-r--r-- 1 oracle oinstall 3079 5月 15 2015 init.ora -rw-r----- 1 oracle oinstall 24 12月 17 05:55 lkNNLEI -rw-r----- 1 oracle oinstall 3584 12月 17 06:11 orapwnnlei -rw-r----- 1 oracle oinstall 3584 12月 17 09:51 spfilennlei.ora 解決辦法: 從pfile參數文件里,拷貝一份spfile參數文件並重新命名為initNNLEI.ora #如果找不到spfile就直接拿dbs下面的init.ora復制一份並修改為報錯中需要的名稱就行 ,如上圖就是將init.ora修改為initNNLEI.ora,並參考后面09925進行路徑修改 cp init.ora initNNLEI.ora 注:此方法優於pfile拷文件,建議使用此方法 注:參考09925后可以規避以下的幾乎所有報錯 [oracle@lemon ~]$ cd $ORACLE_BASE/admin/nnlei/pfile [oracle@lemon pfile]$ ll 總用量 4 -rw-r----- 1 oracle oinstall 1951 12月 17 05:48 init.ora.1117201761430 [oracle@lemon pfile]$ cp init.ora.1117201761430 /u01/app/oracle/product
/12.2.0/db_1/dbs/initNNLEI.ora [oracle@lemon pfile]$ cd $ORACLE_HOME/dbs [oracle@lemon dbs]$ ll 總用量 24 -rw-rw---- 1 oracle oinstall 1544 12月 17 06:17 hc_nnlei.dat -rw-r----- 1 oracle oinstall 1951 12月 17 10:59 initNNLEI.ora -rw-r--r-- 1 oracle oinstall 3079 5月 15 2015 init.ora -rw-r----- 1 oracle oinstall 24 12月 17 05:55 lkNNLEI -rw-r----- 1 oracle oinstall 3584 12月 17 06:11 orapwnnlei -rw-r----- 1 oracle oinstall 3584 12月 17 09:51 spfilennlei.ora Oracle ora 01261,Oracle心得:ORA-01261:ORA-01262:錯誤的解決 用ps -ef|grep ora_ 查看沒有發現oracle的進程。進入數據庫啟動遇上ORA-01261:ORA-0
1262
:錯誤。$ sqlplus quot;/as sysdbaquot 用ps -ef|grep ora_ 查看沒有發現Oracle的進程。 進入數據庫啟動遇上ORA-01261:ORA-01262:錯誤。 $ sqlplus "/as sysdba" SQL*Plus: Release 10.2.0.1.0 - Production on Tue Dec 15 08:25:22 2009 Copyright (c) 1982, 2005, Oracle. All rights reserved. Connected to an idle instance. SQL> startup ORA-01261: Parameter db_recovery_file_dest destination string c
annot be translat ed ORA
-01262: Stat failed on a file destination directory IBM AIX RISC System/6000 Error: 2: No such file or directory 參照上面的說明,在系統目錄中找不到db_recovery_file_dest目錄。 解決: 查看了Oracle的初始化文件。 $cat /oracle/oms/102_64/dbs/initSID.ora 如:db_recovery_file_dest='/oracle/oms/flash_recovery_area' 查看系統/oracle/oms/沒有該“flash_recovery_area”文件夾。 (如果該文件存在那么就參考09925進行解決) 用oracle用戶在/oracle/oms目錄下創建一個“flash_recovery_area”文件夾 $mkdir flash_recovery_area SQL> startup 重新啟動數據庫就正常了。 ORA-09925 Unable to create audit trail file 問題解決 和上面的01261 01262屬於同類型問題 經排查發現是我的Oracle的初始化文件無法識別<oracle_base><oracle_home>地址,
解決方案為將<oracle_base>更替為具體路徑。 注:以后可檢測具體是何原因導致的
(以發現原因:原因為profile下的init.ora沒有進行Oracle具體地址
<oracle_base>的修改
,每次新安裝Oracle,應對init.ora中的配置文件進行修改,
將<oracle_base><oracle_home>更替為本機具體路徑。) 解決oracle數據庫ORA-01081 SQL>startup ORA-01081:cannot start already-running ORALCE - shut it down first SQL>shutdown immediate ORA-03135:connection lost contact 解決方法: sqlplus "/ as sysdba" sqlplus>shutdown abort; sqlplus>startup;

 

 

 


免責聲明!

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



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