欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

mysql按表恢復update的數據

錢淋西2年前10瀏覽0評論

MySQL數據庫是目前Web開發中使用最廣泛的數據庫之一。在操作MySQL數據庫的過程中,數據的恢復是不可避免的操作之一。針對MySQL中的表修復的情況,下面介紹一下如何按表恢復update的數據。

1. 在MySQL中,首先需要通過以下命令檢查表的狀態:
CHECK TABLE tablename;
如果表處于"REPAIR"、"USE_FRM"或者"CRASHED"狀態,那么需要進行修復。
2. 對于表的修復,我們可以選擇使用以下兩個選項之一進行操作:
REPAIR TABLE tablename;
或者
myisamchk -r tablename.MYI(對于MyISAM表)或者
innodb_table_monitor -uroot -p mypassword #tablename(對于InnoDB表)
3. 如果表被使用或是無法訪問,那么我們需要先停掉并重啟服務器:
/etc/init.d/mysql stop
/etc/init.d/mysql start
4. 對于更新(update)數據的恢復,我們需要根據日志(log)信息來進行操作。需要先確定數據庫的最后更新狀態,并找到最后的update語句,比如:
UPDATE tablename SET name='name1' WHERE id=1;
5. 執行"mv /var/lib/mysql/tablename.frm /temp"命令備份表,并將所有的日志文件(包括二進制日志文件)備份到一個 目錄中,比如"/temp".
6. 清空現有的表:
TRUNCATE tablename;
7. 將數據文件移動到臨時目錄:
mv /var/lib/mysql/tablename.MYI /temp/
8. 運行mysqlbinlog對于日志文件進行解析:
mysqlbinlog /var/lib/mysql/logfilename >/temp/logfilename.sql
9. 在SQL文件里尋找最后一個update語句,并將其恢復:
UPDATE tablename SET name='name1' WHERE id=1;
10. 將管理員的權限轉移到表文件myisamchk的備份文件上:
ch own mysql:mysql /var/lib/mysql/tablename.*
11. 重啟MySQL系統并打開相應的表,數據更新就可以得到恢復