{{ v.name }}
{{ v.cls }}类
{{ v.price }} ¥{{ v.price }}
ppas数据库备份不同于普通的postgresql数据库的备份,因为ppas数据库是兼容oracle数据库的,所以会涉及到同义词、包、存储过程等,这个时候用postgresql社区的备份与恢复工具时,在恢复时上述提及到的同义词等就不会恢复过去。而且,ppas数据库因为支持clob字符大对象类型等,而postgresql数据库不支持,在恢复的过程也会因为这个原因而导致某些存储过程或者表创建失败。所以,这边如果在本地恢复的话,一定要安装ppas数据库服务器(ppasmeta),用ppas数据库自带的备份与恢复工具进行您的工作(如果是备份或者恢复远程数据库,您首先要获取权限,否则备份的时候会报一个锁表错误;而且用下述的工具时,用户必须是超级用户)。
pg_dump把一个数据库转储为纯文本文件或者是其它格式.
用法:pg_dump[选项]...[数据库名字]
一般选项:-f,--file=filename输出文件或目录名-f,--format=c|d|t|p输出文件格式(定制,目录,tar)明文(默认值))-j,--jobs=num执行多个并行任务进行备份转储工作-v,--verbose详细模式-v,--version输出版本信息,然后退出-z,--compress=0-9被压缩格式的压缩级别--lock-wait-timeout=timeout在等待表锁超时后操作失败-?,--help显示此帮助,然后退出
控制输出内容选项:-a,--data-only只转储数据,不包括模式-b,--blobs在转储中包括大对象-c,--clean在重新创建之前,先清除(删除)数据库对象-c,--create在转储中包括命令,以便创建数据库-e,--encoding=encoding转储以encoding形式编码的数据-n,--schema=schema只转储指定名称的模式-n,--exclude-schema=schema不转储已命名的模式-o,--oids在转储中包括oid-o,--no-owner在明文格式中,忽略恢复对象所属者
-s,--schema-only只转储模式,不包括数据-s,--superuser=name在明文格式中使用指定的超级用户名-t,--table=table只转储指定名称的表-t,--exclude-table=table不转储指定名称的表-x,--no-privileges不要转储权限(grant/revoke)--binary-upgrade只能由升级工具使用--column-inserts以带有列名的insert命令形式转储数据--disable-dollar-quoting取消美元(符号)引号,使用sql标准引号--disable-triggers在只恢复数据的过程中禁用触发器--exclude-table-data=table不转储指定名称的表中的数据--if-exists当删除对象时使用ifexists--inserts以insert命令,而不是copy命令的形式转储数据--no-security-labels不转储安全标签的分配--no-synchronized-snapshots在并行工作集中不使用同步快照--no-tablespaces不转储表空间分配信息--no-unlogged-table-data不转储没有日志的表数据--quote-all-identifiers所有标识符加引号,即使不是关键字--section=section备份命名的节(数据前,数据,及数据后)--serializable-deferrable等到备份可以无异常运行--use-set-session-authorization使用sessionauthorization命令代替alterowner命令来设置所有权
联接选项:-d,--dbname=dbname对数据库dbname备份-h,--host=主机名数据库服务器的主机名或套接字目录-p,--port=端口号数据库服务器的端口号-u,--username=名字以指定的数据库用户联接-w,--no-password永远不提示输入口令-w,--password强制口令提示(自动)--role=rolename在转储前运行setrole
如果没有提供数据库名字,那么使用pgdatabase环境变量的数值.
恢复工具:pg_restore
pg_restore从一个归档中恢复一个由pg_dump创建的postgresql数据库.
用法:pg_restore[选项]...[文件名]
一般选项:-d,--dbname=名字连接数据库名字-f,--file=文件名输出文件名-f,--format=c|d|t备份文件格式(应该自动进行)-l,--list打印归档文件的toc概述-v,--verbose详细模式-v,--version输出版本信息,然后退出-?,--help显示此帮助,然后退出
恢复控制选项:-a,--data-only只恢复数据,不包括模式-c,--clean在重新创建之前,先清除(删除)数据库对象-c,--create创建目标数据库-e,--exit-on-error发生错误退出,默认为继续-i,--index=name恢复指定名称的索引-j,--jobs=num执行多个并行任务进行恢复工作-l,--use-list=filename从这个文件中使用指定的内容表排序输出-n,--schema=name在这个模式中只恢复对象-o,--no-owner不恢复对象所属者-p,--function=name(args)恢复指定名字的函数-s,--schema-only只恢复模式,不包括数据-s,--superuser=name使用指定的超级用户来禁用触发器-t,--table=name恢复命名表-t,--trigger=name恢复指定名字的触发器-x,--no-privileges跳过处理权限的恢复(grant/revoke)-1,--single-transaction作为单个事务恢复--disable-triggers在只恢复数据的过程中禁用触发器--if-exists当删除对象时使用ifexists--no-data-for-failed-tables对那些无法创建的表不进行数据恢复--no-security-labels不恢复安全标签信息--no-tablespaces不恢复表空间的分配信息--section=section恢复命名节(数据前、数据及数据后)--use-set-session-authorization使用sessionauthorization命令代替alterowner命令来设置所有权
联接选项:-h,--host=主机名数据库服务器的主机名或套接字目录-p,--port=端口号数据库服务器的端口号-u,--username=名字以指定的数据库用户联接-w,--no-password永远不提示输入口令-w,--password强制口令提示(自动)--role=rolename在恢复前执行setrole操作
选项-i,-n,-p,-t,-t,以及--section可以组合使用和指定多次用于选择多个对象.
如果没有提供输入文件名,则使用标准输入.
备注:恢复前,数据库环境中的角色(role)要设置好。
我的备份与恢复命令:
pg_dump-h(ipor域名)-p3432-fc-b-npublic-s-v-uhgic_corehgic>ppasdatabase.backup