暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Gbase 8c备份与恢复

Gbase 8c备份与恢复

说明:

-U指定的数据库用户名

-W指定用户的密码

-f 指定的备份文件名

-p指定数据库的端口号

postgres 为数据库名称

-n 指定模式的名称(多个模式可以指定多个-n)

-F指定备份文件的格式,后面的p代表纯文本格式

-N 排除指定模式(指定下的模式不会导出)

  1. 整库备份

说明:1、gs_dump:导出postgres数据库所有信息

2、支持格式:纯文本、自定义归档、目录文档、tar归档

语句:

gs_dump -U gbase -W Gbase_123 -f /home/gbase/backup/MPPDB_backup.sql -p 5432 postgres -s -F p

执行过程:

[gbase@Gbase8CNode2 /]$ gs_dump -U gbase -W Gbase_123 -f /home/gbase/backup/MPPDB_backup.sql -p 5432 postgres -s -F p

gs_dump[port='5432'][postgres][2024-04-21 00:46:46]: The total objects number is 419.

gs_dump[port='5432'][postgres][2024-04-21 00:46:47]: [100.00%] 419 objects have been dumped.

gs_dump: [port='5432'] [postgres] [archiver] [2024-04-21 00:46:47] WARNING: archive items not in correct section order

gs_dump[port='5432'][postgres][2024-04-21 00:46:47]: dump database postgres successfully

gs_dump[port='5432'][postgres][2024-04-21 00:46:47]: total time: 3009 ms

[gbase@Gbase8CNode2 /]$

  1. 备份schema模式

2.1、导出所有schema(包含数据)

说明:1、gs_dump:导出所有schema(包含该模式下的数据)

2、支持格式:纯文本、自定义归档、目录文档、tar归档

语句:

gs_dump -U gbase -W Gbase_123 -f /home/gbase/backup/test_use1_backup_nodata.sql -p 5432 postgres -F p

执行过程:

[gbase@Gbase8CNode2 /]$ gs_dump -U gbase -W Gbase_123 -f /home/gbase/backup/test_use1_backup.sql -p 5432 postgres -F p

gs_dump[port='5432'][postgres][2024-04-21 00:13:24]: The total objects number is 403.

gs_dump[port='5432'][postgres][2024-04-21 00:13:24]: [100.00%] 403 objects have been dumped.

gs_dump[port='5432'][postgres][2024-04-21 00:13:24]: dump database postgres successfully

gs_dump[port='5432'][postgres][2024-04-21 00:13:24]: total time: 7829 ms

2.2、导出指定schema(包含数据)

说明:1、gs_dump:导出指定schema(包含数据)

2、支持格式:纯文本、自定义归档、目录文档、tar归档

语句:

gs_dump -U gbase -W Gbase_123 -f /home/gbase/backup/test_use1_backup_scheam_server.sql -p 5432 postgres -n schema_server -F p

执行过程:

[gbase@Gbase8CNode2 /]$ gs_dump -U gbase -W Gbase_123 -f /home/gbase/backup/test_use1_backup_scheam_server.sql -p 5432 postgres -n schema_server -F p

gs_dump[port='5432'][postgres][2024-04-21 14:05:03]: no matching schemas were found for pattern "schema_server"

gs_dump[port='5432'][postgres][2024-04-21 14:05:03]: No matching schemas were found

[gbase@Gbase8CNode2 /]$

3、导出指定表

说明:1、gs_dump:导出指定表

2、-t指定表名,多张表,可以指定多个-t

3、-T 代表不导出表的表名,多张表可以指定多个-T

4、--include-table-file=FILENAME 代表需要备份的表文件

5、--exclude-table-file=FILENAME 代表不需要备份的表文件

语句:

gs_dump -U gbase -W Gbase_123 -f /home/gbase/backup/test_use1_backup.sql -p 5432 postgres -t test_use1.ora_alter_table -F p

执行过程:

[gbase@Gbase8CNode2 /]$ gs_dump -U gbase -W Gbase_123 -f /home/gbase/backup/test_use1_backup.sql -p 5432 postgres -t test_use1.ora_alter_table -F p

gs_dump[port='5432'][postgres][2024-04-21 00:16:02]: The total objects number is 402.

gs_dump[port='5432'][postgres][2024-04-21 00:16:02]: [100.00%] 402 objects have been dumped.

gs_dump[port='5432'][postgres][2024-04-21 00:16:02]: dump database postgres successfully

gs_dump[port='5432'][postgres][2024-04-21 00:16:02]: total time: 6036 ms

[gbase@Gbase8CNode2 /]$

4、只导出表定义,不导出数据

说明:1、gs_dump:只导出表定义,不导出数据

2、-t指定表名,多张表,可以指定多个-t

3、-s只导出表定义,不导出数据。

方式1:

语句:

gs_dump -U gbase -W Gbase_123 -f /home/gbase/backup/test_use1_backup.sql -p 5432 postgres -t test_use1.ora_alter_table -s -F p

执行过程:

[gbase@Gbase8CNode2 /]$ gs_dump -U gbase -W Gbase_123 -f /home/gbase/backup/test_use1_backup.sql -p 5432 postgres -t test_use1.ora_alter_table -s -F p

gs_dump[port='5432'][postgres][2024-04-21 00:18:50]: The total objects number is 401.

gs_dump[port='5432'][postgres][2024-04-21 00:18:50]: [100.00%] 401 objects have been dumped.

gs_dump[port='5432'][postgres][2024-04-21 00:18:50]: dump database postgres successfully

gs_dump[port='5432'][postgres][2024-04-21 00:18:50]: total time: 5055 ms

方式2:

语句:

gs_dump -U gbase -W Gbase_123 -f /home/gbase/backup/test_use1_backup.dmp -p 5432 postgres -t test_use1.ora_alter_table -s -F c

执行过程:

[gbase@Gbase8CNode2 /]$ gs_dump -U gbase -W Gbase_123 -f /home/gbase/backup/test_use1_backup.dmp -p 5432 postgres -t test_use1.ora_alter_table -s -F c

gs_dump[port='5432'][postgres][2024-04-21 00:20:03]: The total objects number is 401.

gs_dump[port='5432'][postgres][2024-04-21 00:20:03]: [100.00%] 401 objects have been dumped.

gs_dump[port='5432'][postgres][2024-04-21 00:20:03]: dump database postgres successfully

gs_dump[port='5432'][postgres][2024-04-21 00:20:03]: total time: 4734 ms

数据库恢复

1、gsql -f方式恢复

说明:1、gsql -f:指定备份文件执行

2、备份文件的格式仅支持纯文本格式。

语句:gsql -U gbase -W Gbase_123 -f /home/gbase/backup/MPPDB_backup.sql -p 5432 postgres

执行过程:

[gbase@Gbase8CNode2 /]$ gsql -U gbase -W Gbase_123 -f /home/gbase/backup/MPPDB_backup.sql -p 5432 postgres

2、gs_restore方式恢复

说明:1、gs_restore:指定备份文件执行

2、备份文件的格式支持:纯文本格式、dump二进制格式。

语句:

gs_restore /home/gbase/backup/test_use1_backup.dmp -p 5432 -d postgres

执行过程:

[gbase@Gbase8CNode2 /]$ gs_restore /home/gbase/backup/test_use1_backup.dmp -p 5432 -d postgres

2、数据导出

说明:1、GBase 8C通过COPY TO把指定表的数据拷贝到文件

2、备份文件的格式支持:纯文本格式csv。

语句:COPY public.customer_t2 TO '/home/gbase/backup/customer_t2.csv';

执行过程:

postgres=# \d

List of relations

Schema | Name | Type | Owner | Storage

--------+-------------+-------+-------+----------------------------------

public | customer_t1 | table | gbase | {orientation=row,compression=no}

public | customer_t2 | table | gbase | {orientation=row,compression=no}

public | customer_t3 | table | gbase | {orientation=row,compression=no}

public | dual | view | gbase |

public | t1 | table | gbase | {orientation=row,compression=no}

public | t2 | table | gbase | {orientation=row,compression=no}

public | t3 | table | gbase | {orientation=row,compression=no}

(7 rows)

postgres=# COPY public.customer_t2 TO '/home/gbase/backup/customer_t2.csv';

COPY 3

postgres=#

3、数据导入

说明:1、GBase 8C通过COPY FROM把指定文件的数据导入到指定表。

2、备份文件的格式支持:纯文本格式csv。

语句:

COPY customer_t2 FROM '/home/gbase/backup/customer_t2.csv';

执行过程:

postgres=# \d+

List of relations

Schema | Name | Type | Owner | Size | Storage | Description

--------+-------------+-------+-------+---------+----------------------------------+-------------

public | customer_t1 | table | gbase | 16 kB | {orientation=row,compression=no} |

public | customer_t2 | table | gbase | 16 kB | {orientation=row,compression=no} |

public | customer_t3 | table | gbase | 16 kB | {orientation=row,compression=no} |

public | dual | view | gbase | 0 bytes | |

public | t1 | table | gbase | 0 bytes | {orientation=row,compression=no} |

public | t2 | table | gbase | 0 bytes | {orientation=row,compression=no} |

public | t3 | table | gbase | 0 bytes | {orientation=row,compression=no} |

(7 rows)

postgres=# COPY customer_t2 FROM '/home/gbase/backup/customer_t2.csv';

COPY 3

postgres=#

最后修改时间:2024-04-22 13:44:17
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论