以下的文章主要是對Oracle性能調整的十大要點之操作系統的優化與如何使用相關資源管理器的實際操作,如果你對Oracle性能調整的這一要點的實際應用有不解之處的話,以下的文章會給出相關的答案。
1、操作系統優化
1)概念
操作系統優化時應該考慮的因素有:內存的使用;Cpu的使用;IO級別;網絡流量。各個因素互相影響,正確的優化次序是內存、IO、CPU。
操作系統使用了虛擬內存的概念,虛擬內存使每個應用感覺自己是使用內存的唯一的應用,每個應用都看到地址從0開始的單獨的一塊內存,虛擬內存被分成4K或8K的page,操作系統通過MMU(memory management unit)將這些page與物理內存映射起來,這個映射關系通過page table控制。
Raw device是沒有文件結構或目錄結構的磁盤或磁盤分區,由於它忽略了操作系統緩存,在某些情況下可以顯著提升Oracle性能,但是在Windows NT下,由於操作系統IO操作本身不使用文件系統緩存,所以raw device不能顯示性能上的優點。
2)Guideline
CPU的最高使用率:90%;
OS/USER進程數之比:40/60;
各個CPU的負載應該大致均衡。
3)服務器安全性檢查
A、檢查UNIX系統用戶口令
檢查:/etc/passwd、/etc/shadow,UNIX密碼采用了shadow機制,安全Oracle性能高
建議:參考UNIX命令passwd,修改/etc/default/passwd文件的某些設置如MAXWEEKS、MINWEEKS、PASSLENGTH使口令修改更加合理化。
建議:定期更改UNIX系統的如下用戶口令:
root、oraprod、applprod、appprod
B、檢查 Remote Login
啟動了rlogin,服務器數據庫a、數據庫b、數據庫c,終端console1、console2、console3及T3形成相互非常信任的關系,用戶只要擁有一個服務器的超級權限就可以rlogin到.rhosts指明的任一主機而無需要口令。
建議:非常不安全,參考UNIX命令rlogin和/目錄下的文件.rhosts。在正式環境服務器和測試環境服務器之間不要建立這種遠程信任的機制。
C、檢查FTP服務
檢查可以FTP到服務器的用戶(/etc/ftpusers),注釋了root用戶,就是說用戶可以用root權限FTP到服務器上。權限太大。
建議:把這種權力取消,將/etc/ftpusers中root的注釋符號(#)去掉,在列表中添加oraprod、applprod、appprod等用戶使之不能FTP服務器。必要時(如上傳PATCH時)再打開applprod的FTP權限。
D、建議:UNIX系統管理員定期檢查/var/adm下的messages、sulog;/etc/syslog.conf 等信息。檢查是否有非法用戶登陸UNIX。
建議:與UNIX工程師探討更好的監控方式
4)數據庫與應用產品安全性檢查
A、建議:修改Oracle性能用戶根目錄下的.profile文件,修改該文件的權限為500。即使得用戶登陸時並不執行和數據庫或應用相關的環境變量,增加安全性。
B、檢查數據庫DBA權限的用戶密碼和應用系統用戶密碼:SYSTEM、APPS密碼都已經改變,SYS密碼還是初始安裝密碼Change_on_install
建議:立即修改SYS用戶密碼,定期更改APPS、SYSTEM、SYS密碼。
C、定期檢查並清除$ORACLE_HOME/admin/bdump目錄下的alert_PROD.log文件和後台進程trace文件。定期清除$Oracle_HOME/admin/udump目錄下的trc文件。
D、建議:給應用產品登陸的用戶設置口令過期限制,如口令訪問次數限制或時間(天數)限制。
建議:不要給使用應用產品的用戶共享用戶名和口令,每個用戶分配一個應用產品用戶名。
建議:對有應用系統管理員權限的用戶登記,不適合有系統管理員權限的用戶要把權限回收,統一管理。
E、定期檢查並清除與apache Server有關的log文件,目錄為:
- /u01/prodora/iAS/Apache/apache/logs/acccess_log、error_log
- /u01/prodora/iAS/apache/Jserv/logs/jserv.log、mod_JServ.log
F、定期檢查清除listener、tnsname的log文件,文件存放在:
- /u01/prodora/8.0.6/network/admin/aPPS_prod.log、
- /u01/proddb/8.1.7/network/admin/prod.log
- /u01/proddb/8.1.7/network/log/listener.log、sqlnet.log…
G、數據庫控制文件做多個鏡像,放在多個磁盤位置,提高安全性。
5)網絡安全性檢查
檢查$Oracle_HOME/dbs/initPROD.ora文件
#remote_login_passWordfile=EXCLUSIVE
設置為REMOTE_LOGIN_PASSWordFILE=NONE,不允許遠程客戶用INTERNAL方式登陸。
2、資源管理器(Resource Manager)
通過資源管理器可以管理混合工作負載,控制系統Oracle性能。數據庫資源管理器包括:
• Resource plans:包括 resource plan directives, 它指定了被分配到各個 resource consumer group的資源。
• Resource consumer groups:定義了具有類似資源使用需求的一組用戶。
• Resource plan directives:包括下列內容:為consumer groups 或 subplans 指定resource plans;在各個 consumer groups 或資源計劃的subplans 分配資源。