mysql 日志丢失_失而复得数据库日志文件丢失后的恢复
前幾天聽英語用到虛擬光驅裝resseta stone ,沒想到各種不順,把我的本本給整癱瘓了。后來重整旗鼓,裝了云端,總算是把它搞定了,由于癱瘓來的很突然,所以我的一些數據不小心丟了一些。我新建的數據庫日志文件就悲催的丟啦。其實新建一個數據庫完全可以,只
前幾天聽英語用到虛擬光驅裝resseta stone ,沒想到各種不順,把我的本本給整癱瘓了。后來重整旗鼓,裝了云端,總算是把它搞定了,由于癱瘓來的很突然,所以我的一些數據不小心丟了一些。我新建的數據庫日志文件就悲催的丟啦。其實新建一個數據庫完全可以,只是覺得現在碰到了,而且也不是沒有時間,可以查找一下解決方案,以備以后自己和他人遇到一些類似的情況不必再犯難。
下面來說一下恢復方法:
如果你的數據還在數據庫服務器中,請執行,一下三步
1、停止數據庫服務。
2、將需要恢復的數據庫文件復制到另外的位置,然后在SQL Server
Management Studio中刪除要恢復的數據庫。
3、啟動數據庫服務。
接下來
1、新建同名的數據庫(數據庫文件名也要相同)。
2、停止數據庫服務。
3、用備份的.mdf文件覆蓋新數據庫的同名文件。
4、啟動數據庫服務。
5、在查詢分析器中:運行如下代碼將數據庫設置為緊急狀態
alter database dbname set emergency
例如恢復的數據庫名為:MRcharge,圖如下
6、然后再查詢中輸入如下語句就可以恢復數據庫了:
use master
declare @databasename varchar(255)
set @databasename='MRcharge'
exec sp_dboption @databasename, N'single', N'true' --將恢復數據庫置為單用戶狀態
dbcc checkdb('MRcharge',REPAIR_ALLOW_DATA_LOSS)
dbcc checkdb('MRcharge',REPAIR_REBUILD)
exec sp_dboption 'MRcharge', N'single', N'false' --最后再將恢復數據庫置為多用戶狀態
注意:這種方法恢復必須保證你建立數據庫和恢復數據庫用的是統一版本,即:都是sql server 2000,或者2005,或者2008。
我曾想用sql server 2008恢復2005的數據庫,結果提示版本過低,無法打開,需要升級,
于是我在建數據庫的時候特意把兼容級別改成2005的,結果還是一樣。
跨版本恢復待求解,請指點。
本文原創發布php中文網,轉載請注明出處,感謝您的尊重!
總結
以上是生活随笔為你收集整理的mysql 日志丢失_失而复得数据库日志文件丢失后的恢复的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 社保卡怎么更改手机号
- 下一篇: python分发包_Python 分发包