【国产数据库】GBase学习⑬ - GBase 8c 备份与恢复

导出postgres数据库全量信息

导出postgres数据库全量信息

  • 命令:gs_dump
  • 格式:纯文本格式、自定义归档格式、目录归档格式、tar归档格式
例:  gs_dump    -U gbase   -W Gbase_123 -f backup/MPPDB_backup.sql -p 15432 postgres  -F p
     解释:执行命令                            备份文件路径               端口              格式:p 纯文本格式    

导出指定schema

导出指定schema

  • 命令:gs_dump
  • 格式:纯文本格式 p、自定义归档格式 c、目录归档格式 d、tar归档格式 t
	 例:gs_dump -U gbase -W Gbase_123 -f backup/MPPDB_backup.sql -p 15432 postgres -F p
  • 场景一: 创建用户(会自动创建模式),在指定模式下创建业务数据,然后通过gs_dump导出指定模式下数据
# test_user1 模式下新建了一张表及插入了数据,public模式下有7张表,下面操作只会导出test_user1模式
create user test_user1 identified by 'Gbase_123';
grant all privileges to test_user1;
set search_path=test_user1;
create table ora_alter_table(pid number,did number,lsn varchar2(24),name varchar2(200),pno number,cnt number,amount number,sale_time date default sysdate);
begin for i in 1...10000 loop
insert into ora_alter_table(pid,did,lsn,name,pno,cnt,amount,sale_time) values(i,i+100,i+9,'name' || i,i+1000,i+10,i+10000,sysdate);
end loop;
commit;
end;
slect count(*) from ora_alter_table;
\d+
set search_path=public;
\d+			  
gs_dump -U gbase -W Gbase_123 -f backup/test_user1_backup.sql -p 5432 postgres -n test_user1 -F p
其中:-U 指定的数据库用户名
     -W 指定用户的密码
     -f 指定的备份文件名
     -p 指定数据库的端口号
      postgres 为数据库名称
     -n 指定模式的名称(多个模式可以指定多个-n)
     -F 指定备份文件的格式,后面的p代表纯文本格式
     -N 排除指定模式(指定下的模式不会导出)

导出指定的表

导出指定的表

  • 命令:
gs_dump -U gbase -W Gbase_123 -f backup/test_use1_backup.sql -p 5432 gostgres -t test_use1.ora_alter_table -F p
其中 :
-t 代表指定表名,多张表可以多个-t
-T 代表不导出表的表名,多张表可以指定多个-T
--include-table-file=FILENAME  代表需要备份的表文件
--exclude-table-file=FILENAME  代表不需要备份的表文件    
FILENAME文件中格式如下:    schema1.table1           schema2.table2		

只导出表定义,不导出数据 + 恢复

  • 命令:
gs_dump -U gbase -W Gbase_123 -f backup/test_user1_backup.sql -p 5432 postgres -t test_use1.ora_alter_table -s -F p					
其中:
-t代表指定表明,多张表可以指定多个-t
-s代表只导出表定义,不导出数据
如果全量导出对象定义而不到处数据,可直接使用-s				

恢复1:

  • 命令: gsql -f 指定备份文件执行(备份文件的格式仅支持p纯文本格式)
例: 
gsql -U gbase -W Gbase_123 -f backup/MPPDB_backup.sql -p 15432 postgres

恢复2:

  • 命令: gs_restore(自定义归档格式、目录归档格式、tar归档格式)
例: 
gs_restore test_backup.dmp -p 15432 -d postgres -t test	

数据导入导出

导出
命令:COPY TO

例:将表test_user1.ora_alter_table的数据导出csv格式
        COPY test_user1.ora_alter_table TO '/home/gbase/backup/ora_alter_table.csv';
        COPY test_user1.ora_alter_table TO '/home/gbase/backup/ora_alter_table.bat';			

导入1:
INSERT 通过INSERT语句插入一行或多行数据,及从指定表插入数据
命令:

	insert into customer_t2 values(,'',''),(,'',''),(,'','');

导入2:
使用INSERT 批量插入
命令:

    insert into t3 select * from t2;
    create table t1 as select * from t2;

导入3:
使用COPY 表名 [(列名[,…])] FROM {‘文件名’}
命令:

    create table t1 as select * from test_user1.ora_alter_table where 1=2; 只创建了一张空表
    COPY t1 from '/home/gbase/backup/ora_alter_table.csv'; 使用文件名的方式导入数据
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值