MySQL數(shù)據(jù)庫是一種常用的關(guān)系型數(shù)據(jù)庫,它提供了豐富的操作和管理工具。但是在數(shù)據(jù)庫中,有時候我們需要獲取一些已經(jīng)被刪除的記錄。那么,我們該如何在MySQL中獲取這些記錄呢?
MySQL中提供了一個叫做“回滾日志”的功能,通過這個功能,我們可以獲取到已經(jīng)被刪除的記錄。具體操作步驟如下:
1. 首先在MySQL中開啟“回滾日志”功能: mysql>SET GLOBAL innodb_file_per_table=1; mysql>SET GLOBAL innodb_file_format=barracuda; mysql>SET GLOBAL innodb_log_file_size=536870912; mysql>SET GLOBAL innodb_log_buffer_size=8388608; mysql>SET GLOBAL innodb_flush_log_at_trx_commit=0; mysql>SET GLOBAL innodb_buffer_pool_instances=1; mysql>SET GLOBAL innodb_flush_method=O_DIRECT_NO_FSYNC; mysql>SET GLOBAL innodb_print_all_deadlocks=1; 2. 登錄MySQL,執(zhí)行以下命令,查看是否開啟了“回滾日志”功能: mysql>SHOW VARIABLES LIKE 'innodb_undo_tablespaces';
在執(zhí)行完上述命令之后,我們就可以通過以下SQL語句獲取到已經(jīng)被刪除的記錄:
SELECT * FROM table_name AS OF TIMESTAMP 'timestamp';
其中,“table_name”為你要查詢的表名,“timestamp”為你要獲取的時間點。通過執(zhí)行以上SQL語句,我們就可以獲取到指定時間點已經(jīng)被刪除的記錄了。