下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Sql Server數(shù)據(jù)庫(kù)備份和恢復(fù)的原理 本文與您探討為什么Sql Server有完整備份、差異備份和事務(wù)日志備份三種備份方式,以及為什么數(shù)據(jù)庫(kù)又有簡(jiǎn)單模式、完整模式和大容量日志模式這三種恢復(fù)模式。本文內(nèi)容適用于2005以上所有版本的Sql Server數(shù)據(jù)庫(kù) 。單就操作過程而言,Sql Server中數(shù)據(jù)庫(kù)備份和恢復(fù)過程是相當(dāng)簡(jiǎn)單的,可以通過Management Studio的圖形界面進(jìn)行操作,也可以使用幾句T-SQL語句完成。但要明白備份恢復(fù)的整個(gè)過程,定制符合系統(tǒng)需求數(shù)據(jù)庫(kù)備份方案,卻需要知曉數(shù)據(jù)庫(kù)的 實(shí)現(xiàn)原理。備份和恢復(fù)是數(shù)據(jù)庫(kù)的核心功能。1 數(shù)據(jù)庫(kù)原理本節(jié)簡(jiǎn)要討論了Sql Serv
2、er數(shù)據(jù)庫(kù)的存儲(chǔ)的物理和邏輯結(jié)構(gòu),這是備份恢復(fù)過的理論基礎(chǔ)。1.1 為什么使用數(shù)據(jù)庫(kù)為什么要使用數(shù)據(jù)庫(kù),而不是使用一個(gè)文件,然后自己寫一些方法來保存數(shù)據(jù),那是因?yàn)槭褂脭?shù)據(jù)庫(kù)我們就不用自己去實(shí)現(xiàn)下面這些算法上非常復(fù)雜的功能:a.高效一致的結(jié)構(gòu)化數(shù)據(jù)存取方法,進(jìn)行復(fù)雜的任意條件組合嵌套的數(shù)據(jù)查詢(關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)甚至為實(shí)現(xiàn)這一功能專門設(shè)計(jì)了一種語言:SQL)b.保障數(shù)據(jù)操作的原子性和完整性c.確保在服務(wù)器斷電、網(wǎng)絡(luò)中斷、服務(wù)器崩潰、客戶端崩潰的情況下,故障恢復(fù)后數(shù)據(jù)仍然是完整的d.在服務(wù)器被完全物理摧毀的情況下,快速在新的服務(wù)器上使用遠(yuǎn)程設(shè)備上的備份將數(shù)據(jù)恢復(fù)到災(zāi)難發(fā)生之前的狀態(tài)e.隨時(shí)將數(shù)據(jù)恢
3、復(fù)到任意時(shí)刻或任意一個(gè)操作之前.a 主要是功能和性能bcde 四條都可以歸結(jié)為完整性。數(shù)據(jù)庫(kù)系統(tǒng)的核心目標(biāo)就是:在實(shí)現(xiàn)功能需求的基礎(chǔ)上,保證數(shù)據(jù)完整性和數(shù)據(jù)存取性能。1.2 Sql Server存儲(chǔ)的物理結(jié)構(gòu)和邏輯結(jié)構(gòu)1.2.1 如何實(shí)現(xiàn)完整性經(jīng)過很多理論研究和實(shí)踐,目前公認(rèn)的最有效的實(shí)現(xiàn)完整性的方法是:將數(shù)據(jù)的存儲(chǔ)分為數(shù)據(jù)和事務(wù)日志,在存取過程中使用鎖來控制并發(fā)訪問。數(shù)據(jù)是實(shí)時(shí)狀態(tài)。事務(wù)日志記錄了數(shù)據(jù)發(fā)生變化的過程,對(duì)于數(shù)據(jù)庫(kù)數(shù)據(jù)的任何一個(gè)改變,都被作為一條記錄寫在了事務(wù)日志文件中。事務(wù)是指一組操作要么全部成功要么全部不執(zhí)行。任何數(shù)據(jù)更改操作在寫入到數(shù)據(jù)文件中之前,必須先將更前后的數(shù)據(jù)寫入事
4、務(wù)日志文件中,這樣當(dāng)事務(wù)由于用戶取消、數(shù)據(jù)邏輯錯(cuò)誤或軟硬件故障中斷時(shí)能夠正確的回滾或前滾到正確的狀態(tài)。通過鎖控制多用戶對(duì)同一數(shù)據(jù)的并發(fā)訪問。這是事務(wù)系統(tǒng)最基本的原理,大多數(shù)關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)和面向?qū)ο驨oSQL數(shù)據(jù)庫(kù)系統(tǒng)都采用這種方法。Sql Server也不例外,每個(gè)Sql Server數(shù)據(jù)庫(kù)由數(shù)據(jù)文件(*.mdf)和事務(wù)日志文件(*.ldf)構(gòu)成。Sql Server包括了從行到表,從頁面到文件的各種粒度的鎖。1.2.2 如何實(shí)現(xiàn)高性能在計(jì)算機(jī)數(shù)據(jù)存取過程中,保障性能的算法最終都可以歸結(jié)為:索引和緩存。從實(shí)現(xiàn)層面到應(yīng)用層面,Sql Server都在建立管理各種索引和各種緩存。對(duì)于需要隨機(jī)存取的
5、數(shù)據(jù),分頁是最自然的索引方法,同時(shí)能夠方便的進(jìn)行緩存,實(shí)現(xiàn)高效率的隨機(jī)存取。我們所熟悉的操作系統(tǒng)內(nèi)存管理系統(tǒng)、文件管理系統(tǒng)都采用了分頁的方法。在Sql Server中,對(duì)于數(shù)據(jù)文件mdf,主要是隨機(jī)存取,因此mdf以分頁的形式進(jìn)行組織管理,每個(gè)頁面8KB。還進(jìn)一步將8個(gè)相鄰的頁組成一個(gè)擴(kuò)展,方便管理,類似Windows中的簇。mdf中保存著多種類型的數(shù)據(jù),包括表數(shù)據(jù)、索引數(shù)據(jù)和大塊數(shù)據(jù)等等。每個(gè)頁面只保存一種數(shù)據(jù)。表中的每一條記錄都保存在一個(gè)表數(shù)據(jù)頁中,記錄不能跨頁,因此任何表中記錄的最大長(zhǎng)度是略小于8KB(ntext之類的大塊列只計(jì)算引用的大小)的一個(gè)數(shù)值,略小是因?yàn)槊總€(gè)頁面需要一些空間來保
6、存頁面自身的信息(頁頭)和記錄在頁面中的存儲(chǔ)位置。在Sql Server中,對(duì)于事務(wù)日志文件ldf,主要是順序存取。在正常運(yùn)行時(shí),數(shù)據(jù)庫(kù)管理系統(tǒng)定期將日志順序?qū)懭氲絣df文件;在恢復(fù)時(shí),順序讀取ldf文 件。因此,日志文件不需要分頁,只要由一條條順序存儲(chǔ)的事務(wù)日志記錄構(gòu)成即可。日志記錄也有緩存,定期寫入到ldf文件。盡管數(shù)據(jù)庫(kù)系統(tǒng)是一個(gè)允許并發(fā)訪問的系統(tǒng),但是對(duì)事務(wù)日志的寫入是串行化的,不可以并發(fā),任何一個(gè)原子操作對(duì)應(yīng)的事務(wù)日志記錄在事務(wù)日志文件中都有其唯一的位置,也就是唯一的事務(wù)日志記錄編號(hào),這個(gè)編號(hào)是一直增大的,不會(huì)重復(fù),越新的記錄編號(hào)越大,存儲(chǔ)位置也越靠后。以上內(nèi)容總結(jié)自Sql Serv
7、er的產(chǎn)品文檔Sql Server Books Online,如有興趣可以在里面了解更詳細(xì)的內(nèi)容。這些就是備份和恢復(fù)的基礎(chǔ)原理。2 數(shù)據(jù)庫(kù)備份的實(shí)現(xiàn)如前所述,數(shù)據(jù)文件mdf保存了數(shù)據(jù)的實(shí)時(shí)狀態(tài),事務(wù)日志文件ldf記錄了數(shù)據(jù)庫(kù)中數(shù)據(jù)變化的過程。這個(gè)時(shí)候,我們要對(duì)數(shù)據(jù)庫(kù)進(jìn)行備份,自然而然就有兩個(gè)選擇:因?yàn)閙df文件中保存了數(shù)據(jù)庫(kù)中數(shù)據(jù)的實(shí)時(shí)狀態(tài),那么我們只要把mdf文件拷貝一份就實(shí)現(xiàn)了當(dāng)前時(shí)刻的數(shù)據(jù)庫(kù)備份。既然ldf文件中保存了數(shù)據(jù)庫(kù)中數(shù)據(jù)變化的整個(gè)過程,那么我們就可以把這個(gè)ldf文件備份起來,然后用這些備份的事務(wù)日志記錄重頭重建整個(gè)數(shù)據(jù)庫(kù),而且比至第一種方法,通過事務(wù)日志記錄恢復(fù)的方法可以將數(shù)據(jù)
8、庫(kù)恢復(fù)到任一時(shí)刻。實(shí)際上,Sql Server同時(shí)使用了這兩種方法。2.1 拷貝數(shù)據(jù)文件:數(shù)據(jù)備份籠統(tǒng)的說,數(shù)據(jù)備份很簡(jiǎn)單,就是拷貝mdf文件。但是如果數(shù)據(jù)庫(kù)特別大,比如幾十個(gè)G,將整個(gè)mdf文件拷貝一遍會(huì)占用大量的IO資源和磁盤空間??紤]到mdf文件內(nèi)容是分頁保存的,而且數(shù)據(jù)庫(kù)中 的數(shù)據(jù)在一定時(shí)間內(nèi)不會(huì)全部發(fā)生變化,那么我們不必每次備份都把整個(gè)mdf文件都拷貝。只需要在每個(gè)頁的頁頭中設(shè)一個(gè)bit位記錄一下自從上次備份以來, 這一頁是否有被修改過,那么,有了上次的備份,我們只需要把那些發(fā)生了變化的頁備份一下就可以。這就是Sql Server中的完整備份和差異備份。出于簡(jiǎn)化設(shè)計(jì)和簡(jiǎn)化備份恢復(fù)過程
9、的考慮,雖然Sql Server在每個(gè)完整備份后面可以進(jìn)行任意次的差異備份,但是所有的差異備份都是相對(duì)于最近一次完整備份的,而不是可能存在的上一次差異備份。很自然的,任何差異備份之前必須有一次完整備份。2.2 切割不斷變大的事務(wù)日志文件:事務(wù)日志備份事務(wù)日志文件ldf記錄了數(shù)據(jù)庫(kù)中數(shù)據(jù)變化的過程。想象一下,數(shù)據(jù)庫(kù)中表的每條記錄不停的發(fā)生變化,而事務(wù)日志要記錄變化前和變化后的數(shù)據(jù),如果一個(gè)數(shù)據(jù)庫(kù)的mdf文件有1G,那么它的ldf文件呢,非常有可能是幾個(gè)G。對(duì)于頻繁發(fā)生數(shù)據(jù)修改的數(shù)據(jù)庫(kù),事務(wù)日志文件ldf的增長(zhǎng)是非??斓?,到最后,比如若干年后,ldf文件很有可能是mdf文件的幾百倍大。問題就出來了
10、,記錄數(shù)據(jù)變化過程的文件將占居整個(gè)系統(tǒng)的絕大多數(shù)存儲(chǔ)空間,但是,卻用不到,因?yàn)槲覀冋嬲l繁訪問的是存儲(chǔ)當(dāng)前數(shù)據(jù)的mdf文件。這個(gè)時(shí)候,就要想辦法定期的將ldf中暫時(shí)用不到的很久以前的日志記錄轉(zhuǎn)移到其它存儲(chǔ)設(shè)備上。這里要插一點(diǎn),盡管現(xiàn)在的計(jì)算和存儲(chǔ)資源相對(duì)很廉價(jià)了,但是,在數(shù)據(jù)庫(kù)服務(wù)器上,計(jì)算和存儲(chǔ)都是相當(dāng)昂貴的資源,原因有以下幾點(diǎn):現(xiàn)有關(guān)系數(shù)據(jù)系統(tǒng)多數(shù)不是分布式的,也就是單臺(tái)服務(wù)器必須足夠強(qiáng)大,一臺(tái)4路的服務(wù)器成本遠(yuǎn)高于兩臺(tái)2路的服務(wù)器,更多路的就屬于中大機(jī)了,成本更高。用于存放數(shù)據(jù)庫(kù)文件的存儲(chǔ)往往采用的是SLC SSD之類昂貴的高性能服務(wù)器硬盤,而備份存儲(chǔ)就可以使用廉價(jià)的近線硬盤甚至磁帶機(jī)。
11、數(shù)據(jù)庫(kù)系統(tǒng)的軟件授權(quán)都是按CPU甚至按核來的,因此數(shù)據(jù)庫(kù)服務(wù)器上每個(gè)CPU、每個(gè)IO,每個(gè)存儲(chǔ)的成本不只是其硬件自身,還附帶了相對(duì)硬件更加昂貴的軟件授權(quán)。因此,將數(shù)據(jù)庫(kù)服務(wù)器上大量存儲(chǔ)用在存放基本不用的ldf文件在成本上是不能被接受的。到這里,你會(huì)明白,對(duì)于ldf文件,備份已經(jīng)不只是為了防止服務(wù)器上ldf文件意外損壞才備份了,也是為了減小ldf的大小。這樣,Sql Server中的事務(wù)日志備份就應(yīng)運(yùn)而生,而且一箭雙雕。在Sql server中,事務(wù)日志備份將ldf文件中所有已經(jīng)提交的事務(wù)的日志記錄備份出來,將其占用的ldf文件空間置為可用。ldf本身分成很多邏輯段,事務(wù)日志記錄在邏輯段間循環(huán)存
12、放,并可以根據(jù)需要擴(kuò)大或收縮ldf文件。關(guān)于ldf的格式的詳細(xì)描述都可以在Books Online中找到。2.3 恢復(fù)模式或許你會(huì)說,過一定時(shí)間的事務(wù)日志我不要了,覆蓋就好,確實(shí)有這種需求的存在。但是同時(shí),對(duì)于更多的生產(chǎn)用戶,系統(tǒng)完整的歷史日志是必須的,比如金融、國(guó)防以及大多數(shù)中大企業(yè)。作為一個(gè)通用的產(chǎn)品,SqlServer考慮到了這兩個(gè)方向的需求。Sql Server提供了一種設(shè)置,稱為恢復(fù)模式來滿足這些不同的應(yīng)用需求,包括三種:簡(jiǎn)單模式:就是不需要?dú)v史事務(wù)日志記錄的模式,所有成功提交的事務(wù)的日志記錄都被標(biāo)記為可覆蓋,該模式下的數(shù)據(jù) 庫(kù)不能進(jìn)行事務(wù)日志備份,只能進(jìn)行完整備份和差異備份。那么,
13、這個(gè)時(shí)候可以不要ldf了嗎?不可以,盡管不需要?dú)v史的事務(wù)日志記錄,但是事務(wù)操作的完整性 還是要保證的,這個(gè)時(shí)候ldf的作用主要就是實(shí)現(xiàn)事務(wù)。很明顯的,除非數(shù)據(jù)庫(kù)執(zhí)行過的某一個(gè)事務(wù)中包含了數(shù)量巨大的操作,否則,在簡(jiǎn)單模式下,ldf文件會(huì)一直保持很小,因?yàn)樗灰艽娣诺孟乱粋€(gè)事務(wù)中的所有操作的事務(wù)日志記錄就可以了。完整模式:(請(qǐng)不要和完整備份中的完整混淆,兩者描述的是完全不同的東西)這一模式就是前面一直在描述的要記錄 所有已提交的歷史事務(wù)日志記錄的模式,這也是大多數(shù)系統(tǒng)應(yīng)用的模式。在這種模式下,ldf會(huì)隨著數(shù)據(jù)庫(kù)的運(yùn)行不斷增大。在該模式下,可以進(jìn)行完整備份、差 異備份和事務(wù)日志備份三種備份。在故障
14、發(fā)生時(shí),可能還需要進(jìn)行日志尾部備份,就是將最近一次事務(wù)日志備份之后到發(fā)生故障時(shí)刻的日志備份出來,以進(jìn)行恢復(fù)。大容量日志模式:這是完整模式下的一種可切換的模式。就是在完整模式下,如果要進(jìn)行大量數(shù)據(jù)的批量操作,比如插 入,可以切換到大容量日志模式,這時(shí)ldf只記錄整個(gè)批量操作的結(jié)果,而不記錄每個(gè)操作,可以減少不必要的ldf文件占用。當(dāng)然恢復(fù)的時(shí)候,只能恢復(fù)整個(gè) 批量操作,不能恢復(fù)到其中任意一個(gè)操作。應(yīng)該只在需要批量操作的時(shí)候短暫的使用這一模式。2.4 混合使用數(shù)據(jù)備份和事務(wù)日志備份概括來說:數(shù)據(jù)備份有完整備份和差異備份兩種,事務(wù)日志備份就本身一種。對(duì)于恢復(fù)模式為簡(jiǎn)單模式的數(shù)據(jù)庫(kù),只能進(jìn)行數(shù)據(jù)備份,
15、不能進(jìn)行事務(wù)日志備份,數(shù)據(jù)庫(kù)發(fā)生故障時(shí)只能恢復(fù)到備份時(shí)刻,備份時(shí)刻到發(fā)生故障間的數(shù)據(jù)將丟失。這里要講的是完整模式,這也是數(shù)據(jù)庫(kù)主要使用的模式。理論上,有了事務(wù)日志,不需要數(shù)據(jù)備份也可以,因?yàn)槲覀兛梢詮念^恢復(fù)嘛。但是有一個(gè)問題,那就是性能問題,從事務(wù)日志恢復(fù)數(shù)據(jù)相當(dāng)于把數(shù)據(jù)庫(kù)創(chuàng)建以 來所有的操作重新執(zhí)行一遍,這將會(huì)消耗大量時(shí)間,對(duì)于運(yùn)行很久的數(shù)據(jù)庫(kù),這個(gè)時(shí)間可能會(huì)以天甚至月計(jì),這明顯是不能接受的。銀行數(shù)據(jù)庫(kù)崩潰了,花幾天去恢 復(fù),若不是天朝的估計(jì)得倒閉。這個(gè)時(shí)候,數(shù)據(jù)備份就有用了,對(duì)于完整備份,數(shù)據(jù)恢復(fù)就是簡(jiǎn)單的文件拷貝,分分鐘鐘完成;對(duì)于差異備份,先進(jìn)行最近一次完整備份的恢復(fù),再執(zhí)行差異恢復(fù),
16、只是頁的拷貝覆蓋,也是很快的。這樣我們可以定期進(jìn)行完整備份,比如每天凌晨0點(diǎn)執(zhí)行一次完整備份,因?yàn)橥暾麄浞莓吘箍截惲苏麄€(gè)數(shù)據(jù)庫(kù),因此最好在業(yè)務(wù)不繁忙時(shí)進(jìn)行,然后每6個(gè)小 時(shí)進(jìn)行一次差異備份,每隔20分鐘進(jìn)行一次日志備份,日志備份是很快的,因?yàn)轭l繁備份使得需要備份的日志一般都不大,而且日志文件本身是順序訪問文件,已 提交的事務(wù)日志記錄都是只讀的,不會(huì)有寫操作,不涉及同步的問題,適合于頻繁備份操作。這樣,當(dāng)故障發(fā)生時(shí),如果可能,先將日志的結(jié)尾進(jìn)行備份。我們就可以先恢復(fù)最近一次完整備份,再恢復(fù)最近一次差異備份,然后再將跨越差異備份以及差異備份之后的所有事務(wù)日志備份連同結(jié)尾備份依次進(jìn)行恢復(fù),將數(shù)據(jù)庫(kù)在可接受的時(shí)間內(nèi)完美恢復(fù)到發(fā)生故障的時(shí)刻。通過以上分析我們也可以得知:數(shù)據(jù)備份中,差異備份依賴于前一次完整備份,而各個(gè)完整備份之間沒有任何依賴關(guān)系。對(duì)于事務(wù)日志備份,除了在事務(wù)日志備份之前必須有一次完整備份之外(這主要是為從簡(jiǎn)單模式轉(zhuǎn)到完整模式的數(shù)據(jù)庫(kù)設(shè)計(jì)的),事務(wù)日志備份與數(shù)據(jù)備份完全獨(dú)立,兩者各進(jìn)行各的。每個(gè)數(shù)據(jù)備份中記錄了最后提交的事務(wù)日志記錄的編號(hào),假設(shè)為N,在數(shù)據(jù)備份恢復(fù)完成后,接下來的事務(wù)日志備份恢復(fù)時(shí),第一個(gè)事務(wù)日志備份只需要選擇 包含了編號(hào)為N+1的事務(wù)日志記錄的備份文件就可以,然后依次選擇下一個(gè)事務(wù)日志備份文件,直到恢復(fù)到需要的狀態(tài)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- Module2 Unit1 Whats your name(說課稿)-2024-2025學(xué)年外研版(一起)英語一年級(jí)上冊(cè)
- 2《吃水不忘挖井人》(說課稿)-2024-2025學(xué)年統(tǒng)編版(2024)語文一年級(jí)下冊(cè)
- 15《搭船的鳥》說課稿-2024-2025學(xué)年統(tǒng)編版語文三年級(jí)上冊(cè)
- 2023八年級(jí)數(shù)學(xué)上冊(cè) 第三章 位置與坐標(biāo)2 平面直角坐標(biāo)系第3課時(shí) 建立適當(dāng)?shù)钠矫嬷苯亲鴺?biāo)系求點(diǎn)的坐標(biāo)說課稿 (新版)北師大版
- 15堅(jiān)持才會(huì)有收獲(說課稿)-部編版道德與法治二年級(jí)下冊(cè)
- 2023七年級(jí)道德與法治上冊(cè) 第二單元 友誼的天空 第五課 交友的智慧 第2框 網(wǎng)上交友新時(shí)空說課稿 新人教版
- 1假期有收獲 說課稿-2023-2024學(xué)年道德與法治二年級(jí)上冊(cè) 統(tǒng)編版
- 2025外墻紙皮磚合同
- 6的乘法口訣(說課稿)-2024-2025學(xué)年人教版數(shù)學(xué)二年級(jí)上冊(cè)
- Unit 3 Fascinating Parks Discover useful structures 說課稿-2024-2025學(xué)年高中英語人教版(2019)選擇性必修第一冊(cè)
- 建材材料合作合同范例
- 2025年集體經(jīng)濟(jì)發(fā)展計(jì)劃
- 病歷書寫規(guī)范細(xì)則(2024年版)
- 2024-2025學(xué)年人教版八年級(jí)上冊(cè)地理期末測(cè)試卷(二)(含答案)
- 雙方共同買車合同范例
- 醫(yī)務(wù)從業(yè)人員行為規(guī)范培訓(xùn)
- 中小學(xué)校食品安全管理現(xiàn)狀與膳食經(jīng)費(fèi)優(yōu)化方案
- 中醫(yī)外治法課件
- 第15屆-17屆全國(guó)中學(xué)生物理競(jìng)賽預(yù)賽試卷含答案
- 道路運(yùn)輸企業(yè)主要負(fù)責(zé)人和安全生產(chǎn)管理人員安全考核題(公共部分題+專業(yè)部分題)及答案
- 外研版小學(xué)英語(三起點(diǎn))六年級(jí)上冊(cè)期末測(cè)試題及答案(共3套)
評(píng)論
0/150
提交評(píng)論