开发者社区 > 数据库 > 关系型数据库 > 正文

PolarDB冷存数据到OSS之后如何恢复?

PolarDB冷存数据到OSS之后如何恢复?

展开
收起
三分钟热度的鱼 2024-02-28 17:06:23 56 0
2 条回答
写回答
取消 提交回答
  • 阿里云大降价~

    2000元阿里云代金券免费领取,2核4G云服务器仅664元/3年,新老用户都有优惠,立即抢购>>>

    要将冷存到OSS(Object Storage Service)的数据恢复到PolarDB,您可以按照以下步骤操作:

    1. 数据导出:使用mysqldump工具或阿里云的DataX等第三方工具将PolarDB中的数据导出为CSV文件。
    2. 数据导入:将CSV文件上传到OSS,并使用LOAD DATA INFILE语句将数据导入到PolarDB中的新表或原表。
    3. 数据恢复:在PolarDB中创建一个新的InnoDB表,然后使用ALTER TABLE命令将OSS上的数据导回到这个新表中。
    4. 数据修改:在新表中进行数据的修改和更新操作。
    5. 数据重新冷存:完成修改后,如果需要,可以再次使用ALTER TABLE命令将表数据归档至OSS。

    总的来说,在进行这些操作时,请确保您已经熟悉了PolarDB的相关操作,并且在操作前最好对现有数据进行备份,以防万一。此外,如果您不熟悉SQL操作,建议寻求专业人士的帮助。

    2024-02-29 18:44:37
    赞同 展开评论 打赏
  • 2000元阿里云代金券免费领取,2核4G云服务器仅664元/3年,新老用户都有优惠,立即抢购>>>

    在阿里云PolarDB MySQL数据库中,将冷存数据从OSS恢复到PolarDB的过程如下:

    如果您归档的数据是CSV或ORC格式存储在OSS上,您可以使用ALTER TABLE语法将OSS上的冷数据导入回PolarDB的PolarStore中进行修改。具体操作为:
    ALTER TABLE database_name.table_name ENGINE = InnoDB;
    这将会把OSS表转换成可读写的InnoDB表,然后您可以在该表上执行INSERT、UPDATE和DELETE等操作。

    在对数据进行修改后,如果需要再次将修改后的表归档至OSS,可以使用以下语句:
    ALTER TABLE table_name ENGINE = CSV CONNECTION = 'default_oss_server';
    或者
    ALTER TABLE t ENGINE = CSV STORAGE OSS;

    对于通过STORAGE_TYPE OSS归档的IBD格式冷数据,若要切回PolarStore块存储模式并查询/修改数据,首先执行:
    ALTER TABLE table_name STORAGE_TYPE NULL;
    然后,对于不再需要的OSS上对应文件,调用存储过程删除:
    CALL dbms_oss.delete_table_file('database_name', 'table_name');
    注意,从OSS恢复和删除文件的操作可能需要一定时间,并且有异步时延。

    总结来说,恢复OSS上的冷数据至PolarDB主要涉及更改表引擎类型以及根据实际需求进行相应的数据迁移与清理操作。在操作前,请确保您的数据恢复符合业务需求,并充分测试以满足性能要求。 此回答整理自钉群“PolarDB专家面对面 - 通用功能咨询”

    2024-02-28 19:02:57
    赞同 展开评论 打赏

相关产品

  • 云原生数据库 PolarDB
  • 热门讨论

    热门文章

    相关电子书

    更多
    OSS运维进阶实战手册 立即下载
    《OSS运维基础实战手册》 立即下载
    OSS运维基础实战手册 立即下载
    http://www.vxiaotou.com