Pubwin2009SQLserver數(shù)據(jù)庫修復常見問題方法_第1頁
Pubwin2009SQLserver數(shù)據(jù)庫修復常見問題方法_第2頁
Pubwin2009SQLserver數(shù)據(jù)庫修復常見問題方法_第3頁
Pubwin2009SQLserver數(shù)據(jù)庫修復常見問題方法_第4頁
Pubwin2009SQLserver數(shù)據(jù)庫修復常見問題方法_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、 Pubwin2009SQLServer數(shù)據(jù)庫修復常見問題方法目錄Pubwin2009SQLServer數(shù)據(jù)庫修復常見問題方法1一、 修復一致性錯誤和分配錯誤1二、 用自動備份文件(local_db.DBBak)恢復local數(shù)據(jù)庫2三、修復置疑的數(shù)據(jù)庫9四、最大限度導出會員22五、local數(shù)據(jù)庫文件和自動備份文件都損壞或丟失23六、 合并會員表24七Pubwin2009各個表的作用331、 修復一致性錯誤和分配錯誤 數(shù)據(jù)庫的基本信息:Pubwin2009的數(shù)據(jù)庫文件有4個(路徑為:HintsoftPubwinServerdatabase 下的“l(fā)ocal_Data.MDF”和“l(fā)ocal_

2、log.LDF”“eventDB_Data.MDF”和“eventDB_log.LDF”; 其中eventDB數(shù)據(jù)庫專門存放會員事件記錄和部分省市的實名ID卡庫,local數(shù)據(jù)庫存放除eventDB數(shù)據(jù)庫以外的全部數(shù)據(jù)(包括會員數(shù)據(jù)、各項計費相關設置、各項報表數(shù)據(jù)、各項歷史記錄數(shù)據(jù))注意:在對數(shù)據(jù)庫做任何操作前請一定注意備份數(shù)據(jù)庫。Pubwin2009默認會間隔37分鐘自動進行差異備份local數(shù)據(jù)庫,自動備份文件其路徑為 :HintsoftPubwinServerappServserverwebappsNetCafebackuplongtermdata下“l(fā)ocal_db.DBBak”),用

3、此文件恢復會丟失最近37分鐘的全部記錄。修復數(shù)據(jù)庫步驟:在數(shù)據(jù)庫損壞時候,優(yōu)先考慮使用自動備份文件來恢復local數(shù)據(jù)庫,恢復方法本文檔下面會談到,不能恢復時再用修復置疑的方法處理,用置疑方法不能導出完整會員表時,可以嘗試用最大限度導出會員的工具(方法如下)。 1、開始檢查local數(shù)據(jù)庫是否發(fā)生一致性錯誤或分配錯誤:并把Pubwin2009服務停止,只啟動SQLSERVER服務;進入CMD。輸入osql -U netcafe P 數(shù)據(jù)庫密碼 1>use local 2>go1>dbcc checkdb2>go2、發(fā)現(xiàn)錯誤后我們要開始修復, 所使用語句下:(1)把數(shù)據(jù)庫

4、置為單用戶模式 sp_dboption'local','single user', 'true'go(2)修復數(shù)據(jù)庫 DBCC checkdb('local',REPAIR_ALLOW_DATA_LOSS) go如果DBCC checkdb('local',REPAIR_A LLOW_DATA_LOSS)語句執(zhí)行一次不行,可以在多執(zhí)行幾次直到?jīng)]有再提示數(shù)據(jù)庫有錯誤為止.(3)設置為多用戶模式 sp_dboption 'local', 'single user', 'false

5、'(4)如有必要可以收縮(壓縮)下數(shù)據(jù)庫:DBCC SHRINKDATABASE (local, 0) go3、 然后停止SQLSERVER,重新啟動Pubwin2009服務控制器就可以了。2、 用自動備份文件(local_db.DBBak)恢復local數(shù)據(jù)庫1、新建一個全新的local數(shù)據(jù)庫:點確定完成新建空庫,可以把新建的空庫備份,方便以后使用。首先要新建個空的local數(shù)據(jù)庫(方法同上),然后在local上右鍵->所有任務->還原數(shù)據(jù)庫在下面對話框上選從設備,點選擇設備。點添加瀏覽到自動備份文件所在目錄,選擇local_db.DBBak點確定,回到還原數(shù)據(jù)庫對話框,

6、點選項,選擇使數(shù)據(jù)庫不再運行,但能還原其它事務日志點確定開始還原數(shù)據(jù)庫,完成后彈出以下提示。此時local顯示為正在裝載,再點一遍還原數(shù)據(jù)庫->選從設備->選擇設備->點添加->瀏覽到自動備份文件所在目錄->選擇local_db.DBBak->點確定, 回到還原數(shù)據(jù)庫對話框打開查看內(nèi)容:選擇你需要的某個時間點將其恢復,通常為最后一個時間。這個時候把local分離出去,把local的2個文件(“l(fā)ocal_Data.MDF”和“l(fā)ocal_log.LDF”)拷貝到database 文件夾下替換,重新附加database 文件夾下的local附加到SQL,如有必

7、要可以收縮下數(shù)據(jù)庫 DBCC SHRINKDATABASE (local, 0) 這時啟動Pubwin2009服務控制器就好了。三、修復置疑的數(shù)據(jù)庫修復置疑的數(shù)據(jù)庫基本步驟:取消local置疑狀態(tài)->從相同版本的安裝包里面獲取空的數(shù)據(jù)庫附加為local2->把必要的5個表導入到空庫中->分離置疑的local 和local2數(shù)據(jù)庫->把服務端數(shù)據(jù)庫目錄HintsoftPubwinServerdatabase下的原始2個舊文件重命名->然后把local2數(shù)據(jù)庫的2個文件復制到服務端數(shù)據(jù)庫目錄HintsoftPubwinServerdatabase下->附加為lo

8、cal->啟動服務。1、什么情況下可能是數(shù)據(jù)庫發(fā)生置疑導致的?1)打開后臺提示:“server not ready yet”2)Pubwin 2009服務控制器運行時,提示發(fā)生錯誤:2、檢查數(shù)據(jù)庫是否置疑:1)啟動SQL數(shù)據(jù)庫服務:2)在運行中輸入cmd,進入到cmd命令窗口。3)輸入osql -U netcafe P 數(shù)據(jù)庫密碼 4)use local5) go6) 若local數(shù)據(jù)庫發(fā)生置疑即提示下圖,eventDB數(shù)據(jù)庫的檢查方法同上。3、 若發(fā)生置疑,即需要使用SQLManager.rar和SQL查詢分析器.rar工具,來修復置疑,下載地址:ftp:/pubwinxz:pubwi

9、nxz40/WWW/1)將SQLManager.rar解壓縮到D盤根目錄,運行Reg.Bat進行注冊一遍。注意:當打開我的電腦-管理-服務時會提示:在運行里面輸入services.msc 即可打開服務。2)運行SQL Server Enterprise Manager.MSC 打開3)連接SQL數(shù)據(jù)庫服務,編輯屬性:4) 設置登錄數(shù)據(jù)庫的賬戶:netcafe 務必勾選:總是提示輸入登錄名和密碼。5) 輸入登錄數(shù)據(jù)庫的密碼:新安裝Pubwin2009服務端時,數(shù)據(jù)庫密碼默認是pubwin以后則以在Pubwin2009 后臺Web管理平臺中,修改的數(shù)據(jù)庫密碼為準,然后點連

10、接,再點確定即可登錄數(shù)據(jù)庫,6) 登錄數(shù)據(jù)庫后,即可查看數(shù)據(jù)庫的置疑情況。7) 用SQL查詢分析器取消置疑狀態(tài):執(zhí)行isqlw.exe開始連接SQL數(shù)據(jù)庫:把以下語句粘貼到SQL查詢分析器去執(zhí)行或者按F5,USE MASTERGOSP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDEGOUPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='local'Gosp_dboption 'local', 'single user', &

11、#39;true'GoDBCC CHECKDB('local') Goupdate sysdatabases set status =28 where name='local'Gosp_configure 'allow updates', 0 reconfigure with overrideGo sp_dboption 'local', 'single user', 'false'Go如果是eventDB數(shù)據(jù)庫發(fā)生置疑,將上面的local改為eventDB即可。4、如何從Pubwin200

12、9服務端安裝包中獲?。弘p擊打開服務端安裝包目錄下的Data1.cab壓縮包文件,如圖:將兩個空的數(shù)據(jù)庫文件:local_data.mdf和local_log.ldf解壓縮到任意目錄,例如:D盤根目錄。5、 運行完此腳本后數(shù)據(jù)庫就不再是置疑狀態(tài)了,現(xiàn)在把上面從安裝包里面提取的空的數(shù)據(jù)庫附加到SQL里面;并重命名local2下面就可以開始導表了,在local上點右鍵->所有任務->導出數(shù)據(jù)->下一步:數(shù)據(jù)源選local,點擊下一步:目的選local2,點擊下一步:建議只導出必要的5個表:1、 client_pc 客戶端機型列表(需要轉換,方法如下)2、 console_clien

13、tpc_list 客戶端列表3、 Leveltype 會員等級列表(需要轉換,方法如下)4、 mem_localdiscountaccount 優(yōu)惠時間會員表5、 mem_localmemberbaseinfo 會員信息列表轉換方法:導出客戶端列表console_clientpc_list:導出會員等級列表Leveltype需要轉換:導出會員優(yōu)惠時間表,和會員信息表:然后點擊下一步、下一步、完成:6、在通常導過表或者還原過的數(shù)據(jù)庫文件比實際的要大,數(shù)據(jù)庫文件臨時空間沒有釋放,這個時候就需要收縮數(shù)據(jù)庫:注意勾選“在收縮前將頁移到文件起始位置”或者查詢分析器執(zhí)行:DBCC SHRINKDATABA

14、SE (local2, 0) 注意:local2為數(shù)據(jù)庫名稱。7、 這個時候把local和local2都分離,如圖:8、 把服務端數(shù)據(jù)庫目錄HintsoftPubwinServerdatabase下的原始2個舊文件“l(fā)ocal_Data.MDF”和“l(fā)ocal_log.LDF”)重命名,然后把local2數(shù)據(jù)庫的2個文件復制到服務端數(shù)據(jù)庫目錄HintsoftPubwinServerdatabase下,附加為local,如圖:注意:因為只導出了5個必要的表,所有的營業(yè)記錄、充值記錄、所有的價格方案和設置、當前上機的人員的信息都會丟失,不是不得已的情況下,不建議使用導表的方法。1)在數(shù)據(jù)庫能訪問的

15、情況下,可以用此語句查詢出所有用戶編號和預付款信息:select uniqueid 用戶編號,prepay/100 預付款元 from cur_useraccount Go2) 在后臺能打開,營業(yè)管理-用戶視圖能打開的情況下,因為其它原因需要導表,可以把后臺的用戶視圖截圖下,方便導表后給網(wǎng)民補錢。3) 因為當前表丟失,若啟動服務,數(shù)據(jù)庫損壞的時候已經(jīng)在客戶端上機的用戶可能會立即關機;所以啟動服務前,先請通知網(wǎng)吧做好準備工作。4) 立即重新設置價格方案、admin登錄后臺的密碼、admin登錄客戶端的密碼。到此導表完畢,可啟動Pubwin2009服務端,用admin登錄后臺,密碼為空。四、最大限

16、度導出會員在數(shù)據(jù)庫損壞不能用自動備份文件恢復,又不能完整的導出會員表的情況下,可以嘗試使用最大限度導出會員的工具導出;基本原理是因部分行損壞,導致后續(xù)行的數(shù)據(jù)不能讀取,用此工具盡量讀取已經(jīng)損壞的會員表最多的會員信息;需要從相同版本的安裝包里面獲取空的數(shù)據(jù)庫附件為local2;工具下載地址:ftp:/pubwinxz:pubwinxz40/WWW/1) 打開此工具,首先輸入訪問數(shù)據(jù)庫的密碼2) 輸入會員總數(shù),用SQLManager工具打開數(shù)據(jù)庫的時候可以查看會員表的行數(shù),也是會員總數(shù)(如下圖:),當用SQLManager工具不能打開的時候可以用語句查看會員的行數(shù):Sel

17、ect count(*) from mem_localmemberbaseinfoGo3) 輸入原庫和目標庫,即開始把local數(shù)據(jù)庫導入到local2數(shù)據(jù)庫。4) 然后把local和local2分離,把服務端數(shù)據(jù)庫目錄HintsoftPubwinServerdatabase下的原始2個舊文件“l(fā)ocal_Data.MDF”和“l(fā)ocal_log.LDF”)重命名,然后把local2數(shù)據(jù)庫的2個文件復制到服務端數(shù)據(jù)庫目錄HintsoftPubwinServerdatabase下,重新把local2附件為local。注意:此工具只導出會員基本信息,會員等級的ID相關沒有導出,注意單獨修改。五、l

18、ocal數(shù)據(jù)庫文件和自動備份文件都損壞或丟失如果有會員事件數(shù)據(jù)庫文件(“eventDB_Data.MDF”和“eventDB_log.LDF”)首先把會員事件數(shù)據(jù)庫附件到SQL server,在事件查詢里面輸入會員編號,事件類型為結賬,排序字段為時間,排序方向為降序更新時間就是最后一次的結賬時間,可以計算得出,預付款減去消費金額就是余額,這里還有積點;注意:部分版本已經(jīng)取消此顯示。6、 合并會員表以下將介紹local_B數(shù)據(jù)庫的會員表合并到local會員表;合并時如果2個數(shù)據(jù)庫的會員卡號有相同的,則將金額和積點進行合并,注意:需要是相同版本(會員表的字段數(shù)量相同)的數(shù)據(jù)庫才能合并,或者loca

19、l會員表的字段數(shù)量比local_B會員表的字段數(shù)量多也可以,否則就升級到相同版本再進行合并操作;開始合并前需要把2個網(wǎng)吧的數(shù)據(jù)庫在控制臺上全體結賬。1)附加數(shù)據(jù)庫local_B2) 用local數(shù)據(jù)庫的會員表,生成用于創(chuàng)建空會員表的腳本3)保存腳本,直接點確定4)在local數(shù)據(jù)庫中創(chuàng)建一個名稱為mem_localmemberbaseinfobak空的會員表:用查詢分析器打開剛剛保存的腳本文件,如下圖:將上圖中if、drop、Go開頭的三行刪除,數(shù)據(jù)庫選擇為local,需要創(chuàng)建的表名改為:mem_localmemberbaseinfobak,修改后如圖:點擊綠色小三角,開始執(zhí)行,完成時會提示命

20、令已成功完成:執(zhí)行完成后,刷新local數(shù)據(jù)庫,可以看見剛剛創(chuàng)建的mem_localmemberbaseinfobak會員表5) 將local_B的mem_localmemberbaseinfo導到local的mem_localmemberbaseinfobak注意選擇目標表:mem_localmemberbaseinfobak6)復制以下語句到查詢分析器,查詢有多少重復的會員:SELECT * FROM mem_localmemberbaseinfo AS A WHERE (UniqueID IN (SELECT UniqueID FROM mem_localmemberbaseinfoba

21、k AS B WHERE A.UniqueID = B.UniqueID)結果如下圖:7)將相同卡號會員的儲值、累加積分、循環(huán)積分合并:Update mem_localmemberbaseinfo set mem_localmemberbaseinfo.balance=mem_localmemberbaseinfo.balance + a.balance,mem_localmemberbaseinfo.score=mem_localmemberbaseinfo.score + a.score,mem_localmemberbaseinfo.remainscore=mem_localmember

22、baseinfo.remainscore + a.remainscore from(select balance,score,remainscore,uniqueid from mem_localmemberbaseinfobak)awhere mem_localmemberbaseinfo.uniqueid = a.uniqueid注意:以上合并的語句只能執(zhí)行一次,若多次執(zhí)行,金額將多次相加。8) 刪除mem_localmemberbaseinfobak中與mem_localmemberbaseinfo相同的卡號:delete from mem_localmemberbaseinfobak

23、where uniqueid IN (select uniqueid from mem_localmemberbaseinfo)9)將mem_localmemberbaseinfobak追加到mem_localmemberbaseinfo:update local.dbo.mem_localmemberbaseinfobak set id=id+500000;insert into mem_localmemberbaseinfo select * from mem_localmemberbaseinfobak ;注意:以上追加的語句只能執(zhí)行一次,若多次執(zhí)行,金額將多次追加。 到此local_B

24、的會員表合并到local完畢;local數(shù)據(jù)庫中的mem_localmemberbaseinfobak 會員表不會影響業(yè)務操作。如果是pubwin2007如果要導表,需要注意以下三張表的字段和字段值必須一致 同時表的個數(shù)必須一樣會員表 mem_localmemberbaseinfo當前上機表 cur_user上機使用記錄hst_usepcbiz然后導出下面五個表即可:cfg_adminaccount 控制臺帳號密碼表 (必須要轉換)cur_user 當前上機表configitem 配置表 (必須要轉換)mem_localdiscountaccount會員優(yōu)惠套餐mem_localmemberb

25、aseinfo會員信息如果是pubwin2009如果導表,可以導入下面幾張表console_clientpc_list客戶機列表client_pc客戶對象類型 (必須要轉換)leveltype會員等級(必須要轉換)mem_localdiscountaccount會員優(yōu)惠套餐mem_localmemberbaseinfo會員信息2009只是需要導這5個表。配置還不能導,需要重新設置七Pubwin2009各個表的作用1. client_config客戶機使用的相關配置(服務器ip地址,允許自助開戶,允許自助結賬,客戶機重啟后自動登錄,允許登錄口令為空,允許Admin登錄客戶機最長時間(分鐘),登錄

26、響應超時(秒))2. client_pc客戶對象類型3. client_pc_policy客戶機策略列表4. client_room包房5. client_roomlist包房對象類表6. client_section區(qū)域類型列表7. client_sectionlist區(qū)域對象列表8. communication_config與其他通訊配置列表9. console_clientpc_list客戶機列表10. consoel_config控制臺使用相關配置(開戶后自動打印憑證,結賬后自動打印賬單,啟動無人值守,開戶時必須登錄身份,開戶時核實用戶身份)11. client_dutyUser本班上

27、機人數(shù)記錄12. console_config_other-限制條件選項13. console_disrecharge充值按固定項目14. console_fixdtime固定項目15. console_fixdtime_dtl對于允許機器類型的從表16. console_limit會員操作限制選項17. console_list控制臺列表18. console_other控制臺其他配置(壞賬原因,會員沖正原因等)19. console_recharge充值固定項目20. console_timing定時默認選項21. cur_useraccount當前用戶22. cur_userdetail

28、當前用戶詳細信息,實名相關加密23. hst_cashserialyyyymm(分表)24. hst_dealrecord yyyymm(分表)25. hst_discountconsume yyyymm(分表)26. hst_presentation yyyymm(分表)27. hst_usehistory yyyymm(分表)28. hst_usepcbiz yyyymm(分表)29. layout場景試圖30. leveltype會員等級31. member_config會員高級選項32. member_scoreconfig贈送積點方式33. payinfo保持電影扣費失敗信息34. priceschema_config價格方案列表35. priceschema_limit匹配條件集合(使用ID與priceschme_config關聯(lián))36. priceschema_c

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論