更新時(shí)間:2020-04-21 13:09:16 來源:動(dòng)力節(jié)點(diǎn) 瀏覽2081次
談到數(shù)據(jù)庫的性能優(yōu)化,這無疑是一個(gè)老生常談的話題了。首先我們可以來看看影響數(shù)據(jù)庫性能的因素,不外乎就是硬件、服務(wù)器系統(tǒng)、數(shù)據(jù)結(jié)構(gòu)和SQL語句等等方面。下面我們來逐一針對這些可以進(jìn)行優(yōu)化的地方,詳細(xì)分析一下具體的優(yōu)化策略,感興趣的朋友趕緊看下去吧!
優(yōu)化策略一:調(diào)整硬盤I/O
這一步是在信息系統(tǒng)開發(fā)之前完成的。數(shù)據(jù)庫管理員可以將組成同一個(gè)表空間的數(shù)據(jù)文件放在不同的硬盤上,做到硬盤之間I/O負(fù)載均衡。
優(yōu)化策略二:建立索引
減少數(shù)據(jù)訪問,創(chuàng)建并使用正確的索引。數(shù)據(jù)庫索引的原理非常簡單,但在復(fù)雜的表中真正能正確使用索引的人很少,即使是專業(yè)的DBA也不一定能完全做到最優(yōu)。索引會(huì)大大增加表記錄的DML開銷,正確的索引可以讓性能提升100,1000倍以上,不合理的索引也可能會(huì)讓性能下降100倍,因此在一個(gè)表中創(chuàng)建什么樣的索引需要平衡各種業(yè)務(wù)需求。數(shù)據(jù)庫優(yōu)化第一步就是建立合理的索引,這也是最初級的優(yōu)化,也是DBA常用的優(yōu)化方案
優(yōu)化策略三:調(diào)整數(shù)據(jù)庫SQL語句
應(yīng)用程序的執(zhí)行最終將歸結(jié)為數(shù)據(jù)庫中的SQL語句執(zhí)行,因此SQL語句的執(zhí)行效率最終決定了ORACLE數(shù)據(jù)庫的性能。ORACLE公司推薦使用ORACLE語句優(yōu)化器(OracleOptimizer)和行鎖管理器(row-levelmanager)來調(diào)整優(yōu)化SQL語句。
優(yōu)化策略四:考慮應(yīng)用程序結(jié)構(gòu)設(shè)計(jì)
這一部分也是在開發(fā)信息系統(tǒng)之前完成,程序員在這一步需要考慮應(yīng)用程序使用什么樣的體系結(jié)構(gòu),是使用傳統(tǒng)的Client/Server兩層體系結(jié)構(gòu),還是使用Browser/Web/Database的三層體系結(jié)構(gòu)。不同的應(yīng)用程序體系結(jié)構(gòu)要求的數(shù)據(jù)庫資源是不同的。
優(yōu)化策略五:考慮數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)
這一部分在開發(fā)信息系統(tǒng)之前完成,程序員需要考慮是否使用ORACLE數(shù)據(jù)庫的分區(qū)功能,對于經(jīng)常訪問的數(shù)據(jù)庫表是否需要建立索引等。
優(yōu)化策略六:做好服務(wù)器內(nèi)存分配
減少數(shù)據(jù)庫服務(wù)器CPU運(yùn)算,使用綁定變量,并且合理使用排序,減少比較操作,利用更多的資源。內(nèi)存分配是在信息系統(tǒng)運(yùn)行過程中優(yōu)化配置的,數(shù)據(jù)庫管理員可以根據(jù)數(shù)據(jù)庫運(yùn)行狀況調(diào)整數(shù)據(jù)庫系統(tǒng)全局區(qū)的數(shù)據(jù)緩沖區(qū)、日志緩沖區(qū)和共享池的大小;還可以調(diào)整程序全局區(qū)的大小。需要注意的是,SGA區(qū)不是越大越好,SGA區(qū)過大會(huì)占用操作系統(tǒng)使用的內(nèi)存而引起虛擬內(nèi)存的頁面交換,這樣反而會(huì)降低系統(tǒng)。
優(yōu)化策略七:調(diào)整操作系統(tǒng)參數(shù)
例如:運(yùn)行在UNIX操作系統(tǒng)上的ORACLE數(shù)據(jù)庫,可以調(diào)整UNIX數(shù)據(jù)緩沖池的大小,每個(gè)進(jìn)程所能使用的內(nèi)存大小等參數(shù)。
以上就是動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對“Java數(shù)據(jù)庫視頻教程:數(shù)據(jù)庫性能優(yōu)化”的內(nèi)容進(jìn)行的回答,希望對大家有所幫助,如有疑問,請?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。
相關(guān)閱讀
初級 202925
初級 203221
初級 202629
初級 203743