linux 環境下安裝oracle11g方法及安裝過程中遇上的問題解決方法


  

 Oralce安裝教程

1、先安裝需要的依賴包

找到哪個沒有安裝,直接yum install XX,直到所有的都安裝完成。注意,可能一個包安裝了,再次執行檢查,還是提示沒有安裝,那么就不需要管他們了,繼續安裝下面的。

rpm -q binutils compat-libstdc++ elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel

 

2、創建用戶

需要創建一個oralce用戶,並創建兩個組dba,oinstall,且將oralce添加至組oinstall和附加到dba組,具體命令如下:

/usr/sbin/groupadd oinstall

/usr/sbin/groupadd dba

/usr/sbin/useradd -m -g oinstall -G dba oracle

passwd oracle

注意,這里的useradd g: 新賬戶主組的名稱或 ID,-G: 新賬戶的附加組列表,-m: 創建用戶的主目錄

3、創建必要的目錄,並賦權限。

mkdir -p /u01/app/oracle

mkdir -p /u01/app/oracle/db_1

mkdir -p /u01/app/oracle/oradate

mkdir -p /u01/app/oracle/install

mkdir -p /u01/app/oracle/oraInventory

chown -R oracle:oinstall /u01/app

chmod -R 775 /u01/app

4、修改各種系統參數。

直接執行下面的語句就行。

cat >> /etc/sysctl.conf <<EOF (從這里開始)

# Kernel paramaters required by Oracle 11g R2

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

EOF 

/sbin/sysctl -p

 

cat >> /etc/security/limits.conf <<EOF 

oracle soft nproc 2047 

oracle hard nproc 16384 

oracle soft nofile 1024 

oracle hard nofile 65536 

EOF(到這里結束)

后面的都是一樣!!!!!!!!!

cat >> /etc/pam.d/login <<EOF 

session required /lib64/security/pam_limits.so

EOF

注意:

32位系統用:

session required /lib/security/pam_limits.so

64系統用:

session required /lib64/security/pam_limits.so

如果不寫對,在命令行模式下,是無法登陸系統的。

!!!!!!!!!!!!!!

 

 

cat >> /etc/profile <<EOF

if [ $USER = "oracle" ]; then

        if [ $SHELL = "/bin/ksh" ]; then

              ulimit -p 16384

              ulimit -n 65536

        else

              ulimit -u 16384 -n 65536

        fi

fi

EOF

 

cat >> /etc/csh.login <<EOF

# For Oracle Install

if ( $USER == "oracle" ) then
    limit maxproc 16384
    limit descriptors 65536
    umask 022
end if

EOF

5、設置環境變量

注意,這個步驟需要切換到oracle用戶,

cd /home/oracle

 

cat >> /home/oracle/.bash_profile <<EOF

# For Oracle Install  

TMP=/tmp;

export TMP;

TMPDIR=$TMP;

export TMPDIR;

ORACLE_BASE=/u01/app/oracle;

export ORACLE_BASE;

ORACLE_HOME=$ORACLE_BASE/db_1;

export ORACLE_HOME;

ORACLE_SID=orcl;

export ORACLE_SID;

    

ORACLE_TERM=xterm;

export ORACLE_TERM;

PATH=/usr/sbin:$PATH;

export PATH;

PATH=$ORACLE_HOME/bin:$PATH;

export PATH;

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;

export LD_LIBRARY_PATH;

CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;

export CLASSPATH;

if [ $USER = "oracle" ]; then

        if [ $SHELL = "/bin/ksh" ]; then

              ulimit -p 16384

              ulimit -n 65536

        else

              ulimit -u 16384 -n 65536

        fi

fi

EOF

注意一下,當所有系統變量和環境變量配置好之后,要cat一下看看是不是都增加或者修改成功!!!!!!!

================== 華麗的分割線 ==================

============== 准備工作完成,開始安裝 ===============

================== 華麗的分割線 ==================

6、開始安裝

先將數據庫文件放入到/u01/app/oracle/install中,然后用解壓軟件解壓,

unzip linux.x64_11gR2_database_1of2.zip

unzip linux.x64_11gR2_database_2of2.zip

《解壓好之后,先在root用戶下執行xhost  + 使得能夠任意進行連接。后su 到oracle用戶下,執行export LANG=en后, 再進入到/u01/app/oracle/install/database下執行 ./runInstaller進行安裝》   

需要進入到vnc界面才能進行安裝(原因未知,虛擬機上直接執行一直報錯,報錯為:檢查監視器: 監視器配置至少必須顯示 256 種顏色

    >>> 無法使用命令 /usr/bin/xdpyinfo 自動檢查顯示器顏色。請檢查是否設置了 DISPLAY 變量。 未通過<<<<-網上百度方法,是root 用戶下執行xhost +  然后進入oracle用戶執行./runInstaller就可以,但是我在虛擬機上執行后不行,最后在vnc上執行xhost + 發現執行通過,並能正常安裝)--------自己補充的說明

進入到 datebase文件夾,

 ./runInstaller

注意,這里,需要用桌面環境,如果你的機器沒有安裝桌面環境,需要安裝,然后再桌面環境里執行./runInstaller ,安裝桌面環境命令如下:

yum groupinstall "Desktop"   "Desktop Platform"   "Desktop Platform Development"  "Fonts"  "General Purpose Desktop"  "Graphical Administration Tools"  "Graphics Creation Tools"  "Input Methods"  "X Window System"  "Chinese Support [zh]" "Internet Browser"

安裝完成桌面環境,在桌面環境內執行./runInstaller后,發現彈出來的東西中文亂碼,在命令行敲入:export LANG=en,然后再安裝。

7、安裝數據庫

1)去除圖中這個鈎,然后點擊下一步。

 

 

2)點擊“yes”。

 

 

(3)這里選擇只安裝軟件,並下一步。

 

 

4)選擇單數據庫安裝,並下一步。

 

 

5)選擇“簡體中文”,並下一步。

 

 

6)選擇企業版,並下一步。

 

 

7)配置Oracle Base目錄和Softwore Location目錄,注意,這里的Oracle Base目錄要和前面設置的環境變量一致,下面的Softwore Location目錄要和前面設置的環境變量

 

一致。

 

8)選擇目錄,這個目錄之間建立過。

 

 

9)直接點擊下一步。

 

 

10)接下來會到達檢查依賴的步驟,他會提示很多依賴有問題,但是其實沒關系,你已經安裝好了,直接點擊右上角的“忽略全部”即可,然后下一步。

 

 

11)點擊“完成”。然后就會開始安裝,這可能需要等一會。

 

 

有可能還未執行到94%的時候,在84%的時候就卡住,那么應該是內存不夠的原因,進入虛擬機修改一下內存大小為3g生效之后,會快速安裝到94%(具體如果半天不動可以依據提示進行百度)

12)當安裝到94%的時候,會彈出一個小框,讓你用root用戶執行以下腳本。執行完了之后,點擊OK。

 

 

13)執行腳本:/u01/app/oraInventory/orainstRoot.sh

 

 

14)執行腳本:/u01/app/oracle/db_1/root.sh

 

15)這樣就安裝完成了,點擊“關閉”,結束安裝。

 

 

16)然后,oracle就安裝完畢了。別高興太早,后面還有其他的。

8、配置監聽器

如果一開始的系統變量和環境變量沒有配置好,而oracle僥幸安裝成功了,那么這里的netca命令是不會生效的,它會出現提示,.bash:netcacommand not found ,這時候需要回過頭看看這些變量設置好了沒有,然后重新授權,重新安裝oracle,發現一切都很順利,並且netca命令生效!!!!!!

1)在終端中使用netca命令啟動創建監聽器。

 

 

2)選擇“監聽器配置”,並下一步。

 

 

3)選擇“增加”,並執行下一步。

 

 

4)輸入監聽的名稱(默認就行),並點擊下一步。

 

 

5)直接下一步。

 

 

(6) 使用默認的端口號:1521,直接下一步。

注意:在這個地方點擊下一步的時候沒有馬上到下一步的時候,可能就會出現提示說1521端口被占用,那么這時候你需要看看你的地址是不是設置的靜態ip,如果是動態的,你不知道具體多少,用ifconfig查看一下,然后vim /etc/hosts,將里面的關於主機名和ip的換成你現在的動態ip,然后繼續點擊下一步,就可以進入到下一步了

 

7)不需要配置其他監聽器了,直接下一步。

 

 

8)監聽配置完成,下一步。

 

 

9)點擊“完成”,結束監聽器的配置。

 

 

9、創建數據庫實例

1)在終端中使用dbca命令啟動創建數據庫實例。

 

 

2)點擊“下一步”開始配置。

 

 

3)選擇“創建數據庫”,並點擊下一步。

 

 

4)直接點擊下一步。

 

 

5)(這個地方你可以查看一下你配置的環境變量/home/oracle/.bash_profile里面的ORACLE_SID是多少填寫實例名,這里需要與之前配置的環境變量中的保持一致,然后點擊“下一步”。

 

 

6)這個地方直接點擊“下一步”。

 

 

7)接下來設置所有用戶的密碼,建議全部設置一樣就行,我設置的就是123456。生產環境可不建議這樣設置。

 

 

8)跟我說,密碼太簡單了,是否要繼續,當然是繼續拉。

 

 

9)這兩個地方直接選擇下一步。

 

 

 

 

10)選擇簡單的文法,並下一步。

 

 

11)設置編碼格式為UTF-8。

 

 

12)直接點擊“下一步”。

 

 

13)選擇“創建數據庫”,並點擊下一步。

 

 

14)在彈出框里點擊OK。

 

 

15)然后就開始創建數據庫實例了,這個過程需要等一會。(這個地方要耐心等待,因為需要一段時間)

 

 

16)創建完成后彈了一個說明,直接退出即可。

 

 

17)至此,安裝步驟結束,接下來開始進行各種配置了。

10、啟動數據實例

啟動數據庫實例,分為兩步:第一步,啟動監聽;第二步,啟動數據庫實例。

su - oracle     --“切換到oracle用戶”

lsnrctl start       --“打開監聽”

sqlplus /nolog      --“進入到sqlplus”

conn /as sysdba     --“連接到sysdba”

startup        --“啟動數據庫實例”

shutdown immediate    --“關閉數據庫實例”

exit             --“退出sqlplus”

lsnrctl stop     --“關閉監聽”

上面的命令很重要!!!!!!!!!

 

還有一種方法,不需要登陸sqlplus都ok

先啟動監聽 lsnrctl start

啟動實例  dbstart

使用dbstart命令啟動數據庫比較方便,但是在linux上安裝好oracle之后,第一次使用dbstart命令可能會報如下錯誤:

[oracle@localhost ~]$ dbstart

ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener

Usage: /u01/app/oracle/db_1/bin/dbstart ORACLE_HOME

錯誤原因

dbstart和dbshut腳本文件中ORACLE_HOME_LISTNER的設置有問題

解決方法(注意這兩個文件的位置,在你安裝的oracle子目錄里面,我的是在/u01/app/oracle/db_1/bin下面

分別打開兩個文件找到:ORACLE_HOME_LISTNER=$1,修改為

ORACLE_HOME_LISTNER=$ORACLE_HOME,命令如下:

[oracle@oracle11g ~]$ vi $ORACLE_HOME/bin/dbstart

[oracle@oracle11g ~]$ vi $ORACLE_HOME/bin/dbshut

修改后保存退出,問題解決,此時再運行dbstart,已經不報錯了,但是沒有任何反應,ps一下進程,沒有oracle的進程,說明oracle實例沒有正常啟動。

 

此時的原因是在/etc/oratab的設置問題,(注意這里的是在cd /下面的/etc/oratab里面設置我們cat一下,發現

orcl:/u01/app/oracle/db_1:N

最后設置的是"N"(我的環境中只菜單有一個實例,因此只有一行配置語句),我們需要把“N”修改為“Y”。

11、設置開機自動啟動

Root用戶下)/etc/rc.d/rc.local中加入如下語句即可實現同系統啟動實例:

su - oracle -c "lsnrctl start"

su - oracle -c "dbstart"

11、測試

安裝完了,怎么知道自己安裝的有沒有問題呢?當然需要測試一下啦。

1、重啟機器,然后oracle是會自動啟動的。

2、輸入:sqlplus /nolog 連上oralce。

3、切換到 dba:conn /as sysdba

4、執行:select * from fwb;

5、如果報找不到表,則代表正常。(因為我們本來就沒有這個表。)

[oracle@localhost ~]$ sqlplus /nolog

SQL*Plus: Release 11.2.0.1.0 Production on Thu Dec 22 17:59:04 2016

Copyright (c) 1982, 2009, Oracle.  All rights reserved.

SQL> conn /as sysdba

Connected.

SQL>

SQL> select * from fwb;

select * from fwb

              *

ERROR at line 1:

ORA-00942: table or view does not exist

到這里整個oracle的安裝就完畢了,如果有問題可以一起交流。


免責聲明!

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



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