新聞中心
隨著數(shù)據(jù)量的不斷增長和業(yè)務(wù)的不斷擴展,數(shù)據(jù)庫的性能優(yōu)化逐漸成為DBA和開發(fā)人員的必修課程。Oracle 10g是業(yè)界使用最廣泛的數(shù)據(jù)庫之一,本文將介紹一些Oracle 10g數(shù)據(jù)庫優(yōu)化的參數(shù)調(diào)整技巧,幫助讀者提高數(shù)據(jù)庫的性能和穩(wěn)定性。

創(chuàng)新互聯(lián)主要從事成都網(wǎng)站設(shè)計、網(wǎng)站制作、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)拜城,十年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220
1. 針對CPU負載的調(diào)整
CPU是數(shù)據(jù)庫性能優(yōu)化中最基本的環(huán)節(jié),在Oracle 10g中,最主要的CPU負載來自于解析和重復(fù)執(zhí)行SQL語句。為了優(yōu)化CPU使用率,可采取如下措施:
(1)啟用Cursor_Sharing參數(shù)
Cursor_Sharing參數(shù)可以將SQL語句中的字面量自動替換為綁定變量,這樣可以減少SQL語句的差異性,降低系統(tǒng)解析的負擔(dān)。
(2)合并相似的SQL語句
如果有大量相似的SQL語句,可以將它們合并為一個更通用的語句,減少SQL語句的數(shù)量,提高解析性能。
(3)使用位圖索引
位圖索引更大的優(yōu)點是可以將多個列的值合并為一列進行索引,減少了重復(fù)數(shù)據(jù)的存儲和查詢,提高了查詢效率,降低CPU負載。
2. 針對內(nèi)存優(yōu)化的調(diào)整
內(nèi)存是數(shù)據(jù)庫性能優(yōu)化中另一個重要的環(huán)節(jié),在Oracle 10g中,內(nèi)存主要用于緩存數(shù)據(jù)塊、保持解析器狀態(tài)和緩存SQL執(zhí)行計劃。為了優(yōu)化內(nèi)存的使用,可采取如下措施:
(1)適當(dāng)調(diào)整DB_CACHE_SIZE和SGA_TARGET參數(shù)
DB_CACHE_SIZE參數(shù)用于控制Buffer Cache的大小,SGA_TARGET參數(shù)用于控制整個SGA的大小,適當(dāng)調(diào)整這兩個參數(shù)可以提高內(nèi)存的使用效率和系統(tǒng)的性能。
(2)啟用Automatic Memory Management
Automatic Memory Management參數(shù)可以自動分配和調(diào)整SGA和PGA的大小,減少了手動調(diào)整內(nèi)存的工作量,同時保證了內(nèi)存的更優(yōu)化使用。
(3)減少PGA的使用
PGA主要用于存儲用戶會話和排序操作的數(shù)據(jù),如果排序操作使用了大量的PGA,可以嘗試采用排序區(qū)外存等方式減少PGA的使用,從而減少內(nèi)存壓力。
3. 針對IO調(diào)整的參數(shù)
IO是數(shù)據(jù)庫性能優(yōu)化中最為耗時的操作之一,特別是對于大型的數(shù)據(jù)查詢和更新。為了優(yōu)化IO的性能,可采取如下措施:
(1)調(diào)整DB_FILE_MULTIBLOCK_READ_COUNT參數(shù)
DB_FILE_MULTIBLOCK_READ_COUNT參數(shù)控制了多個物理塊一次性讀取的數(shù)量,可以適當(dāng)調(diào)整該參數(shù)的值,更大化每次IO操作的效率。
(2)啟用自動IO調(diào)度
Oracle 10g中可以啟用自動IO調(diào)度,根據(jù)磁盤IO的繁忙程度自動調(diào)整IO操作的優(yōu)先級,從而更大化IO操作的效率。
(3)啟用并行IO
并行IO參數(shù)可以使用多個IO通道同時讀寫數(shù)據(jù),從而減少了IO操作的時間和系統(tǒng)的響應(yīng)時間。
本文介紹了一些Oracle 10g數(shù)據(jù)庫優(yōu)化的參數(shù)調(diào)整技巧,有效的優(yōu)化數(shù)據(jù)庫的性能和穩(wěn)定性,提高系統(tǒng)的響應(yīng)速度和用戶的滿意度。但是,數(shù)據(jù)庫優(yōu)化并不是一次性的工作,需要不斷的調(diào)整和優(yōu)化才能達到更佳的效果,希望讀者能夠在實際工作中靈活運用這些技巧,不斷優(yōu)化數(shù)據(jù)庫的性能。
相關(guān)問題拓展閱讀:
- oracle修改processes過大導(dǎo)致DB無法重啟,但是我需要這個大點值,怎么破?
oracle修改processes過大導(dǎo)致DB無法重啟,但是我需要這個大點值,怎么破?
我們一般修改到1000~1500,就好了,再大也沒有什么用處了。
一般和你機器的內(nèi)存有關(guān):
給你copy一段:
ORACLE更大連接數(shù)問題
(:27:17)
轉(zhuǎn)載▼
標(biāo)簽:
oracle優(yōu)化
it
分類: 多少會點
oracle 10g安裝在windows位操作系統(tǒng),連接數(shù)到120個就不能連接,報ora12518
服務(wù)器IBM XSERVER,內(nèi)存:4G
oracle 數(shù)據(jù)庫配置的主要參數(shù)如下:
processesinteger
sessions integer
pga_aggregate_target big integer 350M
sga_max_sizebig integer 1256M
sga_targetbig integer 1152M
shared_pool_sizebig integer 400M
large_pool_sizebig integer 16M
數(shù)據(jù)庫配置的連接數(shù)是800個,但是現(xiàn)在當(dāng)oracle的連接數(shù)達到250個時候,其他的客戶端就無法再連接上oracle服務(wù)器了,報個錯:ORA-12518: TNS: 監(jiān)聽程序無法分發(fā)客戶機 ;
但是已經(jīng)連接上數(shù)據(jù)庫的應(yīng)用還可以正常應(yīng)用,就是其他沒連上的就再也連不上了,除非已有的連接有退出的,其他的才能再聯(lián)上,就是可連接的總數(shù)是250個;
上網(wǎng)查:說是在可以在listener.ora中加入一行: direct_handoff_ttc_=off,但是依舊不成;
這期間我嘗試著把
pga_aggregate_target 改成200或者500等,結(jié)果是一樣的;
sga_target改成800m后,結(jié)果數(shù)畝臘據(jù)庫就起不來了,提示說要不能小于1024m;
后來查到有可能是oracle 10g for win32的一個bug,上網(wǎng)下了補丁,打完補丁后的版本是:10.2.0.3);還懷疑是不是windows 2023的tcp連接數(shù)不夠,上網(wǎng)查說好像是有這毛病,下了個2023的補丁,把tcp連接數(shù)擴到了1000,結(jié)果能夠達到可以有350個并發(fā)連接,但是再多就又連不上了;
現(xiàn)在就是不太清楚究竟是什么參數(shù)配置的不合適,(不管是oracle10g的,還是windows 2023的),才會造成實際上沒有達到oracle設(shè)置的更大連接數(shù)時就不能連接了;
又后來,懷疑是不是windows 2023(32位)的問題,于是就裝了個64位的windows 2023,同樣版本的oracle 10g,裝好后就把連接數(shù)process參數(shù)配置成800,然后做連接測試,一直可以有800個session連接上來,到現(xiàn)在為止,可以大致總結(jié)迅亮滑出癥結(jié)所在了,就是我裝的這個windows 2023 server(32位)的操作系統(tǒng),在安裝oracle 10g(10.2.0.1-10.2.0.3)時有問題,連接數(shù)不能達到系統(tǒng)配置的那么大;可以采用64位的替代。但是我在想,究竟為什么windows 2023 server(32位)的操作系統(tǒng)+oracle 10g數(shù)據(jù)庫連接數(shù)會有限制,有沒有什么辦法,修改一下2023的配置或者oracle 10g的配置, 就可解決掉這個問題,
解決方案:
一、修改oracle參數(shù)
1、原有參數(shù)
#pga_aggregate_target=
#processes=500
#sessions=555
# pga_aggregate_target此參數(shù)是擴大并發(fā)連接數(shù)占用內(nèi)存鍵攔大小。
# 可調(diào)整此參數(shù),放大或縮小,同時影響并發(fā)數(shù)量。
# 公式: 約=可按照并發(fā)數(shù)量*4M
pga_aggregate_target=720M
# processes、sessions是擴大并發(fā)連接數(shù),是同時使用。
# 公式: sessions = processes *1.1 +5
processes=600
sessions=665
2、在監(jiān)聽參數(shù)文件LISTENER.ORA 文件中增加參數(shù)
direct_handoff_ttc_listener = off
3、重新啟動數(shù)據(jù)庫服務(wù)。
二、1、修改Windows系統(tǒng)中Boot.ini文件
/3GB /PAE
說明:修改操作系統(tǒng)中Boot.ini文件,可以使oracle使用更多的內(nèi)存空間。
2、修改用戶組策略中鎖定內(nèi)存頁大小權(quán)限。
參數(shù)修改完畢問題解決。
3、重啟計算機。
通橡悶過pfile啟動,然辯如陵后攜戚alter system set process=5000 scope=both; create spfile from pfile; bounce db
報錯 至少說明報什么錯誤, 你太不會提問了
……10000,你真敢設(shè)
關(guān)于oracle 10g 數(shù)據(jù)庫參數(shù)優(yōu)化的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
成都網(wǎng)站設(shè)計制作選創(chuàng)新互聯(lián),專業(yè)網(wǎng)站建設(shè)公司。
成都創(chuàng)新互聯(lián)10余年專注成都高端網(wǎng)站建設(shè)定制開發(fā)服務(wù),為客戶提供專業(yè)的成都網(wǎng)站制作,成都網(wǎng)頁設(shè)計,成都網(wǎng)站設(shè)計服務(wù);成都創(chuàng)新互聯(lián)服務(wù)內(nèi)容包含成都網(wǎng)站建設(shè),小程序開發(fā),營銷網(wǎng)站建設(shè),網(wǎng)站改版,服務(wù)器托管租用等互聯(lián)網(wǎng)服務(wù)。
網(wǎng)頁名稱:Oracle 10g數(shù)據(jù)庫優(yōu)化——參數(shù)調(diào)整技巧 (oracle 10g 數(shù)據(jù)庫參數(shù)優(yōu)化)
分享URL:http://m.fisionsoft.com.cn/article/dpeidsh.html


咨詢
建站咨詢
