sql脚本与pg_restore命令怎么在postgreSQL中运行(pg restore,postgresql,SQL,开发技术)

时间:2024-04-30 01:18:27 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

    sql%E8%84%9A%E6%9C%AC%E4%B8%8Epg_restore%E5%91%BD%E4%BB%A4%E6%80%8E%E4%B9%88%E5%9C%A8postgreSQL%E4%B8%AD%E8%BF%90%E8%A1%8C

postgreSQL运行sql脚本文件:

psql -d dbname -U username -f (脚本所在位置).sql

用法:

一般选项:

恢复控制选项:

输出

数据恢复

联接选项:

选项 -I, -n, -N, -P, -t, -T, 以及 --section 可以组合使用和指定

多次用于选择多个对象.

希望不要和我一样犯这个低级错误

找到postgresql.conf文件,修改参数lc_messages的值为UTF8

重启PostgreSQL的服务。

----查看服务端字符集:

—查看客户端字符集:

补充:pg_restore及psql恢复数据的用法

恢复一个SQL备份文件并忽略过程中可能发生的所有错误:

恢复一个SQL备份文件,如遇任何错误则立即停止恢复:

将SQL文本中的数据恢复到某个指定的database:

功能:

(1)支持并行恢复,使用-j选项可以控制并行恢复的线程数。多个恢复线程可以并行处理,每个线程处理一张表。该模式可以显著提高恢复速度。

(2)可以使用pg_restore扫描备份文件来生成一张备份内容列表,通过该列表可以确认备份红包含了哪些内容。还可以通过编辑该内容列表来控制恢复哪些内容。

(3)pg_dump支持选择性地仅备份部分对象以节省备份时间,类似的,pg_restore也支持选择性的仅恢复部分对象,不管备份文件本身是全库备份还是部分对象的备份都没有问题。

(4)pg_restore的大部分功能是向后兼容的,即支持将老版本PostgreSQL生产的备份数据恢复到新版本的PostgreSQL中。

在使用pg_restore执行恢复动作之前,请先创建目标数据库:

然后执行恢复:

如果备份和恢复时使用的database同名,则可以通过加--create选项省去单独建库的过程,如下:

注:如果指定了--create选项,那么恢复出来的数据库名就会默认采用备份时的数据库名,不允许改名。如果还同时指定了--dbname选项,那么此时连接的数据库名一定不能是待恢复的数据库名,因为要恢复数据库之前必然要建数据库,而

要建数据库之前必然要先连到某个已存在的数据库,--dbname选项指定的就是建立被恢复的数据库之前先连到哪个数据库,所以必然不能与待恢复的数据库同名,我们一般指定先连到postgres数据库。

9.2版或更新版本的pg_restore支持--section选项,加上该选项后可以实现仅恢复表结构而不恢复表数据。具体做法是先创建目标恢复数据库:

然后使用pg_restore:

本文:sql脚本与pg_restore命令怎么在postgreSQL中运行的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:​angular怎么实现tab栏切换下一篇:

6 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18