當前位置:首頁 » 數據倉庫 » mysql資料庫刪除恢復
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

mysql資料庫刪除恢復

發布時間: 2022-04-13 03:57:33

① mysql資料庫被刪除後怎麼恢復

使用mysql中的日誌功能。 首先:將最近的二進制類型的日誌文件存成文本文件導出,命令如下:
mysqlbinlog F:/wamp/mysql-bin.000045 > F:/test.txt
其次:打開保存的txt文件,文件格式如下:

其中at 1099代表第1099個命令(姑且這么記),查詢這些命令,看看需要回復的命令在什麼地方,然後執行命令。
最後:執行回復命令,如下:
mysqlbinlog --start-position="123" --stop-position="531" F:/wamp/mysql-bin.000045 F:/test.txt | mysql -uroot -p
這樣就可以完成資料庫的回復了!!!

② mysql整個資料庫被刪除了怎麼恢復

1 找個別的機器安裝個同版本的mysql或從已安裝同版本的其他機器上(非同版本的也可以試下):
拷貝 mysql/data/mysql 目錄到你的mysql/data/ 下吧
2 試著啟動mysql服務,如果能啟動了,理論上應該丟失的只有用戶、授權等一些系統信息,不影響你的使用的數據;
如果不能啟動,看錯誤日誌,爭取啟動了。
3 趕緊把數據備份一份出來,重新把所有庫(只是你後來創建的業務相關的庫,不包括mysql庫)都刪了,重新導入一遍。理論上不這樣也可以,但只是非生產重要的環境下。
4 重新做用戶授權。

③ mysql數據表內容刪除後怎麼恢復

在解決的過程中,以下幾種嘗試:
1.如果開啟了日誌,直接mysqlbinlog 使用日誌恢復即可。
2.如果不是刪除了一個表的部分數據,而是刪除整個表,那麼可以在刪除後馬上用磁碟數據恢復軟體嘗試恢復。(因為刪除表後會有文件被刪除,而刪除表的部分數據,文件還是存在)
3.找數據恢復的公司,使用工具分析ibdata1(分析過程參考一頁一頁查看有沒有歷史記錄存在,使用ibdata1恢復數據,應該是在了解數據表結構的前提下,資料庫除ibdata1外其他數據受損不能正常使用資料庫時嘗試,而不是刪了表數據後恢復什麼的。(事實上,這個文件是存儲現有表數據的,其實也可以設置成每個表一個文件。)
4.mysql下有ib_logfile0和ib_logfile1兩個文件,其實這兩個文件里,記錄了Mysql的一些事物日誌,用於事務的前滾後滾,是Mysql自身使用的,這個文件用文本工具打開後,有很多亂碼,但卻可以查找到被刪除的少量數據的insert記錄,極少數的亂碼通過前後語句找出了原文,最終通過事物日誌恢復了刪除的文件。
註:用事物日誌恢復,需要幾個前提。
1:知道被刪除數據的大概位置,不要這邊查找,那邊又不斷有新數據插入。
2:因為有很多亂碼,適用於查找少量數據,而不是用作大量數據的恢復,浪費體力。
3:如果二進制日誌沒開,沒有備份,那麼只能用這種方法恢復了。

④ 不小心刪掉了mysql資料庫怎麼辦

mysql資料庫不小心還原了需要按照以下步驟恢復。
1、先確認mysql有沒有啟用bin日誌 ,就是看下mysql.ini(my.cnf)里的log-bin=mysql-bin, 可以 自定義一個目錄和前綴名,比如/data/log/mylog這樣。
2、然後在資料庫文件存放的data目錄就能看到mysql-bin.00000x這樣的文件,這就是二進制日誌了,可以導出成txt格式的,裡面其實就是對資料庫的各種操作sql語句。
3、導出txt文件:
e:\wamp\bin\mysql\mysql5.6.12\bin>mysqlbinlog
--database=testdatabase
e:\wamp\bin\mysql\mysql5.6.12\data\mysql-bin.000312
>
c:\\test1.txt
這是windows下的導出,linux也是類似的。
database=資料庫名
從最早的日誌還始還原
linux下可以很方便的 mysql-bin.000*
可以加參數開始時間和結束時間,就是你執行那條sql語句的時間
start-datetime="2014-12-04
11:25:56"
--stop-datetime="2014-12-04
13:23:50"

4、恢復數據:
e:\wamp\bin\mysql\mysql5.6.12\bin>mysqlbinlog
--database=yundongchao
e:\wamp\bin\mysql\mysql5.6.12\data\mysql-bin.000179
|
mysql
-u
root
-p
------------------------------------------------

⑤ mysql的數據刪除後怎麼恢復

如果你要恢復的資料庫是包含授權表的mysql資料庫,您將需要使用--skip贈款-tables選項來運行伺服器恢復整個資料庫
- 首先,。否則,伺服器會抱怨不能找到授權表。恢復表後,執行mysqladmin沖水privileges告訴伺服器裝載授權表,並用它們來啟動。資料庫目錄到其他地方的原始內容

復制。例如,您可以使用它們在以後的事後分析檢查表(驗屍)的崩潰。
酒店與最新的資料庫備份文件重新載入。如果您打算使用mysqlmp的所載入的文件,則需要輸入它們作為mysql的。如果您打算使用從資料庫文件直接拷貝(例如,使用tar或CP),它會復制他們直接回資料庫目錄中。然而,在這種情況下,你應該在關閉之前,該伺服器復制這些文件,然後重新啟動它。在備份過程中

重做日誌,然後查詢更新資料庫表中。對於所有可用的更新日誌,你可以使用它作為mysql的輸入。指定--one-database選項,因此MySQL只是要還原的資料庫執行查詢。如果你意識到有必要使用所有的更新日誌文件,可以使用包含以下命令日誌的目錄:

%LS-TRL更新(0-9)* | xargs的貓| mysql--。一個資料庫DB_NAME

ls命令生成一個單獨的日誌文件更新列表,更新日誌文件根據伺服器(你知道,如果你其中的任何文件,排序順序生成的順序進行排序會發生變化,這將導致在更新日誌中以錯誤的順序使用)。有限公司您可能需要使用一些更新日誌。例如,如果日誌,因為命名update.392備份,pdate.393等產生的,可以在命令重新運行它們:

%的mysql - 一個資料庫DB_NAME <錄入。 392
%的mysql - 一個資料庫DB_NAME <updata.393 ...

如果您正在運行的恢復,並打算使用更新日誌恢復由於失誤降數據的基礎上,DROPTABLE或DELETE語句和丟失的信息時,一定要在開始更新日誌刪除這些語句。

恢復單個表

恢復單個表是非常困難的。如果是的mysqlmp備份文件生成的,它只是不包含數據,您需要一個表,你需要提取的相關線路,並利用它們作為mysql的輸入,這部分比較容易。困難的是,提取在該表的更新日誌中使用的片段。你會發現:mysql_find_rows工具在這方面有所幫助,它可以提取多行從更新日誌查詢。另一種可能性是使用另一台伺服器

恢復整個資料庫,然後將該文件復制到表的原始資料庫。這其實很容易!當文件被復制回資料庫目錄,確保原始資料庫伺服器關閉。

⑥ 怎樣找回MYSQL資料庫中刪除的數據

1 innodb引擎表開啟了事務,執行dml語句,比如delete、update、insert之類,並且沒有提交即commit操作的話,可以執行rollback進行回滾恢復。如果是ddl操作,如drop、create、alter之類的操作時無效的

2 在進行刪除操作之前有備份,比如mysqlmp,物理備份數據文件之類的操作,那麼可以恢復到刪除前的數據

3 如果你的刪除操作是直接對data下的文件進行刪除,注意,不是粉碎文件操作,那麼你可以嘗試用磁碟恢復軟體來找回被誤刪的數據文件;

除以上情況,其他真的是沒法恢復了,不過貌似很多公司號稱能夠恢復,要收費,具體他們怎麼恢復我就不曉得了。

⑦ mysql資料庫被刪除了,怎麼恢復嗎

1
找個別的機器安裝個同版本的mysql或從已安裝同版本的其他機器上(非同版本的也可以試下):
拷貝
mysql/data/mysql
目錄到你的mysql/data/
下吧
2
試著啟動mysql服務,如果能啟動了,理論上應該丟失的只有用戶、授權等一些系統信息,不影響你的使用的數據;
如果不能啟動,看錯誤日誌,爭取啟動了。
3
趕緊把數據備份一份出來,重新把所有庫(只是你後來創建的業務相關的庫,不包括mysql庫)都刪了,重新導入一遍。理論上不這樣也可以,但只是非生產重要的環境下。
4
重新做用戶授權。

⑧ mysql刪除被的資料庫怎麼還原

1 找個別的機百器安裝個同版本的mysql或從已安裝同版本的其他機器上(非同版本的度也可以試下):

拷貝 mysql/data/mysql 目錄到你的mysql/data/ 下吧

2 試著啟動mysql服務,如果能啟動了,理論上應該丟失的只有用戶、授權等一些知系統信息,不影響你的使用的數據;

如果不能啟動,看錯誤日誌,爭取啟動了。

3 趕緊把數據備份道一份出來,重內新把所有庫(只是你後來創建的業務相關的庫,不包括mysql庫)都刪了,重新導入一遍。理論上不這樣也可以,但只是非容生產重要的環境下。

4 重新做用戶授權。

以上步驟參考一下,試一下

⑨ 把mysql資料庫刪了,請問可以恢復嗎

1.如果有備份,恢復備份數據就可以。
2.如果在企業管理器里刪除了資料庫,如果有備份,恢復備份數據就可以。
3. 如果你是在程序里卸載sql程序,數據就在sql安裝目錄里,附加資料庫就可以了。
4.如果備份數據都沒有,可以找個硬碟數據恢復公司。

⑩ 怎麼恢復mysql資料庫怎麼恢復數據

簡單情況下:進入原來mysql安裝路徑下的data文件夾下,找到相應的庫和ibdata1,進行,就可回復原來的數據。
復雜情況下:
從另一台機上把MySQL資料庫的mysql文件夾拷貝到本地機上,目的是恢復本地機對數據的訪問和操作。經過如下幾種情況的操作。
1.
在本地重裝MySQL(安裝目錄D:\Program
Files\MySQL\MySQL
Server
5.0),直接把mysql文件夾拷貝至D:\Program
Files\MySQL\MySQL
Server
5.0\。結果,失敗:資料庫連接錯誤。
2.
卸載後重裝MySQL,將D:\Program
Files\MySQL\MySQL
Server
5.0\下的數據備份,只把mysql\data文件夾全部內容拷貝到D:\Program
Files\MySQL\MySQL
Server
5.0\data下。結果,失敗:資料庫連接錯誤。將備份的數據還完覆蓋。結果,失敗,還是連接不上資料庫。
3.
卸載後重裝MySQL,將mysql\data文件夾里的cf1,last文件夾(這兩個是原來MySQL里的資料庫)拷貝進D:\Program
Files\MySQL\MySQL
Server
5.0\data。連接成功,在Navicat
for
MySQL里看到資料庫cf1和last,但是不能訪問,因為數據全為零。明白了原來data里以資料庫命名的文件存儲的是資料庫的表結構,不是元數據。下一步,把data文件夾里的ibdata1文件(3.4G大,明顯存儲了元數據)拷貝到D:\Program
Files\MySQL\MySQL
Server
5.0\data里,代替原來的ibdata1文件。重啟電腦,打開Navicat
for
MySQL,連接成功,數據可以訪問操作。
至此,操作終於成功。其實當初在那台機上把數據導出來,而不是現在直接把文件夾mysql復制過來會更容易恢復。但那台機已經重裝了系統,也就是說MySQL失效了。