从GP6.0后,使用gpbackup命令来实现备份。但GP里是不自带的,需要自己重新下载并编译和安装。
一、安装
(1)master上go下载并配置profile环境变量
go下载地址 :https://go.dev/dl/
环境变量:
/etc/profile文件增加
export GOPATH=/data/tools/go
export PATH=$PATH:/data/tools/diskquota/build/cmake-3.25.1-linux-x86_64/bin:$GOPATH/bin
[root@gp-mdw bin]# go version
go version go1.19.4 linux/amd64
(2)下载gpbackup并编译
下载地址:https://github.com/greenplum-db/gpbackup
编译:
进入
make depend make build
(3)编译完后在go环境下会发现编译产生的三个包
[root@gp-mdw bin]# ls -la
total 51776
drwxr-xr-x 2 gpadmin gpadmin 85 Dec 14 17:04 .
drwxr-xr-x 10 gpadmin gpadmin 222 Dec 2 02:16 ..
-rwxr-xr-x 1 gpadmin gpadmin 15308131 Dec 2 02:15 go
-rwxr-xr-x 1 gpadmin gpadmin 3386565 Dec 2 02:15 gofmt
-rwxr-xr-x 1 root root 14873102 Dec 14 17:04 gpbackup
-rwxr-xr-x 1 root root 6027034 Dec 14 17:04 gpbackup_helper
-rwxr-xr-x 1 root root 13414262 Dec 14 17:04 gprestore
[root@gp-mdw bin]# pwd
/data/tools/go/bin
[root@gp-mdw bin]#
二、使用
[root@gp-mdw bin]# gpbackup --help
gpbackup is the parallel backup utility for Greenplum
Usage:
gpbackup [flags]
Flags:
--backup-dir string The absolute path of the directory to which all backup files will be written 指定备份目录
--compression-level int Level of compression to use during data backup. Range of valid values depends on compression type (default 1)
--compression-type string Type of compression to use during data backup. Valid values are 'gzip', 'zstd' (default "gzip")
--copy-queue-size int number of COPY commands gpbackup should enqueue when backing up using the --single-data-file option (default 1)
--data-only Only back up data, do not back up metadata 只备份数据,没有源数据
--dbname string The database to be backed up 指定备份数据库
--debug Print verbose and debug log messages
--exclude-schema stringArray Back up all metadata except objects in the specified schema(s). --exclude-schema can be specified multiple times.
--exclude-schema-file string A file containing a list of schemas to be excluded from the backup
--exclude-table stringArray Back up all metadata except the specified table(s). --exclude-table can be specified multiple times.
--exclude-table-file string A file containing a list of fully-qualified tables to be excluded from the backup
--from-timestamp string A timestamp to use to base the current incremental backup off
--help Help for gpbackup
--include-schema stringArray Back up only the specified schema(s). --include-schema can be specified multiple times.
--include-schema-file string A file containing a list of schema(s) to be included in the backup
--include-table stringArray Back up only the specified table(s). --include-table can be specified multiple times.
--include-table-file string A file containing a list of fully-qualified tables to be included in the backup
--incremental Only back up data for AO tables that have been modified since the last backup 增量备份,只对AO表起作用
--jobs int The number of parallel connections to use when backing up data (default 1) N个并行备份,默认为1
--leaf-partition-data For partition tables, create one data file per leaf partition instead of one data file for the whole table
--metadata-only Only back up metadata, do not back up data
--no-compression Skip compression of data files
--plugin-config string The configuration file to use for a plugin
--quiet Suppress non-warning, non-error log messages
--single-data-file Back up all data to a single file instead of one per table 会将segment数据备份成单个文件
--verbose Print verbose log messages
--version Print version number and exit
--with-stats Back up query plan statistics
--without-globals Skip backup of global metadata
--jobs=2和--single-data-file参数不能同时使用
实验总结:
20221214:17:20:23 gpbackup:gpadmin:gp-mdw:014637-[INFO]:-Found neither /home/gpadmin/greenplum-db/bin/gp_email_contacts.yaml nor /home/gpadmin/gp_email_contacts.yaml 20221214:17:20:23 gpbackup:gpadmin:gp-mdw:014637-[INFO]:-Email containing gpbackup report /data/master/gpseg-1/backups/20221214/20221214172018/gpbackup_20221214172018_report [gpadmin@gp-mdw 20221214172018]$ cat gpbackup_20221214172018_config.yaml backupdir: "" backupversion: 1.27.0 compressed: true compressiontype: gzip databasename: etl databaseversion: 6.22.0 build commit:4b6c079bc3aed35b2f161c377e208185f9310a69 Open Source segmentcount: 6 dataonly: false datedeleted: "" excluderelations: [] excludeschemafiltered: false excludeschemas: [] excludetablefiltered: false includerelations: [] includeschemafiltered: false includeschemas: [] includetablefiltered: false incremental: false leafpartitiondata: false metadataonly: false plugin: "" pluginversion: "" restoreplan: - timestamp: "20221214172018" tablefqns: - public.t1 - public.testdblink - employees.department - employees.department_employee - employees.department_manager - employees.employee - employees.salary - employees.title - public.sales - public.t2 - public.t3 singledatafile: false timestamp: "20221214172018" endtime: "20221214172023" withoutglobals: false withstatistics: false status: Success [gpadmin@gp-mdw 20221214172018]$ cat gpbackup_20221214172018_toc.yaml globalentries: - schema: "" name: "" objecttype: SESSION GUCS referenceobject: "" startbyte: 0 endbyte: 31 - schema: "" name: pg_default objecttype: RESOURCE QUEUE referenceobject: "" startbyte: 31 endbyte: 93 - schema: "" name: admin_group objecttype: RESOURCE GROUP referenceobject: "" startbyte: 93 endbyte: 149 - schema: "" name: admin_group objecttype: RESOURCE GROUP referenceobject: "" startbyte: 149 endbyte: 203 - schema: "" name: default_group objecttype: RESOURCE GROUP referenceobject: "" startbyte: 203 endbyte: 261 - schema: "" name: default_group objecttype: RESOURCE GROUP referenceobject: "" startbyte: 261 endbyte: 317 - schema: "" name: default_group objecttype: RESOURCE GROUP referenceobject: "" startbyte: 317 endbyte: 373 - schema: "" name: default_group objecttype: RESOURCE GROUP referenceobject: "" startbyte: 373 endbyte: 437 - schema: "" name: default_group objecttype: RESOURCE GROUP referenceobject: "" startbyte: 437 endbyte: 499 - schema: "" name: default_group objecttype: RESOURCE GROUP referenceobject: "" startbyte: 499 endbyte: 555 - schema: "" name: default_group objecttype: RESOURCE GROUP referenceobject: "" startbyte: 555 endbyte: 614 - schema: "" name: admin_group objecttype: RESOURCE GROUP referenceobject: "" startbyte: 614 endbyte: 669 - schema: "" name: admin_group objecttype: RESOURCE GROUP referenceobject: "" startbyte: 669 endbyte: 731 - schema: "" name: admin_group objecttype: RESOURCE GROUP referenceobject: "" startbyte: 731 endbyte: 791 - schema: "" name: admin_group objecttype: RESOURCE GROUP referenceobject: "" startbyte: 791 endbyte: 845 - schema: "" name: admin_group objecttype: RESOURCE GROUP referenceobject: "" startbyte: 845 endbyte: 902 - schema: "" name: gpadmin objecttype: ROLE referenceobject: "" startbyte: 902 endbyte: 1244 - schema: "" name: etl objecttype: DATABASE referenceobject: "" startbyte: 1246 endbyte: 1287 - schema: "" name: etl objecttype: DATABASE METADATA referenceobject: "" startbyte: 1287 endbyte: 1326 predataentries: - schema: employees name: employees objecttype: SCHEMA referenceobject: "" startbyte: 1326 endbyte: 1352 - schema: employees name: employees objecttype: SCHEMA referenceobject: "" startbyte: 1352 endbyte: 1395 - schema: public name: public objecttype: SCHEMA referenceobject: "" startbyte: 1395 endbyte: 1396 - schema: public name: public objecttype: SCHEMA referenceobject: "" startbyte: 1396 endbyte: 1452 - schema: public name: public objecttype: SCHEMA referenceobject: "" startbyte: 1452 endbyte: 1492 - schema: public name: public objecttype: SCHEMA referenceobject: "" startbyte: 1492 endbyte: 1654 - schema: employees name: employee_gender objecttype: TYPE referenceobject: "" startbyte: 1656 endbyte: 1720 - schema: employees name: employee_gender objecttype: TYPE referenceobject: "" startbyte: 1720 endbyte: 1777 - schema: public name: gender objecttype: TYPE referenceobject: "" startbyte: 1777 endbyte: 1829 - schema: public name: gender objecttype: TYPE referenceobject: "" startbyte: 1829 endbyte: 1874 - schema: employees name: id_employee_seq objecttype: SEQUENCE referenceobject: "" startbyte: 1874 endbyte: 2054 - schema: employees name: id_employee_seq objecttype: SEQUENCE referenceobject: "" startbyte: 2054 endbyte: 2115 - schema: public name: t1 objecttype: TABLE referenceobject: "" startbyte: 2115 endbyte: 2191 - schema: public name: t1 objecttype: TABLE referenceobject: "" startbyte: 2191 endbyte: 2233 - schema: public name: testdblink objecttype: TABLE referenceobject: "" startbyte: 2233 endbyte: 2310 - schema: public name: testdblink objecttype: TABLE referenceobject: "" startbyte: 2310 endbyte: 2360 - schema: employees name: department objecttype: TABLE referenceobject: "" startbyte: 2360 endbyte: 2490 - schema: employees name: department objecttype: TABLE referenceobject: "" startbyte: 2490 endbyte: 2543 - schema: employees name: department_employee objecttype: TABLE referenceobject: "" startbyte: 2543 endbyte: 2739 - schema: employees name: department_employee objecttype: TABLE referenceobject: "" startbyte: 2739 endbyte: 2801 - schema: employees name: department_manager objecttype: TABLE referenceobject: "" startbyte: 2801 endbyte: 2996 - schema: employees name: department_manager objecttype: TABLE referenceobject: "" startbyte: 2996 endbyte: 3057 - schema: employees name: employee objecttype: TABLE referenceobject: "" startbyte: 3057 endbyte: 3377 - schema: employees name: employee objecttype: TABLE referenceobject: "" startbyte: 3377 endbyte: 3428 - schema: employees name: salary objecttype: TABLE referenceobject: "" startbyte: 3428 endbyte: 3598 - schema: employees name: salary objecttype: TABLE referenceobject: "" startbyte: 3598 endbyte: 3647 - schema: employees name: title objecttype: TABLE referenceobject: "" startbyte: 3647 endbyte: 3821 - schema: employees name: title objecttype: TABLE referenceobject: "" startbyte: 3821 endbyte: 3869 - schema: public name: sales objecttype: TABLE referenceobject: "" startbyte: 3869 endbyte: 3999 - schema: public name: sales objecttype: TABLE referenceobject: "" startbyte: 3999 endbyte: 4044 - schema: public name: t2 objecttype: TABLE referenceobject: "" startbyte: 4044 endbyte: 4163 - schema: public name: t2 objecttype: TABLE referenceobject: "" startbyte: 4163 endbyte: 4205 - schema: public name: t3 objecttype: TABLE referenceobject: "" startbyte: 4205 endbyte: 4302 - schema: public name: t3 objecttype: TABLE referenceobject: "" startbyte: 4302 endbyte: 4344 - schema: employees name: idx_16979_primary objecttype: CONSTRAINT referenceobject: employees.department startbyte: 4344 endbyte: 4435 - schema: employees name: idx_16982_primary objecttype: CONSTRAINT referenceobject: employees.department_employee startbyte: 4435 endbyte: 4559 - schema: employees name: idx_16985_primary objecttype: CONSTRAINT referenceobject: employees.department_manager startbyte: 4559 endbyte: 4682 - schema: employees name: idx_16988_primary objecttype: CONSTRAINT referenceobject: employees.employee startbyte: 4682 endbyte: 4771 - schema: employees name: idx_16991_primary objecttype: CONSTRAINT referenceobject: employees.salary startbyte: 4771 endbyte: 4878 - schema: employees name: idx_16994_primary objecttype: CONSTRAINT referenceobject: employees.title startbyte: 4878 endbyte: 4991 - schema: public name: t2_pkey objecttype: CONSTRAINT referenceobject: public.t2 startbyte: 4991 endbyte: 5061 - schema: employees name: dept_emp_ibfk_2 objecttype: CONSTRAINT referenceobject: employees.department_employee startbyte: 5061 endbyte: 5243 - schema: employees name: dept_manager_ibfk_2 objecttype: CONSTRAINT referenceobject: employees.department_manager startbyte: 5243 endbyte: 5428 - schema: employees name: dept_emp_ibfk_1 objecttype: CONSTRAINT referenceobject: employees.department_employee startbyte: 5428 endbyte: 5606 - schema: employees name: dept_manager_ibfk_1 objecttype: CONSTRAINT referenceobject: employees.department_manager startbyte: 5606 endbyte: 5787 - schema: employees name: salaries_ibfk_1 objecttype: CONSTRAINT referenceobject: employees.salary startbyte: 5787 endbyte: 5952 - schema: employees name: titles_ibfk_1 objecttype: CONSTRAINT referenceobject: employees.title startbyte: 5952 endbyte: 6114 - schema: employees name: id_employee_seq objecttype: SEQUENCE OWNER referenceobject: employees.employee startbyte: 6114 endbyte: 6189 postdataentries: - schema: employees name: idx_16982_dept_no objecttype: INDEX referenceobject: employees.department_employee startbyte: 6189 endbyte: 6283 - schema: employees name: idx_16985_dept_no objecttype: INDEX referenceobject: employees.department_manager startbyte: 6283 endbyte: 6376 statisticsentries: [] dataentries: - schema: public name: t1 oid: 16391 attributestring: (tid,info) rowscopied: 2000 partitionroot: "" isreplicated: false - schema: public name: testdblink oid: 16858 attributestring: (a,b) rowscopied: 2 partitionroot: "" isreplicated: false - schema: employees name: department oid: 16941 attributestring: (id,dept_name) rowscopied: 9 partitionroot: "" isreplicated: false - schema: employees name: department_employee oid: 16944 attributestring: (employee_id,department_id,from_date,to_date) rowscopied: 331603 partitionroot: "" isreplicated: false - schema: employees name: department_manager oid: 16947 attributestring: (employee_id,department_id,from_date,to_date) rowscopied: 24 partitionroot: "" isreplicated: false - schema: employees name: employee oid: 16950 attributestring: (id,birth_date,first_name,last_name,gender,hire_date) rowscopied: 300024 partitionroot: "" isreplicated: false - schema: employees name: salary oid: 16955 attributestring: (employee_id,amount,from_date,to_date) rowscopied: 2844047 partitionroot: "" isreplicated: false - schema: employees name: title oid: 16958 attributestring: (employee_id,title,from_date,to_date) rowscopied: 443308 partitionroot: "" isreplicated: false - schema: public name: sales oid: 17007 attributestring: (item,year,quantity) rowscopied: 7 partitionroot: "" isreplicated: false - schema: public name: t2 oid: 17010 attributestring: (id,balance,status) rowscopied: 0 partitionroot: "" isreplicated: false - schema: public name: t3 oid: 17018 attributestring: (name,amount) rowscopied: 5 partitionroot: "" isreplicated: false incrementalmetadata: ao: {} [gpadmin@gp-mdw 20221214172018]$ cat gpbackup_20221214172018_metadata.sql SET client_encoding = 'UTF8'; ALTER RESOURCE QUEUE pg_default WITH (ACTIVE_STATEMENTS=20); ALTER RESOURCE GROUP admin_group SET CPU_RATE_LIMIT 1; ALTER RESOURCE GROUP admin_group SET MEMORY_LIMIT 1; ALTER RESOURCE GROUP default_group SET CPU_RATE_LIMIT 1; ALTER RESOURCE GROUP default_group SET MEMORY_LIMIT 1; ALTER RESOURCE GROUP default_group SET MEMORY_LIMIT 0; ALTER RESOURCE GROUP default_group SET MEMORY_SHARED_QUOTA 80; ALTER RESOURCE GROUP default_group SET MEMORY_SPILL_RATIO 0; ALTER RESOURCE GROUP default_group SET CONCURRENCY 20; ALTER RESOURCE GROUP default_group SET CPU_RATE_LIMIT 30; ALTER RESOURCE GROUP admin_group SET MEMORY_LIMIT 10; ALTER RESOURCE GROUP admin_group SET MEMORY_SHARED_QUOTA 80; ALTER RESOURCE GROUP admin_group SET MEMORY_SPILL_RATIO 0; ALTER RESOURCE GROUP admin_group SET CONCURRENCY 10; ALTER RESOURCE GROUP admin_group SET CPU_RATE_LIMIT 10; CREATE ROLE gpadmin; ALTER ROLE gpadmin WITH SUPERUSER INHERIT CREATEROLE CREATEDB LOGIN REPLICATION PASSWORD 'md5b44a9b06d576a0b083cd60e5f875cf48' RESOURCE QUEUE pg_default RESOURCE GROUP admin_group CREATEEXTTABLE (protocol='http') CREATEEXTTABLE (protocol='gpfdist', type='readable') CREATEEXTTABLE (protocol='gpfdist', type='writable'); CREATE DATABASE etl TEMPLATE template0; ALTER DATABASE etl OWNER TO gpadmin; CREATE SCHEMA employees; ALTER SCHEMA employees OWNER TO gpadmin; COMMENT ON SCHEMA public IS 'standard public schema'; ALTER SCHEMA public OWNER TO gpadmin; REVOKE ALL ON SCHEMA public FROM PUBLIC; REVOKE ALL ON SCHEMA public FROM gpadmin; GRANT ALL ON SCHEMA public TO PUBLIC; GRANT ALL ON SCHEMA public TO gpadmin; CREATE TYPE employees.employee_gender AS ENUM ( 'M', 'F' ); ALTER TYPE employees.employee_gender OWNER TO gpadmin; CREATE TYPE public.gender AS ENUM ( 'M', 'F' ); ALTER TYPE public.gender OWNER TO gpadmin; CREATE SEQUENCE employees.id_employee_seq START WITH 1 INCREMENT BY 1 NO MAXVALUE NO MINVALUE CACHE 1; SELECT pg_catalog.setval('employees.id_employee_seq', 499999, true); ALTER SEQUENCE employees.id_employee_seq OWNER TO gpadmin; CREATE TABLE public.t1 ( tid integer, info text ) DISTRIBUTED BY (tid); ALTER TABLE public.t1 OWNER TO gpadmin; CREATE TABLE public.testdblink ( a integer, b text ) DISTRIBUTED BY (a); ALTER TABLE public.testdblink OWNER TO gpadmin; CREATE TABLE employees.department ( id character(4) NOT NULL, dept_name character varying(40) NOT NULL ) DISTRIBUTED BY (id); ALTER TABLE employees.department OWNER TO gpadmin; CREATE TABLE employees.department_employee ( employee_id bigint NOT NULL, department_id character(4) NOT NULL, from_date date NOT NULL, to_date date NOT NULL ) DISTRIBUTED BY (employee_id); ALTER TABLE employees.department_employee OWNER TO gpadmin; CREATE TABLE employees.department_manager ( employee_id bigint NOT NULL, department_id character(4) NOT NULL, from_date date NOT NULL, to_date date NOT NULL ) DISTRIBUTED BY (employee_id); ALTER TABLE employees.department_manager OWNER TO gpadmin; CREATE TABLE employees.employee ( id bigint DEFAULT (nextval('employees.id_employee_seq'::regclass)) NOT NULL, birth_date date NOT NULL, first_name character varying(14) NOT NULL, last_name character varying(16) NOT NULL, gender employees.employee_gender NOT NULL, hire_date date NOT NULL ) DISTRIBUTED BY (id); ALTER TABLE employees.employee OWNER TO gpadmin; CREATE TABLE employees.salary ( employee_id bigint NOT NULL, amount bigint NOT NULL, from_date date NOT NULL, to_date date NOT NULL ) DISTRIBUTED BY (employee_id); ALTER TABLE employees.salary OWNER TO gpadmin; CREATE TABLE employees.title ( employee_id bigint NOT NULL, title character varying(50) NOT NULL, from_date date NOT NULL, to_date date ) DISTRIBUTED BY (employee_id); ALTER TABLE employees.title OWNER TO gpadmin; CREATE TABLE public.sales ( item character varying(10), year character varying(4), quantity integer ) DISTRIBUTED BY (item); ALTER TABLE public.sales OWNER TO gpadmin; CREATE TABLE public.t2 ( id integer NOT NULL, balance numeric, status character varying(1) ) DISTRIBUTED BY (id); ALTER TABLE public.t2 OWNER TO gpadmin; CREATE TABLE public.t3 ( name character varying(20), amount numeric ) DISTRIBUTED BY (name); ALTER TABLE public.t3 OWNER TO gpadmin; ALTER TABLE ONLY employees.department ADD CONSTRAINT idx_16979_primary PRIMARY KEY (id); ALTER TABLE ONLY employees.department_employee ADD CONSTRAINT idx_16982_primary PRIMARY KEY (employee_id, department_id); ALTER TABLE ONLY employees.department_manager ADD CONSTRAINT idx_16985_primary PRIMARY KEY (employee_id, department_id); ALTER TABLE ONLY employees.employee ADD CONSTRAINT idx_16988_primary PRIMARY KEY (id); ALTER TABLE ONLY employees.salary ADD CONSTRAINT idx_16991_primary PRIMARY KEY (employee_id, from_date); ALTER TABLE ONLY employees.title ADD CONSTRAINT idx_16994_primary PRIMARY KEY (employee_id, title, from_date); ALTER TABLE ONLY public.t2 ADD CONSTRAINT t2_pkey PRIMARY KEY (id); ALTER TABLE ONLY employees.department_employee ADD CONSTRAINT dept_emp_ibfk_2 FOREIGN KEY (department_id) REFERENCES employees.department(id) ON UPDATE RESTRICT ON DELETE CASCADE; ALTER TABLE ONLY employees.department_manager ADD CONSTRAINT dept_manager_ibfk_2 FOREIGN KEY (department_id) REFERENCES employees.department(id) ON UPDATE RESTRICT ON DELETE CASCADE; ALTER TABLE ONLY employees.department_employee ADD CONSTRAINT dept_emp_ibfk_1 FOREIGN KEY (employee_id) REFERENCES employees.employee(id) ON UPDATE RESTRICT ON DELETE CASCADE; ALTER TABLE ONLY employees.department_manager ADD CONSTRAINT dept_manager_ibfk_1 FOREIGN KEY (employee_id) REFERENCES employees.employee(id) ON UPDATE RESTRICT ON DELETE CASCADE; ALTER TABLE ONLY employees.salary ADD CONSTRAINT salaries_ibfk_1 FOREIGN KEY (employee_id) REFERENCES employees.employee(id) ON UPDATE RESTRICT ON DELETE CASCADE; ALTER TABLE ONLY employees.title ADD CONSTRAINT titles_ibfk_1 FOREIGN KEY (employee_id) REFERENCES employees.employee(id) ON UPDATE RESTRICT ON DELETE CASCADE; ALTER SEQUENCE employees.id_employee_seq OWNED BY employees.employee.id; CREATE INDEX idx_16982_dept_no ON employees.department_employee USING btree (department_id); CREATE INDEX idx_16985_dept_no ON employees.department_manager USING btree (department_id);[gpadmin@gp-mdw 20221214172018]$Flags:--backup-dir string `可选参数`, 写入备份文件的绝对路径,不能采用相对路径,如果您指定了该路径,备份操作会将所有备份文件(包括元数据文件)都放到这个目录下。如果您不指定这个选项,元数据文件会保存到Master节点的 `$MASTER_DATA_DIRECTORY/backups/YYYYMMDD/YYYYMMDDhhmmss/` 目录下,数据文件会存放在segment主机的 `<seg_dir>/backups/YYYYMMDD/ YYYYMMDDhhmmss/`目录下。该选项不能与 `--plugin-config` 选项共同使用。 --compression-level int `可选参数`, 压缩级别。大家需要注意,在当前随GPDB版本发布的gpbackup包中,只支持gzip压缩格式,如果您自行编译gpbackup,可以看到已经增加了 `compression-type` 类型,该类型支持其他的压缩类型。压缩级别的默认值为1,gpbackup在备份时,会默认启用gzip压缩。 --compression-type string `可选参数`, 压缩类型。有效值有 'gzip','zstd',默认为 'gzip',如果要使用 'zstd' 压缩,需要在所有服务器上安装该压缩类型以保证shell可以执行 `zstd` 命令,安装方式参考:https://github.com/facebook/zstd 。--copy-queue-size int `可选参数`, 自行编译最新版本gpbackup带有的参数,该参数只能配合 `--single-data-file` 参数一起使用,当定义了 `--single-data-file` 参数以后,通过执行 `--copy-queue-size` 参数的值来指定gpbackup命令使用COPY命令的个数,默认值为1。 --data-only `可选参数`, 只备份数据,不备份元数据。 --dbname string `必选参数`, 只要进行备份的数据库名称,必须指定,否则会报错,备份无法进行。 --debug `可选参数`, 显示备份过程中详细的debug信息,通常用在排错场景。 --exclude-schema stringArray `可选参数`, 指定备份操作要排除的数据库模式(schema), 如果要排除多个模式,需要多次定义,不支持 `--exclude-schema=schema1,schema2` 的方式。另外该参数与 '--exclude-schema-file, exclude-table, --exclude-table-file, --include-schema, --include-schema-file, --include-table, --include-table-file' 这几个参数不能同时使用。 --exclude-schema-file string `可选参数`, 包含备份操作要排除的数据库模式的文件,每一行为一个模式名,该文件不能包含多余的符号,如果数据库中的模式包含除了:字母、数字和下划线以外的特殊符号,那么请在文件中用双引号进行包裹。该参数与 '--exclude-schema, --exclude-table, --exclude-table-file, --include-schema, --include-schema-file, --include-table, --include-table-file' 这几个参数不能同时使用。 --exclude-table stringArray `可选参数`, 指定备份操作中要排除的表名,该参数与 '--exclude-schema, --exclude-schema-file, --exclude-table-file, --include-schema, --include-schema-file, --include-table, --include-table-file' 这几个参数不能同时使用。指定表名时,必须使用 `<schema-name>.<table-name>` 的格式指定匹配到具体的模式,如果数据库中的模式包含除了:字母、数字和下划线以外的特殊符号,那么请在文件中用双引号进行包裹。另外该参数也支持多次指定。 --exclude-table-file string `可选参数`, 指定文件包含备份操作中要排除的表名,该参数与 '--exclude-schema, --exclude-schema-file, --exclude-table, --include-schema, --include-schema-file, --include-table, --include-table-file' 这几个参数不能同时使用。指定表名时,必须使用 `<schema-name>.<table-name>` 的格式指定匹配到具体的模式,如果数据库中的模式包含除了:字母、数字和下划线以外的特殊符号,那么请在文件中用双引号进行包裹。如果有多个表,需要在文件中分行多次指定。 --from-timestamp string `可选参数`, 指定增量备份的时间戳。被指定的备份必须有增量备份集,如果没有,备份操作会自动创建一个增量备份集;如果被指定的备份是一个增量备份,则备份操作会向备份集增加一个备份。使用该参数时,必须指定参数 `--leaf-partition-data`, 并且不能与`--data-only或--metadata-only`参数一起使用。如果没有任何全量备份存在,则会报错退出备份过程。 --help 显示命令行参数帮助信息。 --include-schema stringArray `可选参数`, 指定备份操作要包含的数据库模式(schema), 如果要包含多个模式,需要多次定义,不支持 `--include-schema=schema1,schema2` 的方式。另外该参数与 '--exclude-schema, --exclude-schema-file, exclude-table, --exclude-table-file, --include-schema-file, --include-table, --include-table-file' 这几个参数不能同时使用。 --include-schema-file string `可选参数`, 包含备份操作要包含的数据库模式的文件,每一行为一个模式名,该文件不能包含多余的符号,如果数据库中的模式包含除了:字母、数字和下划线以外的特殊符号,那么请在文件中用双引号进行包裹。该参数与 '--exclude-schema, --exclude-schema-file, --exclude-table, --exclude-table-file, --include-schema, --include-table, --include-table-file' 这几个参数不能同时使用。 --include-table stringArray `可选参数`, 指定备份操作中要包含的表名,该参数与 '--exclude-schema, --exclude-schema-file, --exclude-table, --exclude-table-file, --include-schema, --include-schema-file, --include-table-file' 这几个参数不能同时使用。指定表名时,必须使用 `<schema-name>.<table-name>` 的格式指定匹配到具体的模式,如果数据库中的模式包含除了:字母、数字和下划线以外的特殊符号,那么请在文件中用双引号进行包裹。另外该参数也支持多次指定。 --include-table-file string `可选参数`, 指定文件包含备份操作中要包含的表名,该参数与 '--exclude-schema, --exclude-schema-file, --exclude-table, --exclude-table-file, --include-schema, --include-schema-file, --include-table' 这几个参数不能同时使用。指定表名时,必须使用 `<schema-name>.<table-name>` 的格式指定匹配到具体的模式,如果数据库中的模式包含除了:字母、数字和下划线以外的特殊符号,那么请在文件中用双引号进行包裹。如果有多个表,需要在文件中分行多次指定。 --incremental `可选参数`, 增量备份功能,增量备份只支持AO表的增量,Heap表不支持增量备份。指定该选项后,会在备份集合中继续增加增量备份。在GPDB里面,备份可以全部都由全量备份构成,也可以由全量备份+增量备份的方式构成,增量备份必须与前面的全量备份组成一个连续的集合,否则无法进行恢复。如果已经做了一个全量备份但是没有增量备份,那该参数会在备份时创建一个增量备份集;如果全量和增量都已经存在了,那么该参数会在现有增量备份集中增加一个最新的备份;另外也可以通过指定 '--from-timestamp' 参数来改变默认行为。 --jobs int `可选参数`, 指定进行表备份过程中的并行任务数,如果不指定,该值默认为1,gpbackup会使用一个任务(即一个数据库连接)进行备份。可以通过增加该值来提升备份速度,如果指定了大于1的值,备份操作会以表为单位进行并发操作,每个表开启一个单独的事务。需要特别注意的是,指定该参数进行并发备份时,不要进行外部程序操作,否则无法保证多表之间的事物一致性。该参数可以与 `--metadata-only,-- single-data-file,--plugin-config` 参数共同使用。 --leaf-partition-data `可选参数`, 为分区表的每一个叶子节点单独创建备份文件,而不是为整个表创建一个备份文件(默认)。使用该参数配合 `--include-table,-- include-table-file,--exclude-table,--exclude-table-file` 参数可以实现包含或排除叶子节点数据的操作。 --metadata-only `可选参数`, 仅备份元数据(即创建数据库对象的DDL语句),不备份任何实际的生产表数据。 --no-compression `可选参数`, 不启用压缩。 --plugin-config string `可选参数`, 指定plugin配置文件位置,该文件是一个有效的YAML文件,用来指定在备份过程中使用的plugin应用的配置信息。由于备份的plugin通常都是为了将备份放到远程存储,所以该选项不能与 `--backup-dir` 同时使用;例如可以使用s3的库将备份文件放到亚马逊S3存储上。也可以通过开放接口自己编写plugin,具体可以参考:https://gpdb.docs.pivotal.io/6-17/admin_guide/managing/backup-plugins.html--quiet `可选参数`, 静默模式,除了warning和error信息都不打印。 --single-data-file `可选参数`, 每个segment的数据备份成一个未见,而不是每个表备份一个文件(默认)。如果指定了该选项,在使用gprestore恢复的时候,不能使用 `--job` 选项进行并发恢复。需要特别注意,如果要使用该参数,需要配合 `gpbackup_helper` 命令一起使用,该命令与gpbackup和gpresotre一起编译生成,需要把这个命令放到所有segment host的greenplum-db/bin目录下。 --verbose `可选参数`, 打印详细日志信息。 --version 打印gpbackup的版本号并退出。 --with-stats `可选参数`, 备份查询计划统计信息。 --without-globals `可选参数`, 不备份全局对象。 标签:endbyte,name,GP,--,备份,gpbackup,objecttype,employees,schema From: https://www.cnblogs.com/chinaops/p/16982863.html