• Percona XtraBackup 2.4新特性之恢复单个表数据


    参考文档:https://www.percona.com/doc/percona-xtrabackup/2.4/xtrabackup_bin/restoring_individual_tables.html

    需要满足的条件:

    innodb_file_per_table开启

    innodb存储引擎

    表有对应的.ibd文件

    满足以上条件就可以通过物理备份集生成以表为单位的export文件

    测试 

    物理全备

    /usr/local/bin/xtrabackup --defaults-file=/etc/3309.cnf --user=root --socket=/tmp/3309.sock --parallel=4 --backup --target-dir=/data0/sql/20171016.bak

    export表:还原,加选项--export

    xtrabackup --prepare --export --target-dir=/data0/sql/20171016.bak/
    # 如果备份时时加密的,那么还原时还需指定密钥文件,选项--keyring-file-data

    查看某个表对应的备份文件

    find /tmp/20171016.bak/ -name 't1*'
    /data0/sql/20171016.bak/test/t1.frm
    /data0/sql/20171016.bak/test/t1.cfg
    /data0/sql/20171016.bak/test/t1.exp
    /data0/sql/20171016.bak/test/t1.ibd

    import 表

    # 删除ibd文件
    ALTER TABLE test.t1 DISCARD TABLESPACE;
    # .cfg文件可以不拷贝并重新授权
    cp /data0/sql/20171016.bak/test/t1.* /data0/mysql/3309_test/test/ 
    
    ll /data0/mysql/3309_test/test/t1.*  
    -rw-r----- 1 mysql mysql  16384 Oct 16 23:11 /data0/mysql/3309_test/test/t1.exp
    -rw-r----- 1 mysql mysql   8676 Oct 16 23:11 /data0/mysql/3309_test/test/t1.frm
    -rw-r----- 1 mysql mysql 163840 Oct 16 23:12 /data0/mysql/3309_test/test/t1.ibd
    
    # 导入
     ALTER TABLE test.t1 IMPORT TABLESPACE;
    Query OK, 0 rows affected, 1 warning (0.11 sec)

    操作期间遇到的报错

    ALTER TABLE test.t1 IMPORT TABLESPACE;          
    ERROR 1812 (HY000): Tablespace is missing for table `test`.`t1`.
    # 是未拷贝ibd文件导致
     ALTER TABLE test.t1 IMPORT TABLESPACE;
    ERROR 1815 (HY000): Internal error: Cannot reset LSNs in table `test`.`t1` : Tablespace not found
    # 是文件未授权导致
  • 相关阅读:
    表数据转换为insert语句
    Google Map Api 谷歌地图接口整理
    VS预生成事件命令行 和 生成后事件命令行
    C#程序开机运行
    枚举数据源化
    winform分页管理
    数据库访问驱动
    sql时间格式
    sysobjects.xtype介绍
    编码标准的多样性
  • 原文地址:https://www.cnblogs.com/Bccd/p/7679491.html
Copyright © 2020-2023  润新知