• 达梦数据库系列—15. 表的备份和还原


    目录

    1、表备份

    2、表还原


    1、表备份

    表备份和表还原恢复,都必须在联机状态下进行。

    与备份数据库与表空间不同,不需要备份归档日志,不存在增量备份之说。

    1. CREATE TABLE TAB_FOR_RES_02(C1 INT);
    2. CREATE INDEX I_TAB_FOR_RES_02 ON TAB_FOR_RES_02(C1);
    3. insert into TAB_FOR_RES_02 values (1);commit;
    4. BACKUP TABLE TAB_FOR_RES_02 BACKUPSET '/dm/backup/dm_bak/tab_bak_for_res_02';

    2、表还原

    1.指定表名还原时数据库中必须存在该表,否则报错,不会从备份集判断是否存在目标表。

    2.若在语句中指定 STRUCT 关键字,则执行表结构还原。表结构还原会根据备份集中备份表还原要求,对目标表定义进行校验,并删除目标表中已存在的二级索引和约束。

    3.若不指定 STRUCT 关键字,则执行表数据还原,表数据还原默认仅会将备份表中聚集索引上的数据进行还原。

    创建表

    CREATE TABLE TAB_FOR_RES_02(C1 INT);

    还原索引约束

    RESTORE TABLE TAB_FOR_RES_02 STRUCT FROM BACKUPSET '/dm/backup/dm_bak/tab_bak_for_res_02';

    还原数据

    RESTORE TABLE TAB_FOR_RES_02 FROM BACKUPSET '/dm/backup/dm_bak/tab_bak_for_res_02';
    1. SQL> CREATE TABLE TAB_FOR_RES_02(C1 INT);
    2. 操作已执行
    3. 已用时间: 6.245(毫秒). 执行号:918.
    4. SQL> CREATE INDEX I_TAB_FOR_RES_02 ON TAB_FOR_RES_02(C1);
    5. 操作已执行
    6. 已用时间: 12.137(毫秒). 执行号:919.
    7. SQL> insert into TAB_FOR_RES_02 values (1);commit;
    8. DMSQL 过程已成功完成
    9. 已用时间: 2.600(毫秒). 执行号:920.
    10. SQL> select owner,index_name,table_owner,table_name from SYS.DBA_INDEXES a where a.INDEX_NAME='I_TAB_FOR_RES_02';
    11. 行号 OWNER INDEX_NAME TABLE_OWNER TABLE_NAME
    12. ---------- ------ ---------------- ----------- --------------
    13. 1 SYSDBA I_TAB_FOR_RES_02 SYSDBA TAB_FOR_RES_02
    14. 已用时间: 2.320(毫秒). 执行号:923.
    15. SQL> BACKUP TABLE TAB_FOR_RES_02 BACKUPSET '/dm/backup/dm_bak/tab_bak_for_res_02';
    16. 操作已执行
    17. 已用时间: 00:00:02.859. 执行号:925.
    18. SQL> drop table TAB_FOR_RES_02;
    19. 操作已执行
    20. 已用时间: 19.199(毫秒). 执行号:926.
    21. SQL> RESTORE TABLE TAB_FOR_RES_02 STRUCT FROM BACKUPSET '/dm/backup/dm_bak/tab_bak_for_res_02';
    22. RESTORE TABLE TAB_FOR_RES_02 STRUCT FROM BACKUPSET '/dm/backup/dm_bak/tab_bak_for_res_02';
    23. 1 行附近出现错误[-2106]:无效的表或视图名[TAB_FOR_RES_02].
    24. 已用时间: 0.602(毫秒). 执行号:0.
    25. SQL> CREATE TABLE TAB_FOR_RES_02(C1 INT);
    26. 操作已执行
    27. 已用时间: 5.637(毫秒). 执行号:927.
    28. SQL> RESTORE TABLE TAB_FOR_RES_02 STRUCT FROM BACKUPSET '/dm/backup/dm_bak/tab_bak_for_res_02';
    29. 操作已执行
    30. 已用时间: 10.764(毫秒). 执行号:928.
    31. SQL> select owner,index_name,table_owner,table_name from SYS.DBA_INDEXES a where a.INDEX_NAME='I_TAB_FOR_RES_02';
    32. 未选定行
    33. 已用时间: 0.470(毫秒). 执行号:929.
    34. SQL> select owner,index_name,table_owner,table_name from SYS.DBA_INDEXES a where table_name='TAB_FOR_RES_02';
    35. 行号 OWNER INDEX_NAME TABLE_OWNER TABLE_NAME
    36. ---------- ------ ------------- ----------- --------------
    37. 1 SYSDBA INDEX33555724 SYSDBA TAB_FOR_RES_02
    38. 已用时间: 19.652(毫秒). 执行号:930.
    39. SQL> select * from TAB_FOR_RES_02;
    40. 未选定行
    41. 已用时间: 0.923(毫秒). 执行号:931.
    42. SQL> RESTORE TABLE TAB_FOR_RES_02 FROM BACKUPSET '/dm/backup/dm_bak/tab_bak_for_res_02';
    43. 操作已执行
    44. 已用时间: 37.959(毫秒). 执行号:932.
    45. SQL> select * from TAB_FOR_RES_02;
    46. 行号 C1
    47. ---------- -----------
    48. 1 1
    49. 已用时间: 1.074(毫秒). 执行号:933.
    50. SQL>

    达梦技术社区:https://eco.dameng.com/

  • 相关阅读:
    考过PMP之后,要不要继续学CSPM?
    Github每日精选(第40期):为 Windows 带来 macOS “快速查看”功能QuickLook
    【Docker】Docker的应用包含Sandbox、PaaS、Open Solution以及IT运维概念的详细讲解
    原来爱优腾等视频网站都是用这个来播放流媒体的
    system verilog 句柄 ref参数传递 C语言指针
    Elasticsearch 8.10 同义词管理新篇章:引入同义词 API
    低代码助力制造型企业管理:项目管理系统
    掌动智能国产化测试工具的重要性与优势
    [postgres]配置主从异步流复制
    再见 Sidecars,eBPF 能否扛起新大旗?
  • 原文地址:https://blog.csdn.net/md54333/article/details/139981374