SqlServer项目经验:介质集有2个介质簇,但只提供了1个。必须提供所有成员
在對(duì)數(shù)據(jù)庫(kù)備份與還原的過(guò)程中,我遇到一個(gè)問(wèn)題“介質(zhì)集有2個(gè)介質(zhì)簇,但只提供了1個(gè)。必須提供所有成員”,下面詳細(xì)的介紹一下遇到問(wèn)題的經(jīng)過(guò)與問(wèn)題解決的方法!
?
一、備份與還原遇到的問(wèn)題描述與解決方法:
????前兩天用戶(hù)測(cè)試我們做的評(píng)教系統(tǒng)小軟件,有點(diǎn)問(wèn)題我們過(guò)去看了看,想將他們的測(cè)試數(shù)據(jù)備份一下,以便我們修改軟件測(cè)試使用。
??? 我是這樣備份的,數(shù)據(jù)庫(kù)備份默認(rèn)有一個(gè)路徑:C\...,而我又添加了一個(gè)新路徑,沒(méi)將默認(rèn)路徑刪除,而是選中新路徑,我就理所當(dāng)然的認(rèn)為數(shù)據(jù)庫(kù)中的數(shù)據(jù)備份到我新加的路徑下了。
????
????
???????????今天還原數(shù)據(jù)庫(kù)時(shí),我只選擇了D盤(pán)備份文件"YZTeacherEvaluate",提示這樣一個(gè)錯(cuò)誤:還原對(duì)于服務(wù)器“192.168.24.101”失敗。? 其他信息:System.Data.SqlClient.SqlError: 介質(zhì)集有 2 個(gè)介質(zhì)簇,但只提供了 1 個(gè)。必須提供所有成員。?(Microsoft.SqlServer.Smo) 。詳情見(jiàn)圖片:
????
??????????????我想讓用戶(hù)重新給我備份一下發(fā)過(guò)來(lái),結(jié)果他操作過(guò)程中,將數(shù)據(jù)庫(kù)給刪除了,然后將C盤(pán)數(shù)據(jù)庫(kù)備份文件給我發(fā)了過(guò)來(lái),我誤以為是他重新備份的,附加一下依然提示上述錯(cuò)誤。突然想起來(lái),將這兩個(gè)文件一起還原,應(yīng)該就沒(méi)事了。
??? 接下來(lái),我重新還原數(shù)據(jù)庫(kù),將C盤(pán)和D盤(pán)備份的數(shù)據(jù)庫(kù)文件同時(shí)附加上,還原成功了,數(shù)據(jù)還在,萬(wàn)幸啊!
?????
????????????
二、數(shù)據(jù)庫(kù)備份與還原需要注意的地方:
???1.在做數(shù)據(jù)庫(kù)的備份時(shí),注意備份的“目標(biāo)”中,最好是只有一個(gè)路徑,如果多個(gè)路徑,在還原時(shí),則需要提供多個(gè)bak文件才能成功還原,否則還原失敗,并提示“介質(zhì)集有2個(gè)介質(zhì)簇,但只提供了1個(gè)。必須提供所有成員”;備份目標(biāo)只有一個(gè)路徑,備份成功后,該路徑生成一個(gè)bak文件,該文件是數(shù)據(jù)文件不包括該數(shù)據(jù)庫(kù)的結(jié)構(gòu)信息,如果在備份時(shí)“選項(xiàng)”中是選中“追加到現(xiàn)有的備份集”那么該文件并不是說(shuō)一個(gè)文件就只存了一次備份的數(shù)據(jù),而是保存著所有的備份信息,在你想還原的時(shí)候,會(huì)列出來(lái)供你選擇哪一個(gè)版本是你想還原的;如果“選項(xiàng)”選中的是“覆蓋所有現(xiàn)有的備份集”,那么就只有一份最新的了,也就是說(shuō)一旦數(shù)據(jù)發(fā)生結(jié)構(gòu)性變化時(shí),比如增加或者刪除了一個(gè)表的字段,那么很可能就還原不成功了。
?????????
?????????
???2. 還有一個(gè)注意的地方,就是數(shù)據(jù)庫(kù)備份只能是備份到本機(jī)
?? 3. 還原時(shí),有兩種方式,一種是“數(shù)據(jù)庫(kù)還原”,系統(tǒng)會(huì)在安裝目錄中找到該數(shù)據(jù)庫(kù)的那份“最新”的備份;一種是“文件”還原,也就是可以通過(guò)數(shù)據(jù)文件bak來(lái)還原;不管是通過(guò)哪種方式來(lái)還原,有可能會(huì)出現(xiàn)以下錯(cuò)誤“因?yàn)閿?shù)據(jù)庫(kù)正在使用,所以無(wú)法獲得對(duì)數(shù)據(jù)庫(kù)的獨(dú)占訪(fǎng)問(wèn)權(quán)”,解決方法:重啟數(shù)據(jù)庫(kù)服務(wù)器;
???4.以上是數(shù)據(jù)的備份還原,如果是要涉及數(shù)據(jù)庫(kù)結(jié)構(gòu)的備份,比如表結(jié)構(gòu),存儲(chǔ)過(guò)程。。。。。的備份,有兩種方法:一種就用“附加”mdf文件,這種方法當(dāng)然會(huì)附帶所有的信息,包括數(shù)據(jù),但是在拿不到mdf的情況下,比如你要復(fù)制的數(shù)據(jù)庫(kù)是別人的服務(wù)器的,而你的權(quán)限拿不到mdf的,就只能用以下這種方法,也就是另一種方法:首先對(duì)源數(shù)據(jù)庫(kù)生成腳本(任務(wù)-生成腳本)從而得到該數(shù)據(jù)庫(kù)的結(jié)構(gòu),再“導(dǎo)入數(shù)據(jù)”。
轉(zhuǎn)載于:https://www.cnblogs.com/alanjl/p/3973144.html
總結(jié)
以上是生活随笔為你收集整理的SqlServer项目经验:介质集有2个介质簇,但只提供了1个。必须提供所有成员的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【编程题目】输入一个单向链表,输出该链表
- 下一篇: SPL