备份与恢复:polardb数据库备份与恢复

一、数据库与对象逻辑导出

1.1 导出指定数据库

使用postgresql原生数据库自带逻辑备份工具pg_dump,导出testdb数据库中的表、索引、视图、函数、存储过程等对象(特别注意的是这种方式不会导出对象的owner,后面导入数据时

需要手工创建owner),以文本语句形式导出到文件testdb_all.sql。

pg_dump -hlocalhost -p5444 -U polardb -C -d testdb >testdb_all.sql

说明: '-C' 包含 'create database' 命令

1.2 导出polardb所有数据库

使用postgresql原生数据库自带逻辑备份工具pg_dumpall,以文本语句形式导出到文件all.sql。

pg_dumpall>all.sql

1.3 导出数据库单个对象

--导出表结构

pg_dump -h localhost -U polardb -t tbl -s  testdb> tbl_meate.sql

--导出表数据

pg_dump -h localhost -U polardb -t tbl -a  testdb> tbl_data.sql 

--导出表和数据

pg_dump -h localhost -U polardb -t tbl tesdb> tbl.sql


二、数据库与对象 逻辑导入

1.1 导入指定数据库

指定数据库导出是没有将owner导出来,所以在导入数据前需要提前创建owner。

--------------------------------建用户与角色-------------------------------

create role app_role1 with superuser login;

create user user1 with password 'user1';  

create user user2 with password 'user2';

grant app_role1 to user2;

grant app_role1 to user1

psql -hlocalhost -p5444 -U polardb -d testdb< testdb_all.sql

1.2 导入全库

--导入全库

psql -hlocalhost -p5444 -Upolardb

1.3 导入数据库对象

drop table tbl;

psql -hlocalhost -p5444 -d testdb








请使用浏览器的分享功能分享到微信等