mysql單表導入數據,全量備份導入單表


(1)“導出”表
導出表是在備份的prepare階段進行的,因此,一旦完全備份完成,就可以在prepare過程中通過--export選項將某表導出了:

innobackupex --apply-log --export /backup/xbackup/full/  #這個需要在備份的目錄下面執行.  后面的路徑是備份的目錄.(重要) 不是自己定義的目錄.

# innobackupex --apply-log --export /path/to/backup

innobackupex --apply-log --export /backup

此命令會為每個innodb表的表空間創建一個以.exp結尾的文件,這些以.exp結尾的文件則可以用於導入至其它服務器。

(2)“導入”表
要在mysql服務器上導入來自於其它服務器的某innodb表,需要先在當前服務器上創建一個跟原表表結構一致的表,而后才能實現將表導入:
mysql> CREATE TABLE mytable (...)  ENGINE=InnoDB;
#這里要新建表結構
#create table test(id int,name varchar(20),age int) ENGINE=InnoDB;
#mysql> show variables like '%autocommit%';



然后將此表的表空間刪除:
mysql> ALTER TABLE mydatabase.mytable  DISCARD TABLESPACE;

接下來,將來自於“導出”表的服務器的mytable表的mytable.ibd和mytable.exp文件復制到當前服務器的數據目錄,
然后使用如下命令將其“導入”:(記得改權限)
這里需要改權限很重要
mysql> ALTER TABLE mydatabase.mytable  IMPORT TABLESPACE;

 mysql -uroot -poldboy123 <all_2017-12-25.sql


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM