对于PostgreSQL数据库的备份按照官方手册的方法之一就是采用“SQL Dump”的方式(另一种方式是直接备份文件系统中的文件,可参考官方手册)。

基本用法如下:

pg_dump dbname > outfile

首先,正如命令行所展示的,pg_dump是将命令结果输出到标准输出中。

其次,pg_dump并不影响数据库工作过程中的其他操作(主要是关心pg_dump会不会产生读写锁(read lock、write lock)),但也有例外,那就是哪些需要使用互斥锁(exclusive lock)的操作,如ALTER TABLE。

由于对于运维而言,通常需要使用脚本来执行数据库备份,而不是每天手动执行命令行并输入密码备份,因此特地查了一下文档,根据文档“31.15. The Password File”节的说明,可以在用户目录下建一个配置文件,提前将密码写入这个配置文件中,配置文件的格式如下:

hostname:port:database:username:password

需要将此文件放在执行pg_dump命令的用户目录下,保存成.pgpass 文件,并且权限为600,否则PostgreSQL就会报

WARNING: password file "/root/.pgpass" has group or world access; permissions should be u=rw (0600) or less

注意:如果PostgreSQL数据库的数据库表结构(database schema)依赖OIDs(例如外键),则pg_dump需要加-o选项。

PostgreSQL数据库的导出速度还是比较快的,导出3万多行不到1s。

PostgreSQL导出数据库命令行实例:

pg_dump -U confluence -d confluence -h 127.0.0.1 -o >/tmp/tmp_confluence_postgresql.sql

其中,

-U表示执行用户

-d表示数据库

-h表示主机

-o表示支持OLDs

注:如果不想使用.pgpass 文件,则可以在命令行中添加-W选项,意思是输入密码再执行。

附录:PostgreSQL数据库一些适合运维的基本操作

登录PostgreSQL数据库:

psql -U dbuser -d exampledb -h 127.0.0.1 -p 5432

如果也不想输入密码,则可以执行:

psql "host=127.0.0.1 hostaddr=127.0.0.1 port=5432 user=yourloginname password=yoursecret"

列出数据库:

\l

退出数据库console:

\q

tag:PostgreSQL数据库备份,PostgreSQL命令行不输入密码,PostgreSQL数据库基本操作,PostgreSQL数据库导出,PostgreSQL运维教程

--end--

------------------------------------华丽丽的分割线------------------------------------

如何在CentOS 7/6.5/6.4 下安装PostgreSQL 9.3 与 phpPgAdmin  http://www.linuxidc.com/Linux/2014-12/110108.htm

------------------------------------华丽丽的分割线------------------------------------

PostgreSQL 的详细介绍:请点这里

PostgreSQL 的下载地址:请点这里

linux登录pg数据库命令,PostgreSQL数据库pg_dump命令行不输入密码的方法相关推荐

  1. linux登录pg数据库命令,postgreSql基础命令及linux下postgreSql命令

    (1)用户实用程序: createdb 创建一个新的Postgresql的数据库(和sql语句:CREATE DATABASE 相同) createuser 创建一个新的Postgresql的用户(和 ...

  2. linux备份pg数据库命令,如何备份PostgreSQL数据库 常见的几个备份命令使用

    一般我们建站使用较多的还是固定开源CMS程序,且基本上也使用的是PHP+MYSQL程序,所以数据库上较多的还是使用的MYSQL数据库.但是前几天老左有遇到一个网友他使用的是PostgreSQL数据库, ...

  3. exp oracle所有数据库命令,oracle数据库exp命令

    通过exp命令对Oracle数据库进行备份操作(提供两种情况的备份:备份本地,备份远程的数据库) 通过exp命令可以对Oracle数据库进行备份操作,其命令含义是:exp 用户名/密码@数据库所在ip ...

  4. mysql进入数据库命令_mysql 数据库基础命令

    数据库命令: 进入 mysql 库; use mysql; 查看用户权限 select * from user where user='root' \G; 创建数据库 create database ...

  5. 在Windows和Linux系统上,用C语言实现命令行下输入密码回显星号和完全隐藏密码

    本篇目录 引子 在Windows 上实现 在Linux上实现 回显星号 代码解读 运行 完全隐藏 运行 引子 在Windows系统上,当我们使用命令行和MySQL进行交互时,第一步就是要输入密码: - ...

  6. linux查看nbu数据库命令,NBU基本常用命令

    Veritas常用命令: 1. 查看当有运行的任务 bpdbjobs –report | grep Active 2. 停止任务 bpdbjobs –cancel PID (包括主任务和子任务) 3. ...

  7. linux修改数据库内容命令,linux中的数据库命令

    linux中的数据库命令包括链接,重启,关闭等等.下面由学习啦小编为大家整理了linux下的数据库命令的相关知识,希望对大家有帮助! 一.linux下启动mysql数据库的命令 1. mysqladm ...

  8. oracle12数据库重启命令,linux重启oracle数据库命令

    Linux中可以通过相关命令重启oracle数据库,下面由学习啦小编为大家整理了linux重启oracle数据库命令和方法的相关知识,希望对大家有帮助! linux重启oracle数据库命令和方法1 ...

  9. linux源码编译-安装postgresql数据库(中标麒麟+龙芯CPU)

    linux源码编译-安装postgresql数据库(中标麒麟+龙芯CPU) 一.查看yum源中pgsql版本 二.安装readline-devel 三.下载pgsql库的源码 四.解压下载的源码.co ...

最新文章

  1. HYSBZ - 1798 Seq 维护序列seq 线段树lazy标记
  2. AI犯错谁之过?切勿盲目相信之
  3. 如何在Git中克隆所有远程分支?
  4. WebX5 button tabs的bind-text属性设置
  5. 区间数计算之Python实现
  6. ROS单内网服务器源IP限速\单个下载链接限速
  7. java比较炫的小程序_推荐三款私藏多年的微信小程序
  8. CDN价格战外P2P重获关注,谁才是幕后推手
  9. 如何创建xsl文件 xml_EXCEL知识分享 I 连载如何快速创建XML文件
  10. Dynamics CRM2013 业务规则的新建、激活与删除
  11. Android编码规范05
  12. C#程序之二 -- 数独小游戏(1. UI设计)
  13. python tolist()方法
  14. 「硬见小百科」很全的二极管干货
  15. 4月13日云栖精选夜读:雪佛兰和阿里妈妈撒红包雨!到店率增加20%是如何做到的?...
  16. 【历史上的今天】8 月 12 日:IBM 首款个人计算机问世;Tumblr 被收购
  17. 2013年IT TOP100
  18. 数据处理技巧(3):excel打开txt数据,出现多个数据在同一个单元格的解决办法
  19. java控制台如何输入一段代码
  20. 键盘定位板图纸_客制化键盘

热门文章

  1. 实战:Gateway API-2022.2.13
  2. 阿里架构专家教你打通Git任督二脉,20分钟搞定Git工作原理
  3. 数据科学入门三个月的一些随想
  4. C#连接达梦数据库基础功公共类
  5. 第四章 浮动 ① 笔记
  6. mac wordcloud 字体设置
  7. Python爬虫练习:爬取软科世界大学学术排名
  8. mysql的default_sql语句中default是什么意思?
  9. [报错] SyntaxError: Missing parentheses in call to ‘exec‘
  10. COMSOL中导出美观的三维几何结构