標籤:mysql
前提是:必須保留之前的資料庫資料
在介紹此方法之前,提醒各位最好的轉移資料的方法為:
在原來MYSQL伺服器匯出SQL檔案,然後再在新的MYSQL伺服器匯入資料。
先說下MYSQL儲存資料的原理:
MYSQL儲存資料不是按照SQLSERVER一樣(一個資料檔案,一個記錄檔)的。MYSQL建立一個資料庫時,為該資料庫在DATA檔案夾下建立一個以該資料庫名為名的檔案夾,注意,此檔案夾只是存放資料庫的表結構的,並沒把資料也存進去。資料在哪兒呢?在DATA檔案夾下面有個ibdata1,看看這個檔案的大小,你明白了吧,MYSQL把所有資料都儲存在這個檔案中。
恢複資料方法:
知道了上面的原理,恢複資料就應該知道怎麼辦了,因為我們以為MYSQL是按SQLSERVER一樣儲存資料的,所以我們直接把原來資料庫所在的檔案夾拷到DATA目錄下了,由於沒拷資料,所以MYSQL提示你資料不存在,這時再把ibdata1這個檔案拷過去,就OK了。
操作方法:
1、把原來mysql安裝目錄下的data檔案夾拷出來;
2、拷出來的data檔案夾裡,除了mysql、test子檔案夾外的子檔案夾,全部都是資料庫,如所示全部都是一個個的資料庫;
這是你就可以將你的表結構放到新的資料庫裡面了,但是,當你開啟表的時候會提示“資料表不存在”,這是因為儲存資料的ibdata1沒有導進來。
3、你將MYSQL服務關閉(如果不關閉,會提示ibata1被程式佔用,無法覆蓋),然後將以前資料庫的ibdata1替換,再重啟服務,你就可以找到表。
這個是百度到的:方法二:MYSQL通過複製DATA檔案夾內容恢複資料
1.找到Mysql的安裝目錄 bin目錄下 有個mysqld-nt.exe
2.然後運行cmd 進到Mysql的bin目錄下 打mysqld-nt install 斷行符號 服務就安裝功功了
3.然後在運行輸入 services.msc 進去把Mysql 服務重起下就可以
這樣就可以讓你的資料庫和系統還原前一模一樣。
重裝系統後,如何調用之前mysql的資料