




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、.Oracle數(shù)據(jù)庫系統(tǒng)安裝及配置規(guī)范目錄1.數(shù)據(jù)庫物理設(shè)計(jì)原則51.1.數(shù)據(jù)庫環(huán)境配置原則51.1.1.操作系統(tǒng)環(huán)境51.1.2.內(nèi)存要求51.1.3.交換區(qū)設(shè)計(jì)51.1.4.其他61.2.數(shù)據(jù)庫設(shè)計(jì)原則61.2.1.數(shù)據(jù)庫SID61.2.2.數(shù)據(jù)庫全局名61.2.3.數(shù)據(jù)庫類型選擇61.2.4.數(shù)據(jù)庫連接類型選擇71.2.5.數(shù)據(jù)庫SGA配置71.2.6.數(shù)據(jù)庫字符集選擇81.2.7.數(shù)據(jù)庫其他參數(shù)配置91.2.8.數(shù)據(jù)庫控制文件配置91.2.9.數(shù)據(jù)庫日志文件配置101.2.10.數(shù)據(jù)庫回滾段配置101.2.11.數(shù)據(jù)庫臨時(shí)段表空間配置111.2.12.數(shù)據(jù)庫系統(tǒng)表空間配置111.3.數(shù)
2、據(jù)庫表空間設(shè)計(jì)原則111.3.1.表空間大小定義原則111.3.2.表空間擴(kuò)展性設(shè)計(jì)原則121.4.裸設(shè)備的使用122.數(shù)據(jù)庫邏輯設(shè)計(jì)原則132.1.命名規(guī)范132.1.1.表屬性規(guī)范132.1.2.索引142.1.3.視圖152.1.4.實(shí)體化視圖152.1.5.存儲過程152.1.6.觸發(fā)器152.1.7.函數(shù)162.1.8.數(shù)據(jù)包162.1.9.序列162.1.10.表空間162.1.11.數(shù)據(jù)文件162.1.12.普通變量162.1.13.游標(biāo)變量172.1.14.記錄型變量172.1.15.表類型變量172.1.16.數(shù)據(jù)庫鏈172.2.命名172.2.1.語言172.2.2.大小寫
3、182.2.3.單詞分隔182.2.4.保留字182.2.5.命名長度182.2.6.字段名稱182.3.數(shù)據(jù)類型182.3.1.字符型182.3.2.數(shù)字型192.3.3.日期和時(shí)間192.3.4.大字段192.3.5.唯一鍵192.4.設(shè)計(jì)202.4.1.范式202.4.2.表設(shè)計(jì)202.4.3.索引設(shè)計(jì)232.4.4.視圖設(shè)計(jì)242.4.5.包設(shè)計(jì)242.4.6.安全性設(shè)計(jì)252.5.SQL編寫262.5.1.字符類型數(shù)據(jù)262.5.2.復(fù)雜sql272.5.3.高效性272.5.4.健壯性282.5.5.安全性292.5.6.完整性303.備份恢復(fù)設(shè)計(jì)原則303.1.數(shù)據(jù)庫exp/im
4、p備份恢復(fù)303.1.1.數(shù)據(jù)庫級備份原則303.1.2.用戶級備份原則303.1.3.表級備份原則313.2.數(shù)據(jù)庫冷備份原則313.3.Rman備份恢復(fù)原則313.3.1.Catalog數(shù)據(jù)庫313.3.2.Archive Log333.3.3.全備份策略333.3.4.增量備份策略333.3.5.恢復(fù)原則333.4.備用數(shù)據(jù)庫原則343.5.一些小經(jīng)驗(yàn)343.6.系統(tǒng)調(diào)優(yōu)知識353.6.1.生成狀態(tài)報(bào)表(statspack的使用)353.6.2.sql追蹤363.6.3.內(nèi)存調(diào)整373.6.4.排序的優(yōu)化403.6.5.統(tǒng)計(jì)信息414.設(shè)計(jì)工具421. 數(shù)據(jù)庫物理設(shè)計(jì)原則1.1. 數(shù)據(jù)庫
5、環(huán)境配置原則1.1.1. 操作系統(tǒng)環(huán)境對于中小型數(shù)據(jù)庫系統(tǒng),采用linux操作系統(tǒng)比較合適,對于數(shù)據(jù)庫冗余要求負(fù)載均衡能力要求較高的系統(tǒng),可以采用Oracle10gRAC的集群數(shù)據(jù)庫的方法,集群節(jié)點(diǎn)數(shù)范圍在264個(gè)。對于大型數(shù)據(jù)庫系統(tǒng),可以采用Sun Solaris SPARC 64位小型機(jī)系統(tǒng)或HP 9000 系列小型機(jī)系統(tǒng)。RAD5 適合只讀操作的數(shù)據(jù)庫,RAD1 適合OLTP數(shù)據(jù)庫。1.1.2. 內(nèi)存要求對于linux操作系統(tǒng)下的數(shù)據(jù)庫,由于在正常情況下Oracle對SGA的管理能力不超過1.7G。所以總的物理內(nèi)存在4G以下。SGA的大小為物理內(nèi)存的50%75%。對于64位的小型系統(tǒng),O
6、racle數(shù)據(jù)庫對SGA的管理超過2G的限制,SGA設(shè)計(jì)在一個(gè)合適的范圍內(nèi):物理內(nèi)存的50%70%,當(dāng)SGA過大的時(shí)候會導(dǎo)致內(nèi)存分頁,影響系統(tǒng)性能。1.1.3. 交換區(qū)設(shè)計(jì)當(dāng)物理內(nèi)存在2G以下的情況下,交換分區(qū)swap為物理內(nèi)存的3倍,當(dāng)物理內(nèi)存2G的情況下,swap大小為物理內(nèi)存的12倍。1.1.4. 其他其他環(huán)境變量參考Oracle相關(guān)的安裝文檔和隨機(jī)文檔。1.2. 數(shù)據(jù)庫設(shè)計(jì)原則1.2.1. 數(shù)據(jù)庫SID數(shù)據(jù)庫SID是唯一標(biāo)志數(shù)據(jù)庫的符號,命名長度不能超過5個(gè)字符。對于單節(jié)點(diǎn)數(shù)據(jù)庫,以字符開頭的5個(gè)長度以內(nèi)字串作為SID的命名。對于集群數(shù)據(jù)庫,當(dāng)命名SID后,各節(jié)點(diǎn)SID自動命名為SID
7、nn,其中nn為節(jié)點(diǎn)號:1,2,,64。例如rac1、rac2、rac24。1.2.2. 數(shù)據(jù)庫全局名數(shù)據(jù)庫全局名稱:.domain1.2.3. 數(shù)據(jù)庫類型選擇對于海量數(shù)據(jù)庫系統(tǒng),采用data warehouse的類型。對于小型數(shù)據(jù)庫或OLTP類型的數(shù)據(jù)庫,采用Transaction Processing類型。1.2.4. 數(shù)據(jù)庫連接類型選擇Oracle數(shù)據(jù)庫有專用服務(wù)器連接類型和多線程服務(wù)器MTS連接類型。對于批處理服務(wù),需要專用服務(wù)器連接方式,而對于OLTP服務(wù)則MTS的連接方式比較合適。由于采用MTS后,可以通過配置網(wǎng)絡(luò)服務(wù)實(shí)現(xiàn)某些特定批處理服務(wù)采用專用服務(wù)器連接方式,所以數(shù)據(jù)庫設(shè)計(jì)時(shí)一
8、般采用MTS類型。1.2.5. 數(shù)據(jù)庫SGA配置數(shù)據(jù)庫SGA可以采用手工配置或按物理內(nèi)存比例配置,在數(shù)據(jù)庫初始設(shè)計(jì)階段采用按比例配置方式,在實(shí)際應(yīng)用中按系統(tǒng)調(diào)優(yōu)方式修改SGA。1.2.6. 數(shù)據(jù)庫字符集選擇為了使數(shù)據(jù)庫能夠正確支持多國語言,必須配置合適的數(shù)據(jù)庫字符集,采用UTF8字符集。注意:如果沒有大對象,在使用過程中進(jìn)行語言轉(zhuǎn)換沒有什么影響,具體過程如下(切記設(shè)定的字符集必須是ORACLE支持,不然不能start)SQL shutdown immediate;SQL startup mount;SQL alter system enable restricted session;SQL a
9、lter system set job_queue_processes=0;SQL alter database open;SQL alter database character set internal_use we8iso8859p1;SQL shutdown immediate;SQL startup1.2.7. 數(shù)據(jù)庫其他參數(shù)配置. DB_FILESDb_files是數(shù)據(jù)庫能夠同時(shí)打開的文件數(shù)量,默認(rèn)值是200個(gè)。當(dāng)數(shù)據(jù)庫規(guī)劃時(shí)文件數(shù)量FILES接近或超過200個(gè)時(shí)候,按以下估計(jì)值配置:DB_FILES = FILES * .2. Db_block_si
10、ze一個(gè)extent要是5個(gè)blocks的倍數(shù)為好,如:一個(gè)blocks是4096字節(jié),那一個(gè)extent就是2M、4M或8M為好。Db_block_size是數(shù)據(jù)庫最小物理單元,一旦數(shù)據(jù)庫創(chuàng)建完成,該參數(shù)無法修改,db_block_size按以下規(guī)則調(diào)整:數(shù)據(jù)倉庫類型: db_block_size盡可能大,采用8192 或 16384OLTP類型: db_block_size 用比較小的取值范圍: 2048 或 4096Blocks推薦是系統(tǒng)操作的塊倍數(shù)(裸設(shè)備塊大小是512字節(jié),NTFS是 4K,使用8K的方式在大部分系統(tǒng)上通用)。1.2.8. 數(shù)據(jù)庫控制文件配置. 控制文件
11、鏡象多個(gè)控制文件存放在不同的物理位置。. 控制文件配置控制文件中參數(shù)設(shè)置,最大的數(shù)據(jù)文件數(shù)量不能小于數(shù)據(jù)庫參數(shù)db_files。1.2.9. 數(shù)據(jù)庫日志文件配置. 日志文件大小日志文件的大小由數(shù)據(jù)庫事務(wù)處理量決定,在設(shè)計(jì)過程中,確保每20分鐘切換一個(gè)日志文件。所以對于批處理系統(tǒng),日志文件大小為幾百M(fèi) 到幾G的大小。對于OLTP系統(tǒng),日志文件大小為幾百M(fèi)以內(nèi)。. 日志文件組數(shù)量對于批處理系統(tǒng),日志文件組為510組;對于OLTP系統(tǒng),日志文件組為 35組,每組日志大小保持一致;對于集群數(shù)據(jù)庫系統(tǒng),每節(jié)點(diǎn)有各自獨(dú)立的日志組。. 日志成員數(shù)量為了
12、確保日志能夠鏡象作用,每日志組的成員為2個(gè)。1.2.10. 數(shù)據(jù)庫回滾段配置在Oracle9i數(shù)據(jù)庫中,設(shè)計(jì)Undo表空間取代以前版本的回滾段表空間。Undo 表空間大小的設(shè)計(jì)規(guī)范由以下公式計(jì)算:Undospace = UR * UPS *db_block_size+ 冗余量UR: 表示在undo中保持的最長時(shí)間數(shù)(秒),由數(shù)據(jù)庫參數(shù)UNDO_RETENTION值決定。UPS:表示在undo中,每秒產(chǎn)生的數(shù)據(jù)庫塊數(shù)量。例如:在數(shù)據(jù)庫中保留2小時(shí)的回退數(shù)據(jù),假定每小時(shí)產(chǎn)生200個(gè)數(shù)據(jù)庫塊。則Undospace = 2 * 3600 * 200 * 4K = 5.8G。1.2.11. 數(shù)據(jù)庫臨時(shí)段
13、表空間配置數(shù)據(jù)庫臨時(shí)段表空間根據(jù)實(shí)際生產(chǎn)環(huán)境情況調(diào)整其大小,表空間屬性為自動擴(kuò)展。1.2.12. 數(shù)據(jù)庫系統(tǒng)表空間配置系統(tǒng)表空間大小1G左右,除了存放數(shù)據(jù)庫數(shù)據(jù)字典的數(shù)據(jù)外,其他數(shù)據(jù)不得存儲在系統(tǒng)表空間。1.3. 數(shù)據(jù)庫表空間設(shè)計(jì)原則1.3.1. 表空間大小定義原則當(dāng)表空間大小小于操作系統(tǒng)對最大文件限制時(shí),表空間由一個(gè)文件組成。如果表空間大小大于操作系統(tǒng)對最大文件限制時(shí),該表空間由多個(gè)數(shù)據(jù)文件組成,表空間的總大小為估算為:Tablespace + sum (數(shù)據(jù)段+索引段)*150%。1.3.2. 表空間擴(kuò)展性設(shè)計(jì)原則表空間數(shù)據(jù)文件采用自動擴(kuò)展的方式,擴(kuò)展容量快大小按2的整數(shù)倍(1M、2M、4
14、M、8M、16M、32M、64M)進(jìn)行擴(kuò)展,創(chuàng)建表空間時(shí)盡量采用nologing選項(xiàng)。表空間的最大限制一般采用unlimited,除非確切知道表空間數(shù)據(jù)文件的最大使用范圍。(一般windows 位系統(tǒng)的文件最大,位的unix系統(tǒng)系統(tǒng)文件最大G,但也要注意文件格式設(shè)定的文件大?。?建議最大為2G。表空間采用local管理方式,例如: CREATE TABLESPACE TBS_USERINFODATAFILE /oradata/tbs_userinfo.dbf SIZE 8MREUSE AUTOEXTEND ON NEXT 2M MAXSIZE UNLIMITEDNOLOGGINGEXTENT
15、MANAGEMENT LOCAL AUTOALLOCATESEGMENT SPACE MANAGEMENT AUTO;CNOUG博客首頁cl5|N%H$u J1.4. 裸設(shè)備的使用一個(gè)scsi設(shè)備可以 14個(gè)分區(qū),unix操作系統(tǒng)256個(gè)分區(qū),性能比文件系統(tǒng)方式高15左右,空間大于要小于(實(shí)際分區(qū)大小減兩個(gè)ORACLE的數(shù)據(jù)塊),比如100M,大于為100000K,推薦在unix使用軟連接(ln)方式把裸設(shè)備形成文件,用加入表空間時(shí)加resue 選項(xiàng),當(dāng)然也可只接把設(shè)備加入表空間,移動裸設(shè)備使用dd命令。對于windows平臺,oracle提供軟連接工具,實(shí)現(xiàn)裸設(shè)備的使用,計(jì)算一條記錄的長度。
16、2. 數(shù)據(jù)庫邏輯設(shè)計(jì)原則2.1. 命名規(guī)范2.1.1. 表屬性規(guī)范. 表名前綴為Tbl_ 。數(shù)據(jù)表名稱必須以有特征含義的單詞或縮寫組成,中間可以用“_”分割,例如:tbl_pstn_detail。表名稱不能用雙引號包含。. 表分區(qū)名前綴為p 。分區(qū)名必須有特定含義的單詞或字串。例如 :tbl_pstn_detail 的分區(qū)p2004100101表示該分區(qū)存儲 2004100101時(shí)段的數(shù)據(jù)。. 字段名字段名稱必須用字母開頭,采用有特征含義的單詞或縮寫,不能用雙引號包含。. 主鍵名前綴為PK_。主鍵名稱應(yīng)是 前綴+表名+構(gòu)成的字段名。如果復(fù)
17、合主鍵的構(gòu)成字段較多,則只包含第一個(gè)字段。表名可以去掉前綴。. 外鍵名前綴為FK_。外鍵名稱應(yīng)是 前綴+ 外鍵表名 + 主鍵表名 + 外鍵表構(gòu)成的字段名。表名可以去掉前綴。2.1.2. 索引. 普通索引前綴為IDX_。索引名稱應(yīng)是 前綴+表名+構(gòu)成的字段名。如果復(fù)合索引的構(gòu)成字段較多,則只包含第一個(gè)字段,并添加序號。表名可以去掉前綴。. 主鍵索引前綴為IDX_PK_。索引名稱應(yīng)是 前綴+表名+構(gòu)成的主鍵字段名,在創(chuàng)建表時(shí)候用using index指定主鍵索引屬性。. 唯一索引前綴為IDX_UK_。索引名稱應(yīng)是 前綴+表名+構(gòu)成的字段名。2
18、.1.2.4. 外鍵索引前綴為IDX_FK_。索引名稱應(yīng)是 前綴+表名+構(gòu)成的外鍵字段名。. 函數(shù)索引前綴為IDX_func_。索引名稱應(yīng)是 前綴+表名+構(gòu)成的特征表達(dá)字符。. 蔟索引前綴為IDX_clu_。索引名稱應(yīng)是 前綴+表名+構(gòu)成的簇字段。2.1.3. 視圖前綴為V_。按業(yè)務(wù)操作命名視圖。2.1.4. 實(shí)體化視圖前綴為MV_。按業(yè)務(wù)操作命名實(shí)體化視圖。2.1.5. 存儲過程前綴為Proc_ 。按業(yè)務(wù)操作命名存儲過程。2.1.6. 觸發(fā)器前綴為Trig_ 。觸發(fā)器名應(yīng)是 前綴 + 表名 + 觸發(fā)器名。2.1.7. 函數(shù)前綴為Func_ 。按業(yè)務(wù)操作命名函數(shù)。2
19、.1.8. 數(shù)據(jù)包前綴為Pkg_ 。按業(yè)務(wù)操作集合命名數(shù)據(jù)包。2.1.9. 序列前綴為Seq_ 。按業(yè)務(wù)屬性命名。2.1.10. 表空間. 公用表空間前綴為Tbs_ 。 根據(jù)存儲的特性命名,例如: tbs_parameter 。. 專用表空間Tbs_nn。該表空間專門存儲指定的某一個(gè)表,或某一表的若干個(gè)分區(qū)的數(shù)據(jù)。2.1.11. 數(shù)據(jù)文件nn.dbf 。nn =1,2,3,4,等。2.1.12. 普通變量前綴為Var_ 。 存放字符、數(shù)字、日期型變量。2.1.13. 游標(biāo)變量前綴為Cur_ 。存放游標(biāo)記錄集。2.1.14. 記錄型變量前綴為Rec_ 。 存放記錄
20、型數(shù)據(jù)。2.1.15. 表類型變量前綴為Tab_ 。 存放表類型數(shù)據(jù)。2.1.16. 數(shù)據(jù)庫鏈前綴為dbl_ 。 表示分布式數(shù)據(jù)庫外部鏈接關(guān)系。2.2. 命名2.2.1. 語言命名應(yīng)該使用英文單詞,避免使用拼音,特別不應(yīng)該使用拼音簡寫。命名不允許使用中文或者特殊字符。英文單詞使用用對象本身意義相對或相近的單詞。選擇最簡單或最通用的單詞。不能使用毫不相干的單詞來命名。當(dāng)一個(gè)單詞不能表達(dá)對象含義時(shí),用詞組組合,如果組合太長時(shí),采用用簡或縮寫,縮寫要基本能表達(dá)原單詞的意義。當(dāng)出現(xiàn)對象名重名時(shí),是不同類型對象時(shí),加類型前綴或后綴以示區(qū)別。2.2.2. 大小寫名稱一律大寫,以方便不同數(shù)據(jù)庫移植,以及避免
21、程序調(diào)用問題。2.2.3. 單詞分隔命名的各單詞之間可以使用下劃線進(jìn)行分隔。2.2.4. 保留字命名不允許使用SQL保留字。2.2.5. 命名長度表名、字段名、視圖名長度應(yīng)限制在20個(gè)字符內(nèi)(含前綴)。2.2.6. 字段名稱同一個(gè)字段名在一個(gè)數(shù)據(jù)庫中只能代表一個(gè)意思。比如telephone在一個(gè)表中代表“電話號碼”的意思,在另外一個(gè)表中就不能代表“手機(jī)號碼”的意思。不同的表用于相同內(nèi)容的字段應(yīng)該采用同樣的名稱,字段類型定義。2.3. 數(shù)據(jù)類型2.3.1. 字符型固定長度的字串類型采用char,長度不固定的字串類型采用varchar。避免在長度不固定的情況下采用char類型。如果在數(shù)據(jù)遷移等出現(xiàn)
22、以上情況,則必須使用trim()函數(shù)截去字串后的空格。2.3.2. 數(shù)字型數(shù)字型字段盡量采用number類型,要注意精度。2.3.3. 日期和時(shí)間. 系統(tǒng)時(shí)間由數(shù)據(jù)庫產(chǎn)生的系統(tǒng)時(shí)間首選數(shù)據(jù)庫的日期型,如DATE類型。. 外部時(shí)間由數(shù)據(jù)導(dǎo)入或外部應(yīng)用程序產(chǎn)生的日期時(shí)間類型采用varchar類型,數(shù)據(jù)格式采用:YYYYMMDDHH24MISS。2.3.4. 大字段如無特別需要,避免使用大字段(blob,clob,long,text,image等)。2.3.5. 唯一鍵對于數(shù)字型唯一鍵值,盡可能用系列sequence產(chǎn)生。2.4. 設(shè)計(jì)2.4.1. 范式如無性能上的必須原
23、因,應(yīng)該使用關(guān)系數(shù)據(jù)庫理論,達(dá)到較高的范式,避免數(shù)據(jù)冗余,但是如果在數(shù)據(jù)量上與性能上無特別要求,考慮到實(shí)現(xiàn)的方便性可以有適當(dāng)?shù)臄?shù)據(jù)冗余,但基本上要達(dá)到3NF.如非確實(shí)必要,避免一個(gè)字段中存儲多個(gè)標(biāo)志的做法。如11101表示5個(gè)標(biāo)志的一種取值。這往往是增加復(fù)雜度,降低性能的地方。2.4.2. 表設(shè)計(jì). 邏輯段設(shè)計(jì)原則.1. Tablespace每個(gè)表在創(chuàng)建時(shí)候,必須指定所在的表空間,不要采用默認(rèn)表空間以防止表建立在系統(tǒng)表空間上導(dǎo)致性能問題。對于事務(wù)比較繁忙的數(shù)據(jù)表,必須存放在該表的專用表空間中。.2. Pctused默認(rèn)pctused導(dǎo)致數(shù)據(jù)庫物理空間利
24、用率非常低40%左右;對于update比較少或update不導(dǎo)致行增大的表,pctused可設(shè)置在6085之間;對于update能夠?qū)е滦性龃蟮谋?,update設(shè)置在4070之間。.3. Initrans對于需要并行查詢或者在RAC數(shù)據(jù)庫中需要并行處理的表,initrans設(shè)置為2的倍數(shù),否則,不設(shè)該值。.4. Storage1) Initial盡量減少表數(shù)據(jù)段的extents數(shù)量,initial的大小盡量接近數(shù)據(jù)段的大小64K,128K, ,1M,2M,4M,8M,16M ,等按2的倍數(shù)進(jìn)行圓整。例如表或分區(qū)數(shù)據(jù)段大小為28M,則initial取32M。2) Ne
25、xt表或分區(qū)擴(kuò)展extents的大小,按上述方法進(jìn)行圓整。當(dāng)表或分區(qū)數(shù)據(jù)段無法按Initial接近值進(jìn)行圓整的情況下,其大小可以按 Initial+Next進(jìn)行圓整。此時(shí),必須設(shè)置Minextents=2。例如:表或分區(qū)數(shù)據(jù)段大小為150M,則Initial=128M;Next=32M,Minextents=2。3) Minextents該參數(shù)表示表創(chuàng)建時(shí)候Extents的初始數(shù)量,一般取12。4) Pctincrease表示每個(gè)擴(kuò)展Extents的增長率,設(shè)置pctincrease=0能夠獲得較好的存儲性能。. 特殊表設(shè)計(jì)原則.1. 分區(qū)表對于數(shù)據(jù)量比較大的表,根
26、據(jù)表數(shù)據(jù)的屬性進(jìn)行分區(qū),以得到較好的性能。如果表按某些字段進(jìn)行增長,則采用按字段值范圍進(jìn)行范圍分區(qū);如果表按某個(gè)字段的幾個(gè)關(guān)鍵值進(jìn)行分布,則采用列表分區(qū);對于靜態(tài)表,則采用hash分區(qū)或列表分區(qū);在范圍分區(qū)中,如果數(shù)據(jù)按某關(guān)鍵字段均衡分布,則采用子分區(qū)的復(fù)合分區(qū)方法。.2. 聚蔟表如果某幾個(gè)靜態(tài)表關(guān)系比較密切,則可以采用聚蔟表的方法。. 完整性設(shè)計(jì)原則.1. 主鍵約束關(guān)聯(lián)表的父表要求有主健,主健字段或組合字段必須滿足非空屬性和唯一性要求。對于數(shù)據(jù)量比較大的父表,要求指定索引段。.2. 外鍵關(guān)聯(lián)對于關(guān)聯(lián)兩個(gè)表的字段,一般應(yīng)該分別建立主鍵、外
27、鍵。實(shí)際是否建立外鍵,根據(jù)對數(shù)據(jù)完整性的要求決定。為了提高性能,對于數(shù)據(jù)量比較大的標(biāo)要求對外健建立索引。對于有要求級聯(lián)刪除屬性的外鍵,必須指定on delete cascade 。.3. NULL值對于字段能否null,應(yīng)該在sql建表腳本中明確指明,不應(yīng)使用缺省。由于NULL值在參加任何運(yùn)算中,結(jié)果均為NULL。所以在應(yīng)用程序中必須利用nvl()函數(shù)把可能為NULL值得字段或變量轉(zhuǎn)換為非NULL的默認(rèn)值。例如:NVL(sale,0)。.4. Check條件對于字段有檢查性約束,要求指定check規(guī)則。.5. 觸發(fā)器觸發(fā)器是一種特殊的存儲過程,通過數(shù)據(jù)
28、表的DML操作而觸發(fā)執(zhí)行,起作用是為確保數(shù)據(jù)的完整性和一致性不被破壞而創(chuàng)建,實(shí)現(xiàn)數(shù)據(jù)的完整約束。觸發(fā)器的before或after事務(wù)屬性的選擇時(shí)候,對表操作的事務(wù)屬性必須與應(yīng)用程序事務(wù)屬性保持一致,以避免死鎖發(fā)生。在大型導(dǎo)入表中,盡量避免使用觸發(fā)器。. 注釋表、字段等應(yīng)該有中文名稱注釋,以及需要說明的內(nèi)容。2.4.3. 索引設(shè)計(jì)對于查詢中需要作為查詢條件的字段,可以考慮建立索引。最終根據(jù)性能的需要決定是否建立索引。對于復(fù)合索引,索引字段順序比較關(guān)鍵,把查詢頻率比較高的字段排在索引組合的最前面。在分區(qū)表中,盡量采用local分區(qū)索引以方便分區(qū)維護(hù)。除非時(shí)分區(qū)local索引,否則在創(chuàng)
29、建索引段時(shí)候必須指定指定索引段的tablespace、storage屬性,具體參考內(nèi)容。2.4.4. 視圖設(shè)計(jì)視圖是虛擬的數(shù)據(jù)庫表,在使用時(shí)要遵循以下原則:1) 從一個(gè)或多個(gè)庫表中查詢部分?jǐn)?shù)據(jù)項(xiàng);2) 為簡化查詢,將復(fù)雜的檢索或字查詢通過視圖實(shí)現(xiàn); 3) 提高數(shù)據(jù)的安全性,只將需要查看的數(shù)據(jù)信息顯示給權(quán)限有限的人員;4) 視圖中如果嵌套使用視圖,級數(shù)不得超過3級; 5) 由于視圖中只能固定條件或沒有條件,所以對于數(shù)據(jù)量較大或隨時(shí)間的推移逐漸增多的庫表,不宜使用視圖;可以采用實(shí)體化視圖代替;6) 除特殊需要,避免類似Select * from TableName 而沒有檢索條件的視
30、圖;7) 視圖中盡量避免出現(xiàn)數(shù)據(jù)排序的SQL語句。2.4.5. 包設(shè)計(jì)存儲過程、函數(shù)、外部游標(biāo)必須在指定的數(shù)據(jù)包對象PACKAGE中實(shí)現(xiàn)。存儲過程、函數(shù)的建立如同其它語言形式的編程過程,適合采用模塊化設(shè)計(jì)方法;當(dāng)具體算法改變時(shí),只需要修改需要存儲過程即可,不需要修改其它語言的源程序。當(dāng)和數(shù)據(jù)庫頻繁交換數(shù)據(jù)是通過存儲過程可以提高運(yùn)行速度,由于只有被授權(quán)的用戶才能執(zhí)行存儲過程,所以存儲過程有利于提高系統(tǒng)的安全性。存儲過程、函數(shù)必須檢索數(shù)據(jù)庫表記錄或數(shù)據(jù)庫其他對象,甚至修改(執(zhí)行Insert、Delete、Update、Drop、Create等操作)數(shù)據(jù)庫信息。如果某項(xiàng)功能不需要和數(shù)據(jù)庫打交道,則不
31、得通過數(shù)據(jù)庫存儲過程或函數(shù)的方式實(shí)現(xiàn)。在函數(shù)中避免采用DML或DDL語句。在數(shù)據(jù)包采用存儲過程、函數(shù)重載的方法,簡化數(shù)據(jù)包設(shè)計(jì),提高代碼效率。存儲過程、函數(shù)必須有相應(yīng)的出錯處理功能。2.4.6. 安全性設(shè)計(jì). 管理默認(rèn)用戶在生產(chǎn)環(huán)境中,必須嚴(yán)格管理sys和system用戶,必須修改其默認(rèn)密碼,禁止用該用戶建立數(shù)據(jù)庫應(yīng)用對象。刪除或鎖定數(shù)據(jù)庫測試用戶scott 。. 數(shù)據(jù)庫級用戶權(quán)限設(shè)計(jì)必須按照應(yīng)用需求,設(shè)計(jì)不同的用戶訪問權(quán)限。包括應(yīng)用系統(tǒng)管理用戶,普通用戶等,按照業(yè)務(wù)需求建立不同的應(yīng)用角色。用戶訪問另外的用戶對象時(shí),應(yīng)該通過創(chuàng)建同義詞對象synonym進(jìn)行訪問。2.
32、4.6.3. 角色與權(quán)限確定每個(gè)角色對數(shù)據(jù)庫表的操作權(quán)限,如創(chuàng)建、檢索、更新、刪除等。每個(gè)角色擁有剛好能夠完成任務(wù)的權(quán)限,不多也不少。在應(yīng)用時(shí)再為用戶分配角色,則每個(gè)用戶的權(quán)限等于他所兼角色的權(quán)限之和。. 應(yīng)用級用戶設(shè)計(jì)應(yīng)用級的用戶帳號密碼不能與數(shù)據(jù)庫相同,防止用戶直接操作數(shù)據(jù)庫。用戶只能用帳號登陸到應(yīng)用軟件,通過應(yīng)用軟件訪問數(shù)據(jù)庫,而沒有其它途徑操作數(shù)據(jù)庫。. 用戶密碼管理用戶帳號的密碼必須進(jìn)行加密處理,確保在任何地方的查詢都不會出現(xiàn)密碼的明文。2.5. SQL編寫2.5.1. 字符類型數(shù)據(jù)SQL中的字符類型數(shù)據(jù)應(yīng)該統(tǒng)一使用單引號。特別對純數(shù)字的字串,必須用單引號
33、,否則會導(dǎo)致內(nèi)部轉(zhuǎn)換而引起性能問題或索引失效問題。利用trim(),lower()等函數(shù)格式化匹配條件。2.5.2. 復(fù)雜sql對于非常復(fù)雜的sql(特別是有多層嵌套,帶子句或相關(guān)查詢的),應(yīng)該先考慮是否設(shè)計(jì)不當(dāng)引起的。對于一些復(fù)雜SQL可以考慮使用程序?qū)崿F(xiàn)。USER_TAB_COMMENTS 數(shù)據(jù)字典Comment on 可加注解2.5.3. 高效性. 避免In子句使用In 或 not In子句時(shí),特別是當(dāng)子句中有多個(gè)值時(shí),且查詢數(shù)據(jù)表數(shù)據(jù)較多時(shí),速度會明顯下降。可以采用連接查詢或外連接查詢來提高性能。Char 比 varchar 查詢時(shí)高效。在進(jìn)行查詢及建立索引時(shí),char比
34、varchar的效率要高,當(dāng)然varchar在存儲上比char要好。. 避免嵌套的Select子句這個(gè)實(shí)際上是In子句的特例。. 避免使用Select * 語句如果不是必要取出所有數(shù)據(jù),不要用*來代替,應(yīng)給出字段列表,注:不含select count(*)。. 避免不必要的排序不必要的數(shù)據(jù)排序大大的降低系統(tǒng)性能。2.5.4. 健壯性. Insert語句使用Insert語句一定要給出要插入值的字段列表,這樣即使更改了表結(jié)構(gòu)加了字段也不會影響現(xiàn)有系統(tǒng)的運(yùn)行。. Count(*)、Count(id)、count(distinct
35、id)的區(qū)別Select count(*) from testtab得到表testtab的記錄數(shù)select count(id) from testtab得到表testtab id字段非空記錄數(shù)select count(distinct id) from testtab得到表testtab id字段值非相同記錄數(shù). Not null 為字段類型性質(zhì)的約束本約束功能在后期無語法使期失效,可使用修改字段類型方式。alter table modify 字段名 類型 not nullalter table modify 字段名 類型. 外鍵值可用null的問題外鍵列如沒有明
36、確說明not null,可插入null記錄(而null是在外部表的記錄中沒有的),如無可插null記錄的想法,要對外鍵字段加not null約束。. 序列 sequence 跳號的問題sequence 因回滾,系統(tǒng)崩潰(使用cache 內(nèi)的值將認(rèn)為已用),多表引用都將使其跳號,所以不能用于為連續(xù)序號 utl_row.cast_to_row. unicn intersect minus 使用ordey by的注意事項(xiàng)以上語句進(jìn)行連表操作,而表同表的字段順序的類型相同但字段標(biāo)題名可不同,使用ordey by時(shí)后面如果是字段名,要求所有的表的字段標(biāo)題名相同,否則用字段的順
37、序號select id,name,year from user1unionselect no,name,to_number(null) year from user2order by 1,name,yearCNOUG博客首頁*AH*CYY2c3O2.5.5. 安全性無論在使用Select,還是使用破壞力極大的Update和Delete語句時(shí),一定要檢查Where條件判斷的完整性,不要在運(yùn)行時(shí)出現(xiàn)數(shù)據(jù)的重大丟失。如果不確定,最好先用Select語句帶上相同條件來驗(yàn)證一下結(jié)果集,來檢驗(yàn)條件是否正確。2.5.6. 完整性有依賴關(guān)系的表,例如主外鍵關(guān)系表,在刪除父表時(shí)必須級聯(lián)刪除其子表相應(yīng)數(shù)據(jù),或則按
38、照某種業(yè)務(wù)規(guī)則轉(zhuǎn)移該數(shù)據(jù)。9I中表中字段縮小及變類型,字段為空或表空,varchar和char長度不變可任意改,字段名和表名可字段可用 ALTER TABLE table SET UNUSED (column) 設(shè)定為不可用,注意無命令再設(shè)為可用。3. 備份恢復(fù)設(shè)計(jì)原則3.1. 數(shù)據(jù)庫exp/imp備份恢復(fù)Oracle數(shù)據(jù)庫的Exp、Imp提供了數(shù)據(jù)快速的備份和恢復(fù)手段,提供了數(shù)據(jù)庫級、用戶級和表級的數(shù)據(jù)備份恢復(fù)方式。這種方法一般作為數(shù)據(jù)庫輔助備份手段。3.1.1. 數(shù)據(jù)庫級備份原則在數(shù)據(jù)庫的數(shù)據(jù)量比較小,或數(shù)據(jù)庫初始建立的情況下采用。不適合7*24的在線生產(chǎn)環(huán)境數(shù)據(jù)庫備份。3.1.2. 用戶
39、級備份原則在用戶對象表數(shù)據(jù)容量比較小、或則用戶對象初始建立的情況下使用。3.1.3. 表級備份原則主要在以下場合采用的備份方式:參數(shù)表備份、靜態(tài)表備份、分區(qū)表的分區(qū)備份。3.2. 數(shù)據(jù)庫冷備份原則數(shù)據(jù)庫冷備份必須符合以下原則:1) 數(shù)據(jù)庫容量比較小。2) 數(shù)據(jù)庫允許關(guān)閉的情況。3.3. Rman備份恢復(fù)原則這種方式適用于7*24環(huán)境下的聯(lián)機(jī)熱備份情形。3.3.1. Catalog數(shù)據(jù)庫單獨(dú)建立備份恢復(fù)用的數(shù)據(jù)庫實(shí)例,盡可能與生產(chǎn)環(huán)境的數(shù)據(jù)庫分開,確保catalog與生產(chǎn)數(shù)據(jù)庫的網(wǎng)絡(luò)連接良好。在9I系統(tǒng)使用良好的備份策略以可,支持完全使用控制文件保存catalog信息,備份策略如下:p7Be)z
40、P:sbT0CNOUG博客首頁 Jsv,R.F%mq1abackup spfile format /data/backup/%d_SPFILE_%T_%s_%p.bak;sql alter system archive log current;backup archivelog all format /data/backup/%d_ARC_%T_%s_%p.bak delete all input;backup current controlfile format /data/backup/%d_CTL_%T_%s_%p.bak;在spfile、控制文件、數(shù)據(jù)庫全丟的情況下可通過下面的方式恢復(fù)
41、RMAN connect targetconnected to target database (not started)RMAN startupRMAN restore spfile from /data/backup/COMMDB_SPFILE_20030411_9_1.bak;SQL startupORA-00205: error in identifying controlfile, check alert log for more infoRMAN restore controlfile from d:DB92_CTL_20031113_9_1.BAK;Mout database:R
42、MAN recover database;RMAN alter database open resetlogs;CNOUG博客首頁Y*F1MGb注意:對數(shù)據(jù)庫設(shè)定控制文件保存?zhèn)浞菪畔?65天,具體語句如下。J6&h Tp5KF5I)g)h0CNOUG博客首頁Bw2l+8YRalter system set control_file_record_keep_time=365 SCOPE=BOTH;CNOUG博客首頁&V2eP;N%yr3.3.2. Archive Log設(shè)置Archive Log 的位置,確保存儲介質(zhì)有足夠的空間來保留指定時(shí)間內(nèi)archive log的總量。建設(shè)定期對RMAN進(jìn)
43、行全備份,刪除冗余歸檔日志文件。3.3.3. 全備份策略對于小容量數(shù)據(jù)庫,可以采用全備份策略。對于大容量數(shù)據(jù)庫,必須制定全備份策略方案,備份時(shí)對archive log進(jìn)行轉(zhuǎn)儲,同時(shí)冷備份catalog 數(shù)據(jù)庫。3.3.4. 增量備份策略對于大容量數(shù)據(jù)庫,必須制定增量備份、累積備份和全備份的周期,備份時(shí)對archive log進(jìn)行轉(zhuǎn)儲,同時(shí)冷備份catalog 數(shù)據(jù)庫。3.3.5. 恢復(fù)原則采用Rman腳本進(jìn)行數(shù)據(jù)庫恢復(fù)。數(shù)據(jù)庫恢復(fù)有以下幾種:. 局部恢復(fù)主要用于恢復(fù)表空間、數(shù)據(jù)文件,一般不影響數(shù)據(jù)庫其他操作。. 完全恢復(fù)數(shù)據(jù)庫恢復(fù)到故障點(diǎn),由catalog當(dāng)前數(shù)據(jù)庫
44、決定。. 不完全恢復(fù)恢復(fù)到數(shù)據(jù)庫的某一時(shí)間點(diǎn)或備份點(diǎn)。恢復(fù)catalog數(shù)據(jù)庫。恢復(fù)數(shù)據(jù)庫control file ?;謴?fù)到數(shù)據(jù)庫某一時(shí)間點(diǎn)。重設(shè)日志序列。3.4. 備用數(shù)據(jù)庫原則數(shù)據(jù)庫系統(tǒng)在以下情況下可以考慮采用備用數(shù)據(jù)庫data guard原則:數(shù)據(jù)庫容量適中。數(shù)據(jù)庫嚴(yán)格要求7*24不間斷,或間斷時(shí)間要求控制在最小范圍內(nèi)。數(shù)據(jù)庫要求有異地備份冗余。3.5. 一些小經(jīng)驗(yàn)使用oemc的oms時(shí),首選項(xiàng)要求是節(jié)點(diǎn)和數(shù)據(jù)庫分別加入系統(tǒng)用戶(如:administrator)和數(shù)據(jù)庫DBA用戶(system)。節(jié)點(diǎn)的系統(tǒng)用戶必須有批處理作業(yè)登錄的權(quán)限。agent 不能啟動,lisnter
45、修改后都要手動刪除oracleora9networkagent 中的*.q文件。oracleadminmy9ibdump 中是用戶的出錯日志。改變表的空間的方式alter table hr.ssss move TABLESPACE example(要重建索引); 或用imp導(dǎo)入時(shí),設(shè)定導(dǎo)入用戶只有某一表空間的使用權(quán),無RESOURCE角色和UNLIMITED TABLESPACE權(quán)限。aleter system set log_checkpoint_to_alter=true,后可報(bào)警文件發(fā)現(xiàn)checkpoint的起動和結(jié)束時(shí)間。3.6. 系統(tǒng)調(diào)優(yōu)知識3.6.1. 生成狀態(tài)報(bào)表(statspa
46、ck的使用)使用(存放位置?rdbmsadmin)的文件生成報(bào)表用戶。?rdbmsadminSpcreate.sql建表。將timed_statistics設(shè)定true。使用生成的perfstat用戶登錄,執(zhí)行以下語句手動收集信息。Exex statspack.snapExec statspack.snap(I_SNAP_LEVEL=0,I_MODEFY_PRAMETER=TRUE) 0級,最少10最大。使用下面的語句生成狀態(tài)報(bào)表:?rdbmsadminSpreport.sql其他相關(guān)文件delete stats$snapshot ;清原來記錄數(shù)據(jù)?rdbmsadminSaputo.sqlse
47、lect job from user_jobs 取用戶作業(yè)號exec dbms_remove(作業(yè)號)timed_statistics=true要求?rdbmsadminspdrop.sql ;3.6.2. sql追蹤設(shè)定全部用戶跟蹤alter system set sql_trace=true;用戶級別跟蹤alter session set sql_trace=true;用戶的跟蹤文件生成在 adminpidudumppid _ora_ SPID.trc 中,spid從下面語句得到SELECT bkpr, s.username, p.spid,s.sid,s.serial# F
48、ROM v$bgprocess b, v$session s, v$process p WHERE p.addr = b.paddr(+) AND p.addr = s.paddr and s.username=user;DBA對特定用戶跟蹤exec dbms_system_set_Sql_trace_in_session(sid,serial#,true)信息從下面得到SELECT bkpr, s.username, p.spid,s.sid,s.serial#,osuser,gram FROM v$bgprocess b, v$session s, v$proces
49、s p WHERE p.addr = b.paddr(+)AND p.addr = s.paddr;/*p.spid用于sql_trace時(shí)日志編號,dbms_system.set_sql_trace_in_session(sid,erial#,true)*/用戶的跟蹤文件生成在 adminpidudump 中系統(tǒng)的跟蹤文件生成在adminpidbdumpalert_pid.logtkprof.exe將log文件生成格式化文本在av Rd(ms) 20以上說明表空間使用過用頻繁,考慮將表分開其他表空間上系統(tǒng)變量fast_start_mttr_target的值要大到不產(chǎn)生log等待,當(dāng)然也可通過
50、加log組使其不等待reao log大小應(yīng)為每30分鐘切換一次建議表空間的利用率不超80%buffer hit 要達(dá)80%以上為好3.6.3. 內(nèi)存調(diào)整一般的內(nèi)存分配原則SGA 50%(其中80% DATA BUFFER,15% SHARE POOL,5其他)PGA30%OS 20%例如:2G的WINDOWS的平臺,OS 300M,SAG 1.2G,PGA 500M內(nèi)存分配的基本單位位系統(tǒng),系統(tǒng)動態(tài)分配時(shí)總值不可大于sga_max_size通過V$SGA_DYNAMIC_FREE_MEMORY取空閑內(nèi)存空間在縮小時(shí)如果內(nèi)存空間實(shí)際在應(yīng)用中,利用率將達(dá),最后將語句出錯。V$SGASTAT可看實(shí)際
51、的使用情況Redo log buffer一般在內(nèi),可通過v$sessuon_wait看是否等,v$sysstat可也通過報(bào)警文件看是否等切換,方法可加組??赏ㄟ^nologging(數(shù)據(jù)庫也要設(shè)定支持nologging)方法減少日志文件產(chǎn)生量。java_pool 沒有設(shè)定時(shí),使用shared_pool_size. shared_pool本緩沖區(qū)用于sql語句,pl sql等的對象保存Cursor_sharingExact|Similar|force 游標(biāo)共享設(shè)定Force方式適用OLTP數(shù)據(jù)庫,Exact方式適合數(shù)據(jù)倉庫,similar為智能方式hard parses 硬SQL語句分析,每秒要底于100次,小要加大shared_poolsoft parse 軟SQL語句分析,OLTP要達(dá)90%以上,小要加大shared_pool不建議用無命名PL SQL段如果有大PL SQL(存儲過程)對象可強(qiáng)制保存于內(nèi)存,也可加大SHARED_POOL_RESERVED_SIZE,大小不可過SHARED_POOL_SIZE的50%,不然實(shí)例不能起動. db_cache本緩沖區(qū)用于數(shù)據(jù)庫數(shù)據(jù)對象保存db_cache_advice 為on,可以提出通過企業(yè)管理
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 煙臺汽車工程職業(yè)學(xué)院《水處理原理與技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 天津輕工職業(yè)技術(shù)學(xué)院《小學(xué)語文教學(xué)與研究理論教學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 山西財(cái)經(jīng)大學(xué)華商學(xué)院《游戲引擎應(yīng)用》2023-2024學(xué)年第二學(xué)期期末試卷
- 玉溪農(nóng)業(yè)職業(yè)技術(shù)學(xué)院《建筑工程CAD》2023-2024學(xué)年第二學(xué)期期末試卷
- 鎮(zhèn)江市高等??茖W(xué)?!锻ㄐ殴こ淘O(shè)計(jì)實(shí)施與網(wǎng)絡(luò)規(guī)劃優(yōu)化實(shí)踐》2023-2024學(xué)年第二學(xué)期期末試卷
- 新疆維吾爾醫(yī)學(xué)??茖W(xué)?!端\(yùn)工程經(jīng)濟(jì)》2023-2024學(xué)年第二學(xué)期期末試卷
- 遼寧輕工職業(yè)學(xué)院《沉積盆地分析》2023-2024學(xué)年第二學(xué)期期末試卷
- 浙江長征職業(yè)技術(shù)學(xué)院《比較教育學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東藥科大學(xué)《交通運(yùn)輸信息技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 德宏師范高等??茖W(xué)?!都o(jì)錄片創(chuàng)作后期剪輯》2023-2024學(xué)年第二學(xué)期期末試卷
- XX公司事故隱患內(nèi)部報(bào)告獎勵制度1
- 附件6工貿(mào)高風(fēng)險(xiǎn)企業(yè)高危領(lǐng)域較大以上安全風(fēng)險(xiǎn)管控清單
- 國際貿(mào)易公司后勤管理崗位職責(zé)
- 中國礦業(yè)大學(xué)專職輔導(dǎo)員招聘真題2024
- 骨科手術(shù)切口感染的預(yù)防與控制
- 2025年角膜接觸鏡考試題及答案
- 透析營養(yǎng)不良相關(guān)知識
- 西部計(jì)劃面試試題及答案
- 2025 ACC-AHA急性冠脈綜合征患者管理指南解讀課件
- 江蘇開放大學(xué)2025年春大學(xué)英語B【2】
- 綠化工程施工專項(xiàng)施工方案
評論
0/150
提交評論