Oracle數據庫部署

一·安裝oracle的準備工作(以Oracle11g爲例)

1、系統及配置要求

1)確認linux系統的版本

Oracle11g明確支持的Linux系統包括Asianux2.0/3.2、Oracle Enterprise Linux4.0/5.0、Red Hat Enterprise 4.0/5.0、SUSE Enterprise Server10.0/11.0。在其他Linux系統中安裝時,個別軟件或配置文件可能需要做出適當調整。

Oracle數據庫部署

2) 物理內存:必須高於1G

物理內存應不少於1GB,對於VMWARE虛擬機建議不少於1.5GB.對於系統中的交換分區設置,應參以下約定:物理內存爲1GB2GB時,交換分區爲物理內存的1.52倍;物理內存爲2GB16GB時,交換分區與物理內存大小相同;物理內存超過16GB時,交換分區使用16GB就可以了。

Oracle數據庫部署

3) 硬盤空間:對於Oracle11g,若程序文件和數據文件安裝在同一分區,則分區的銀盤空間要求爲:標準版5.38G,企業版需要5.65G,還要確保/tmp目錄所在的分區空間不少於1G,建議總的空間給10G以上

Oracle數據庫部署



4) 確定主機名之後修改hosts文件(安裝好oracle之後再修改主機名會導致數據庫啓動失敗)

Oracle數據庫部署



2、配置yum,安裝支持包

 Vim  oracle.repo

Oracle數據庫部署
安裝軟件位於OS光盤中
Oracle數據庫部署

還需要安裝pdksh包,但是Redhat6.5光盤中的ksh存在兼容性衝突,所以需要單獨安裝pdksh-5.2.14-37.el5_8.1.x86_64.rpm,使用rpm安裝即可。

Oracle數據庫部署

3、調整內核參數

內核參數調整體現在/etc/sysctl.conf文件中。主要包括對內存調度、端口範圍、打開文件數、I/O請求等相關的一些設置,相關數值不可低於安裝要求。修改完畢後通過執行sysctl –p命令使新配置立即生效。

vim  /etc/sysctl.conf  在文件尾部添加如下內容:

Oracle數據庫部署

在下面的三行前面加上#註釋。

Oracle數據庫部署

Oracle數據庫部署

各參數詳解:

fs.aio-max-nr

此參數限制併發未完成的請求,應該設置避免I/O子系統故障。

fs.file-max

該參數決定了系統中所允許的文件句柄最大數目,文件句柄設置代表linux系統中可以打開的文件的數量。

kernel.shmall

該參數控制可以使用的共享內存的總頁數。Linux共享內存頁大小爲4KB,共享內存段的大小都是共享內存頁大小的整數倍。一個共享內存段的最大大小是16G,那麼需要共享內存頁數是16GB/4KB=16777216KB /4KB=4194304(頁),也就是64Bit系統下16GB物理內存,設置kernel.shmall = 4194304才符合要求.

kernel.shmmax

是核心參數中最重要的參數之一,用於定義單個共享內存段的最大值。設置應該足夠大,設置的過低可能會導致需要創建多個共享內存段,這樣可能導致系統性能的下降。至於導致系統下降的主要原因爲在實例啓動以及ServerProcess創建的時候,多個小的共享內存段可能會導致當時輕微的系統性能的降低(在啓動的時候需要去創建多個虛擬地址段,在進程創建的時候要讓進程對多個段進行“識別”,會有一些影響),但是其他時候都不會有影響。

官方建議值:

32linux系統:可取最大值爲4GB4294967296bytes-1byte,即4294967295。建議值爲多於內存的一半,所以如果是32爲系統,一般可取值爲4294967295

64linux系統:可取的最大值爲物理內存值-1byte,建議值爲多於物理內存的一半,例如,如果爲12GB物理內存,可取12*1024*1024*1024-1=12884901887 

kernel.shmmni

該參數是共享內存段的最大數量。shmmni缺省值4096,一般肯定是夠用了。

kernel.sem

kernel.sem = 250 32000 100 128爲例:

       250是參數semmsl的值,表示一個信號量集合中能夠包含的信號量最大數目。

       32000是參數semmns的值,表示系統內可允許的信號量最大數目。

       100是參數semopm的值,表示單個semopm()調用在一個信號量集合上可以執行的操作數量。

       128是參數semmni的值,表示系統信號量集合總數。

net.ipv4.ip_local_port_range

表示應用程序可使用的IPv4端口範圍。

net.core.rmem_default

表示套接字接收緩衝區大小的缺省值。

net.core.rmem_max

表示套接字接收緩衝區大小的最大值。

net.core.wmem_default

表示套接字發送緩衝區大小的缺省值。

net.core.wmem_max

 

表示套接字發送緩衝區大小的最大值。

4、 oracle用戶要求

Oracle需要固定的運行用戶oracle,安裝組oinstall,管理組dba,這些賬號需要提前建立好。此外用來存放oracle程序及數據庫文件的基本目錄/opt/oracle也應該提前創建好。

1)建立用戶和組

Oracle數據庫部署

2)建立相關目錄

Oracle數據庫部署
3)Oracle11g的安裝任務應以運行用戶oracle的身份執行,需適當調整oracle用戶的環境配置以便滿足要求。
Oracle11g安裝界的語言類型取決於環境變量LANG,若希望用中文安裝界面,則應確保LANG變量的值爲”zh_CN.UTF-8”。中文安裝界面有時會因缺少字體、字體配置不當等原因導致界面亂碼。這時可以改用”en_US.UTF-8”英文環境以迴避類似問題。
vi ~oracle/.bash_profile

Oracle數據庫部署

4)、oracle用戶設置Shell限制:爲了優化性能,需要添加oracle用戶限制參數。進程會話限制可以採用pam_limits認證模塊來實現,通過修改登錄程序loginPAM設置以啓用該認證。

修改/etc/security/limits.conf,將用戶oracle能夠打開的進程數、進程使用的文件數加在。加入如下內容:

Oracle數據庫部署

1行是設置進程數軟限制;第2行是設置進程數硬限制;第3行是設置文件數軟限制;第4行是設置文件數硬限制

修改/etc/pam.d/login,加入如下內容:

Oracle數據庫部署5)配置oracle用戶資源限制,不配置也不會影響oracle數據庫的成功安裝,但是考慮到若有糟糕的sql語句對服務器資源的無限佔用,導致長時間對用戶請求無響應,建議提前限制oracle用戶資源。

配置方法如下:         

vim /etc/profile,輸入以下內容:

Oracle數據庫部署
6)解決中文亂碼問題

RHEL6.5中安裝oracle11g時,中文安裝界面亂碼,解決方法:

Linux命令提示符下執行以下命令,把字體庫安裝到相應位置即可

mkdir -p /usr/share/fonts/zh_CN/TrueType

cp zysong.ttf /usr/share/fonts/zh_CN/TrueType/

chmod o+r /usr/share/fonts/zh_CN/TrueType/zysong.ttf

 

7)關閉防火牆和selinux,並設置永久ip地址和主機名

8)準備工作完成後,重啓系統

二.正式安裝Oracle

1、下載oracle11g軟件包到系統/home/oracle

Oracle數據庫部署

2、 解壓縮軟件包

Oracle數據庫部署

ls  /database查看解壓後得到的文件
3.授權允許用戶oracle使用圖形終端,例如執行:xhost + oracle@localhost,表示允許用戶oracle從本機訪問,或者執行xhost + 表示取消所有限制,這裏執行xhost +即可

Oracle數據庫部署

4、 執行安裝程序

Oracle數據庫部署5、配置安全更新

Oracle數據庫部署6.安裝選項,選擇“創建和配置數據庫”

Oracle數據庫部署

7、在系統類中選擇“服務器類”

Oracle數據庫部署

8、網格選項中選擇“單實例數據庫安裝”

Oracle數據庫部署

9、安裝類型選擇“典型安裝”。如果爲各種管理賬號分別設置口令,或者選擇語言版本,設置自動備份,存儲管理等,則應選擇“高級安裝”。

Oracle數據庫部署
10、典型安裝的配置,必須設置管理員口令,其它參數採用默認值,系統將自動創建3個用戶,分別是:超級管理員syssystem和數據庫所有者sysman,當選擇高級安裝時,可以爲3個用戶分別設置口令,否則將使用同一個管理口令。

Oracle數據庫部署

11、 創建產品清單,將清單目錄修改爲/opt/oracle/oralnventory,以便oracle用戶有權限寫入oracle數據庫的清單信息。

Oracle數據庫部署

12.先決條件檢查及概要,出現下面的程序包狀態失敗,因爲這些包是32位的包,而我們的系統是64位的,所以不用理會,點擊“全部忽略”。然後點擊“下一步”
Oracle數據庫部署

Oracle數據庫部署

可以保存響應文件,以後安裝oracle時可以使用這個腳本執行安裝,就不用配置這麼多了。

13.安裝中。。。。

Oracle數據庫部署

Oracle數據庫部署

Oracle數據庫部署

Oracle數據庫部署

15、完成安裝

文件複製及相關部署結束之後,會彈出“執行配置腳本”對話框,根據提示切換爲root用戶並以此執行腳本,如下所示。

Oracle數據庫部署

Oracle數據庫部署

最後單擊“確定”按鈕,會提示訪問https://oracleserver:1158/em/,使用此地址訪問OEM(企業管理器)平臺,以便對oracle數據庫實例進行管理。

Oracle數據庫部署

三、 驗證安裝結果

1、訪問OEM平臺(OEM平臺可以進行圖像化管理oracle,比較方便)。

在瀏覽器中輸入:https://oracleserver:1158/em/,輸入用戶名:sys,密碼pwd123,連接身份選擇SYSDBA


Oracle數據庫部署

Oracle數據庫部署

2、 使用sqlplus命令行訪問oracle數據庫

在命令行界面中輸入:sqlplus  sys/pwd123 AS SYSDBA

Oracle數據庫部署
或者:
Oracle數據庫部署

1)執行HELP INDEX命令查看所有可以使用的命令

Oracle數據庫部署

2)執行SHOW USER可以查看當前登錄的用戶


Oracle數據庫部署


四、 配置oracleOEM隨機啓動

完成oracle11g數據庫的安裝後,相關服務器會自動啓用,但並不表示下次開機後oracle服務器仍然可用。下面將介紹oracle的基本服務組件,以及如何編寫服務腳本來控制oracle數據庫系統的自動運行。

根據上面的安裝過程,oracle11g的數據庫軟件將安裝在變量ORACLE_HOME所北定的位置。例如/opt/oracle/product/11.2.0/dbhome_1/,而各種服務器組件程序(也包括sqlplus命令)正是位於其中的bin子目錄下。

Oracle11g數據庫的基本服務組件如下所述:(注:oracle服務組件最好以oracle用戶身份運行如:su - oracle

lsnrctl:監聽器程序,用來提供數據庫訪問,默認監聽TCP 1521端口。

dbstartdbshut:數據庫控制程序,用來啓動、停止數據庫實例。

emctl:管理器控制工具,用來控制OEM平臺的開啓與關閉,OEM平臺通過1158端口提供HTTPS訪問,5520端口提供TCP訪問。

爲了方便執行oracle11g的服務組件程序,建議對所有用戶的環境配置作進一步的優化調整、補充PATH路徑、oracle終端類型等變量設置。除此以外,還應該修改/etc/oratab配置文件,以便運行dbstart時自動啓用數據庫實例。

 

1、修改/etc/oratab,修改內容如下:

vim /etc/oratab

orcl:/opt/oracle/product/11.2.0/dbhome_1:Y(N改爲Y)

 

2、修改/etc/rc.local文件,在文件末尾增加如下:

su - oracle -c 'dbstart'
su - oracle -c 'lsnrctl start'

Oracle數據庫部署

Oracle數據庫部署

3建立oracle服務的啓動腳本:(可以不做)

雖然通過各種服務組件程序能夠啓動、停止整個oracle11g數據庫系統,但顯然還不夠方便,在RHEL6服務器中,更好的做法是將相關操作編寫爲服務腳本,交給chkconfig工具來管理,從而實現隨系統開、關機自動啓動、停止oracle數據庫。

vi /etc/init.d/oracle ,輸入如下內容:

Oracle數據庫部署

太多了,大家不用看,我在windows上面編寫好了,通過WinSCP軟件直接上傳到服務器的/home/oralce

Oracle數據庫部署

拷貝到/etc/init.d下,並設置權限。

Oracle數據庫部署

給腳本設置權限並添加爲系統服務

Oracle數據庫部署添加好oracle服務後,就可以通過腳本的startstopstatusrestart參數來控制oracle數據庫的啓動、停止、查看狀態、重啓了。

五、常見系統控制命令

1、執行”lsnrctl start”命令可以啓動oracle監聽器。

2、執行”lsnrctl status”命令可以查看oracle監聽器的狀態。

3、執行”emctl stop dbconsole”命令可以關閉OEM管理控制檯。

4、執行”dbshut $ORACLE_HOME”命令可以停止數據庫實例。

5、執行”dbstart  $ORACLE_HOME”命令可以啓動數據庫實例。

 

6、使用sqlplus命令工具時,若以超級管理員sys登錄,則在”SQL>”環境中執行”STARTUP;””SHUTDOWN IMMEDIATE;”指令也可以啓用、關閉默認的數據庫實例。

六、 配置oracle命令行可以翻頁和清屏

1、下載3個包:

1IO-Tty-1.07.tar.gz

2Term-ReadLine-Gnu-1.16.tar.gz

3uniread-1.01.tar.gz

 

2、安裝

1)解壓縮

[root@oracle Desktop]# tar -xvf IO-Tty-1.07.tar.gz

[root@oracle Desktop]# tar -xvf Term-ReadLine-Gnu-1.16.tar.gz

 

[root@oracle Desktop]# tar -xvf uniread-1.01.tar.gz 

Oracle數據庫部署

2)安裝第一個包

[root@oracle Desktop]# cd IO-Tty-1.07

[root@oracle IO-Tty-1.07]# perl Makefile.PL

[root@oracle IO-Tty-1.07]# make

[root@oracle IO-Tty-1.07]# make install

 3)安裝第二個包

[root@oracle IO-Tty-1.07]# cd ../Term-ReadLine-Gnu-1.16

[root@oracle Term-ReadLine-Gnu-1.16]# perl Makefile.PL

[root@oracle Term-ReadLine-Gnu-1.16]# make

[root@oracle Term-ReadLine-Gnu-1.16]# make install

 4)安裝第三個包

[root@oracle Term-ReadLine-Gnu-1.16]# cd ../uniread-1.01

[root@oracle uniread-1.01]# perl Makefile.PL

[root@oracle uniread-1.01]# make

[root@oracle uniread-1.01]# make install

 3、登錄oracle:在命令前加 uniread

原來登錄是: sqlplus sys/123456 AS SYSDBA

現在是: uniread sqlplus sys/123456 AS SYSDBA


Oracle數據庫部署
現在就可以使用ctrl+l清屏了,還可以上下翻頁。








發佈了35 篇原創文章 · 獲贊 2 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章