[英]How to create a new database from a backup in mysql
我使用MySQL企業備份,但現在必須還原一張表。 我不想碰我現有的表,但是我想將一個數據庫還原到一個新數據庫中,這樣我就可以查看舊值並僅刪除其中的幾個。
我已將應用日志登錄到要還原的數據庫。 然后,我創建了一個名為XY的新數據庫,並將在“ appy-log”操作之后生成的所有文件放入XY文件夾中的mysql數據文件中。
我確實看到了所有表格,但是當我嘗試查詢其中的任何表格時,都會出現錯誤“表格不存在”
如何獲得mysql將還原的文件讀取到新表中而不引起更多問題?
您不能只是在數據目錄下移動文件並期望InnoDB注意到它們。
InnoDB維護着一個“數據字典”,可以將其視為書的目錄。 這就是InnoDB知道存在哪些表的方式。 數據字典由DDL語句(如CREATE,ALTER,DROP,RENAME)更新。 但是,如果您將文件物理地移到datadir中,則不會更新。
這里介紹了一種從MySQL企業備份中導入表的方法: 備份和還原單個.ibd文件 。
MySQL 5.6的可移植表空間功能引入了一些新的靈活性。
請注意,這兩種方法都是一次導入一個表 。 沒有導入整個數據庫的解決方案。
最終,將備份還原到一個單獨的MySQL實例,然后訪問您需要的幾件事將變得容易得多。 MySQL Sandbox是一個幫助您設置MySQL臨時實例的好工具。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.