1. 程式人生 > 資料庫 >Linux下安裝Oracle11G詳細過程

Linux下安裝Oracle11G詳細過程

轉自:

需要安裝oracle dataguard,所以先要安裝單臺oracle11g,下面是單臺oracle11g的詳細安裝過程。

1,安裝環境

硬體環境:2臺linux虛擬機器,Centos6.4 ,4G ,4核,磁碟50G

Oracle軟體版本:

linux.x64_11gR2_database_1of2.zip

linux.x64_11gR2_database_2of2.zip

下載地址為:

 

rlwrap軟體安裝參考:

 

2,解壓縮

         unzip linux.x64_11gR2_database_1of2.zip

         unzip linux.x64_11gR2_database_2of2.zip

         會在本目錄下面出現一個database的目錄,大概2.3g左右大小。

 

3,作業系統版本及補丁矩陣

需要安裝以下RPM軟體包(加32bit括號註解的是該軟體包32位版本,對應同名未加註解的則是該軟體包64位版本。在64位版本平臺上,兩種版本都要安裝):

binutils-2.17.50.0.6

compat-libstdc++-33-3.2.3

compat-libstdc++-33-3.2.3 (32 bit)

elfutils-libelf-0.125

elfutils-libelf-devel-0.125

gcc-4.1.2

gcc-c++-4.1.2

glibc-2.5-24

glibc-2.5-24 (32 bit)

glibc-common-2.5

glibc-devel-2.5

glibc-devel-2.5 (32 bit)

glibc-headers-2.5

ksh-20060214

libaio-0.3.106

libaio-0.3.106 (32 bit)

libaio-devel-0.3.106

libaio-devel-0.3.106 (32 bit)

libgcc-4.1.2

libgcc-4.1.2 (32 bit)

libstdc++-4.1.2

libstdc++-4.1.2 (32 bit)

libstdc++-devel 4.1.2

make-3.81

sysstat-7.0.2

 

採用yum安裝,如下:
yum install -y binutils*

yum install -y compat-libstdc*

yum install -y elfutils-libelf*

yum install -y gcc*

yum install -y glibc*

yum install -y ksh*

yum install -y libaio*

yum install -y libgcc*

yum install -y libstdc*

yum install -y make*

yum install -y sysstat*

 

yum install libXp* -y

yum install -y glibc-kernheaders

 

檢查下lib是否安裝齊全:

[root@powerlong4 ~]# rpm -q --queryformat %-{name}-%{version}-%{release}-%{arch}"\n" \ compat-libstdc++-33 glibc-kernheaders glibc-headers libaio libgcc glibc-devel xorg-x11-deprecated-libs

如果缺少,就繼續安裝缺失的元件包。

4,網路、系統引數調整及說明

在生產環境中要求儘量使用2塊千/百兆網絡卡做繫結,預防網絡卡、網線、埠、單個網路交換機帶來的單點故障。

4.1、調整核心引數及使用者限制

以下所有相關操作需要root使用者執行,並且重啟動作業系統才能完全生效。

(1)   編輯/etc/sysctl.conf檔案,設定相關引數的系統預設值。如果該檔案中已有相關引數的設定,則確保引數值不小於如下對應值;如果還沒有相關引數的設定,則按照如下格式新增相應的引數設定行。

Vim /etc/sysctl.conf

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

 

(2)編輯/etc/security/limits.conf檔案,修改作業系統對oracle使用者資源的限制。在該檔案中新增如下行。

vim /etc/security/limits.conf

oracle           soft    nproc   2047

oracle           hard    nproc   16384

oracle           soft    nofile  1024

oracle           hard    nofile  65536

oracle           hard    stack   10240

 

4.2、開啟作業系統非同步IO(AIO)

前面部分第2點需要安裝的包已經包含了libaio-0.3.106,預設開啟非同步I/O。

檢查在作業系統中AIO是否執行,執行命令及顯示結果類似如下:

$ cat /proc/slabinfo | grep kio

kioctx     51    120    320   12    1 : tunables   54   27    8 : slabdata    10    10    0

kiocb      30     30    256   15    1 : tunables  120   60    8 : slabdata    2      2    0

 

注:如資料庫使用的是檔案系統,且要使用非同步IO,則需要修改該資料庫的初始化引數

a.     設定disk_asynch_io引數值為TRUE(預設值)

b.     設定filesystemio_options引數值為ASYNCH

 

 

5: 目錄結構及空間規劃

5.1 儲存設定

PC Server的資料庫儲存一般不會使用高階儲存(vg物理分割槽推薦為32M),所以vg物理分割槽(PE Size)大小為作業系統安裝時預設的32M,或者256M(中低端儲存vg物理分割槽推薦值)均可。

5.2 臨時目錄

/tmp:至少1GB空間,推薦5GB,用於存放Oracle軟體安裝時產生的日誌。

5.3 交換要求

交換區(SWAP):按照作業系統推薦配置,根據記憶體大小,為實體記憶體的1-1.5倍。推薦:建立2個大小相同、且分佈在不同盤(pv)上的SWAP空間。

5.4,資料庫軟體安裝目錄

Oracle軟體安裝目錄建議設定為單獨的檔案系統,掛載的目錄名定為/tpsys,實際安裝的主目錄為/tpsys/app/oracle,大小一般配置為20GB,目錄的owner要求為oracle:oinstall。

5.5,資料庫空間規劃

Oracle資料庫空間用表空間(tablespace)表示,如預設的:SYSAUX、SYSTEM、TEMP、UNDOTBS1、USERS等;表空間的組成單位是資料檔案(datafile)。我們定義基於檔案系統的檔案來建立Oracle的資料檔案,並定義回滾表空間、臨時表空間和資料表空間單個數據檔案的大小為10G。
資料庫使用的檔案目錄及相應用途和對應檔案系統大小規劃如下(假設資料庫名稱為test,在實際操作中,斜體的test需要替換為實際定義的資料庫名):
/data/oracle/data:系統及資料表空間對應資料檔案存放路徑;/oracle/app/oracle
/data/oracle/redolog/  :redo重做日誌檔案存放路徑;
/data/oracle/archive/  :歸檔日誌檔案存放路徑;
/data/oracle/tempfile/  :tempfile檔案存放路徑(n為順序中最後一個編號)。

/data/oracle/backup/data:備份目錄

……
注意:以上檔案系統掛載在二級目錄上,即,掛載的目錄是:/data/oracle/data、/data/oracle/redolog/、/data/oracle/archive/、/data/oracle/tempfile/等

另外,根據實際使用需要,還可能要有用於閃回區的檔案目錄和對應檔案系統:
/data/oracle/flashback:閃回區目錄,建議100GB
如果需要將資料庫備份到硬碟,則要建立用於存放資料庫備份的檔案目錄及檔案系統:
/data/oracle/backup:備份目錄,根據將來資料量大小,建議大於資料表空間容量
注意:以上檔案系統掛載在二級目錄上
以上所有目錄的owner要求為oracle:oinstall。

 

 

 

6 ,資料庫軟體的安裝和資料庫的建立配置

6.1,資料庫安裝使用者和組的建立

使用root使用者,進行如下操作:
建立oinstall組
# groupadd  -g 5000 oinstall
建立dba組
# groupadd  -g 501 dba
建立oracle使用者
#useradd -g oinstall  -G  dba  oracle

 

6.2,資料庫安裝使用者的profile檔案的設定

首先確定資料庫名及資料庫例項名,對於單例項(非RAC)環境下,兩者一般是一致的。

假設資料庫(例項)名為powerdes,使用oracle使用者,編輯/home/oracle/.bash_profile,加入以下內容

 

#added by timman for oracle

 

export ORACLE_BASE=/oracle/app/oracle

export ORACLE_HOME=/oracle/app/oracle/product/11.2.0/dbhome_1

 

export ORACLE_SID=powerdes

export PATH=$ORACLE_HOME/bin:$PATH

 

export ORACLE_TERM=xterm

export TNS_ADMIN=$ORACLE_HOME/network/admin

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/oracm/lib:$ORACLE_HOME/lib

export CLASSPATH=$CLASSPATH:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/jlib:$ORACLE_HOME/network/lib

export LANG=en_US.gbk

export NLS_LANG=american_america.ZHS16GBK

export EDITOR=vi

 

6.3 建立相應的檔案系統(或安裝目錄)並改變相應的許可權

[root@powerlong4 oracle]# mkdir -p /oracle/app/oracle

[root@powerlong4 oracle]# chown -R oracle:oinstall /oracle/app/oracle

[root@powerlong4 oracle]# chmod -R 775 /oracle/app/oracle

[root@powerlong4 oracle]#

6.4,準備vnc遠端連線linux桌面
參考: 

 

6.6,在linux下準備

使用oracle使用者進行。安裝需要在圖形介面(在控制檯或者用X-Window工具軟體)。開啟一個終端視窗,執行如下命令進行安裝:

export DISPLAY=10.7.32.145:0.0

輸入xclock測試,如果能夠看見時鐘證明圖形化可用

 

yum install tigervnc tigervnc-server

 

在xshell的linux系統裡面,執行如下命令:

[root@powerlong4 rlwrap-0.37]#  xhost + 
access control disabled, clients can connect from any host
[root@powerlong4 rlwrap-0.37]# 
表示linux下視窗環境以及準備OK,可以進行oracle安裝了。


7,開始安裝
先用vnc遠端連線linux系統,如下所示:


7.1,在linux系統上面準備啟動啟動命令

[root@powerlong4 ~]$ su - oracle
[root@powerlong4 ~]# export DISPLAY=192.168.121.217:0.0
[root@powerlong4 ~]#  xhost + 
access control disabled, clients can connect from any host
[root@powerlong4 /]# 

[oracle@powerlong4 ~]$ cd /home/oracle_64/database/

[oracle@powerlong4 database]$ ./runInstaller

Starting Oracle Universal Installer...

 

Checking Temp space: must be greater than 120 MB.   Actual 21658 MB    Passed

Checking swap space: must be greater than 150 MB.   Actual 2047 MB    Passed

Checking monitor: must be configured to display at least 256 colors.    Actual 16777216    Passed

Preparing to launch Oracle Universal Installer from /tmp/OraInstall2015-01-23_12-18-01PM. Please wait ...[oracle@powerlong4 database]$

[root@powerlong4 database]#

如下圖所示:

 

 

7.2 去掉I wish to receive security updates via My Oracle Surrport選項,點選Next。

 

7.3,選擇Install database software only,點選Next。

 

7.4,選擇Single instance database installation,點選Next。

 

 

7.5,在Available Languages中點選English、Simplified Chinese、Traditional Chinese,點選兩個框中間的>,將選中的語言加入到右邊的Selected Languages中,然後點選Next。

 

 

7.6,按照實際情況,選擇企業版本,如下圖

         6.jpg



7.7,填寫oracle的軟體路徑和基本路徑,如下圖:

     

 

7.8,選擇安裝日誌目錄,如下圖所示:

 

7.9,選擇dba組

 


7.10,繼續下一步安裝操作



7.11,可以忽略,因為centos版本較高,所以11g check的時候不識別高版本lib

 

7.12,繼續安裝

 

7.13,安裝中,這個時間比較漫長

需要等待中,大概20分鐘左右

 

點選OK,繼續


 

 

 

 

 

 

7.14,然後點選close,結束

 

 

 

8,建立資料庫

資料庫的建立使用oracle使用者進行(假設資料庫名稱為powerdes,在實際操作中,斜體的powerdes需要替換為實際定義的資料庫名),按下面步驟建立資料庫。

8.1.安裝需要在圖形介面(在控制檯或者用X-Window工具軟體)。開啟一個終端視窗,執行如下命令:dbca,如下圖所示:

 

8.2,Database Configuration Assistant圖形介面啟動。標題同時指明瞭步驟的編號和步驟的名稱。在步驟名稱為Welcome的歡迎視窗,直接點選next。



8.3,等待下一步NEXT

 

8.4, 選擇Custom Database

19.jpg

 

8.5,Global Database Name框:輸入前面確定的資料庫名
SID框:自動出現和資料庫名相同的內容作為資料庫例項名,單例項情況下不作改動

20.jpg


8.6,繼續預設

21.jpg

 

8.7,Database Credentials

Use Different Administrative Passwords
表格的Password和Confirm Password列中分別為User Name列SYS、SYSTEM、DBSNMP和SYSMAN使用者輸入口令並重復一次輸入(如密碼設定過於簡單,下一步前會有彈出視窗提示確認接受安全風險)
sys和system密碼設定可以在資料庫建立後修改。

22.jpg  密碼為sys1624

 

 

 

8.8,Database File Locations
Storage Locations:選擇Use Common Location for All Database Files
Database File Location框:輸入/oracle/data_ora

23.jpg

 

 


8.9,Recovery Configuration
Specify Fast Recovery Area
如果前面Management Options步驟選擇了自動備份,則保留勾選,並在下方:
Fast Recovery Area框:修改為快速恢復區的目錄名
Fast Recovery Area Size框:調整快速恢復區的大小



8.10,Enable Archiving
根據是否歸檔日誌的實際需求決定是否選擇(重要的生產系統必須開啟歸檔,測試系統一般關閉歸檔節省伺服器空間)
點選旁邊的Edit Archive Mode Parameters…,在彈出視窗中:
Automatic Archiving:保持預設勾選
Archive Log File Format框:修改為%t_%s_%r.arc
Archive Log Destinations表格:第一行中輸入/oracle/data_ora/archive
點選OK返回主視窗
Database Content
Database Components頁面

 

 

8.11,Initialization Parameters,記憶體分配20%(測試庫所以分小一些,生產庫可以分配較大的比如40%60%等),字符集選擇相容utf8的選項

25.jpg 26.jpg

 


8.12,點選File Location Variables,裡面可以看到一些基礎引數資訊,返回,然後直接下一步,如下圖所示:

27.jpg,28.jpg

 


8.13,選擇Generate Database Creation Scripts,預設為 /oracle/app/oracle/admin/powerdes/scripts,如下圖:

 

8.14,點選Finish按鈕,如下圖所示:


點選OK按鈕,有報錯說/etc/oratab讀取錯誤,報錯如下圖所示

 

 

 

 

所以去建立下這個目錄

[root@powerlong4 rpms]# mkdir /etc/oratab

[root@powerlong4 rpms]#

[root@powerlong4 rpms]# chown -R oracle.oinstall /etc/oratab

[root@powerlong4 rpms]#


8.15,之後點選OK按鈕,開始建立資料庫,如下圖所示:

 

等待35分鐘後,資料庫建立完畢,之後點選,如下所示:

 

 

 

 

9,簡單驗證

[oracle@powerlong4 ~]$ sqlplus "/ as sysdba"

 

SQL*Plus: Release 11.2.0.1.0 Production on Sat Jan 24 14:51:10 2015

 

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

 

 

Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

 

SQL> create table z_test(id number,name varchar(20));

 

Table created.

 

SQL> insert into z_test select 1,'a' from dual;

 

1 row created.

 

SQL> select * from z_test;

 

         ID NAME

---------- ----------------------------------------

          1 a

 

SQL> commit;

 

Commit complete.

 

SQL> exit

Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

[oracle@powerlong4 ~]$

10,報錯資訊記錄

 

 

 

 

 (1)報錯

>>> Ignoring required pre-requisite failures. Continuing...

Preparing to launch Oracle Universal Installer from /tmp/OraInstall2015-01-21_06-07-35PM. Please wait ...[oracle@powerlong4 database]$ Exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/OraInstall2015-01-21_06-07-35PM/jdk/jre/lib/i386/xawt/libmawt.so: libXext.so.6: cannot open shared object file: No such file or directory

   at java.lang.ClassLoader$NativeLibrary.load(Native Method)

   at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)

   at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1647)

   at java.lang.Runtime.load0(Runtime.java:769)

   at java.lang.System.load(System.java:968)

   at java.lang.ClassLoader$NativeLibrary.load(Native Method)

   at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)

   at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1668)

   at java.lang.Runtime.loadLibrary0(Runtime.java:822)

   at java.lang.System.loadLibrary(System.java:993)

   at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50)

   at java.security.AccessController.doPrivileged(Native Method)

   at java.awt.Toolkit.loadLibraries(Toolkit.java:1509)

   at java.awt.Toolkit.<clinit>(Toolkit.java:1530)

   at com.jgoodies.looks.LookUtils.isLowResolution(Unknown Source)

   at com.jgoodies.looks.LookUtils.<clinit>(Unknown Source)

   at com.jgoodies.looks.plastic.PlasticLookAndFeel.<clinit>(PlasticLookAndFeel.java:122)

   at java.lang.Class.forName0(Native Method)

   at java.lang.Class.forName(Class.java:242)

   at javax.swing.SwingUtilities.loadSystemClass(SwingUtilities.java:1783)

   at javax.swing.UIManager.setLookAndFeel(UIManager.java:480)

   at oracle.install.commons.util.Application.startup(Application.java:758)

   at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:164)

   at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:181)

   at oracle.install.commons.base.driver.common.Installer.startup(Installer.java:265)

   at oracle.install.ivw.db.driver.DBInstaller.startup(DBInstaller.java:114)

   at oracle.install.ivw.db.driver.DBInstaller.main(DBInstaller.java:132)

^C

 

(1)   需要安裝 yum install libXext* -y

(2)   chown -R oracle:oinstall /usr/*

yum install libXext.i686 -y

 

在64位的centos安裝64位的oracle的時候,有時候會出現“libXext.so.6: cannot open shared object file:”的錯誤。

這個原因主要是oracle在安裝的時候需要安裝一些32位的lib,也就是類似於windows下的dll

出現這個問題,可以採用如下的解決辦法:

#yum install libXext.i686  即可。

 


(2)報錯

[oracle@powerlong4 database]$ ./runInstaller

Starting Oracle Universal Installer...

 

Checking Temp space: must be greater than 80 MB.   Actual 38250 MB    Passed

Checking swap space: must be greater than 150 MB.   Actual 2047 MB    Passed

Checking monitor: must be configured to display at least 256 colors

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

 

Some requirement checks failed. You must fulfill these requirements before

 

continuing with the installation,

 

Continue? (y/n) [n] y

 

 

>>> Ignoring required pre-requisite failures. Continuing...

Preparing to launch Oracle Universal Installer from /tmp/OraInstall2015-01-21_07-15-20PM. Please wait ...[oracle@powerlong4 database]$ Exception in thread "main" java.lang.NoClassDefFoundError

   at java.lang.Class.forName0(Native Method)

   at java.lang.Class.forName(Class.java:164)

   at java.awt.Toolkit$2.run(Toolkit.java:821)

   at java.security.AccessController.doPrivileged(Native Method)

   at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:804)

   at com.jgoodies.looks.LookUtils.isLowResolution(Unknown Source)

   at com.jgoodies.looks.LookUtils.<clinit>(Unknown Source)

   at com.jgoodies.looks.plastic.PlasticLookAndFeel.<clinit>(PlasticLookAndFeel.java:122)

   at java.lang.Class.forName0(Native Method)

   at java.lang.Class.forName(Class.java:242)

   at javax.swing.SwingUtilities.loadSystemClass(SwingUtilities.java:1783)

   at javax.swing.UIManager.setLookAndFeel(UIManager.java:480)

   at oracle.install.commons.util.Application.startup(Application.java:758)

   at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:164)

   at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:181)

   at oracle.install.commons.base.driver.common.Installer.startup(Installer.java:265)

   at oracle.install.ivw.db.driver.DBInstaller.startup(DBInstaller.java:114)

   at oracle.install.ivw.db.driver.DBInstaller.main(DBInstaller.java:132)

^C

[oracle@powerlong4 database]$

  需要在Linux上安裝圖形介面服務端程式X Window

yum groupinstall "X Window System" #安裝X Window

[root@powerlong4 database]# yum groupinstall "X Window System" "Desktop Platform" Desktop

yum install vnc

 [root@powerlong4 database]# export DISPLAY=192.168.121.217:0.0

[root@powerlong4 database]# xhost +

access control disabled, clients can connect from any host

[root@powerlong4 database]#