PostgreSQL数据库备份和恢复

PostgreSQL数据库备份和恢复一、备份1、cmd到PostgreSQL安装目录bin下2、备份命令pg_dump-h192.168.100.23-Upostgrespostgres>D:\postgres.bak3、指令解释如上命令,pg_dump是备份数据库指令;10.194.227.231是数据库的ip地址;postgres是数据库的用户名;postgres是数据库名;>意思是导出到指定目录;4、图文并茂备份二、恢复1、备份命令psql

大家好,又见面了,我是你们的朋友全栈君。

? 作者简介:哪吒,CSDN2021博客之星亚军?、新星计划导师✌、博客专家?

? 哪吒多年工作总结:Java学习路线总结,搬砖工逆袭Java架构师

? 关注公众号【哪吒编程】,回复1024,获取Java学习路线思维导图、大厂面试真题、加入万粉计划交流群、一起学习进步

目录

一、bak方式备份和恢复

(一)备份

1、cmd到PostgreSQL安装目录bin下

2、备份命令

3、指令解释

4、图文并茂

(二)恢复

1、恢复命令

2、指令解释

3、图文并茂

(三)Linux中PostgreSQL数据库备份和恢复

1、备份

2、恢复

二、sql方式备份和恢复


一、bak方式备份和恢复

(一)备份

1、cmd到PostgreSQL安装目录bin下

2、备份命令

pg_dump -h 192.168.100.23 -U postgres postgres > D:\postgres.bak

3、指令解释

如上命令,
pg_dump 是备份数据库指令;
10.194.227.231是数据库的ip地址;
postgres 是数据库的用户名;
postgres 是数据库名;
> 意思是导出到指定目录;

4、图文并茂

备份

PostgreSQL数据库备份和恢复

PostgreSQL数据库备份和恢复

(二)恢复

1、恢复命令

psql -h localhost -U postgres -d test < D:\postgres.bak

2、指令解释

如上命令,
psql 是恢复数据库指令;
localhost是要恢复的数据库的ip地址;
postgres 是数据库的用户名;
test 是数据库名;
> 意思是导出到指定目录;

3、图文并茂

(1)数据导入并解决乱码问题

PostgreSQL数据库备份和恢复

打开cmd窗口,直接输入chcp 65001即可;

PostgreSQL数据库备份和恢复

(2)导入数据

PostgreSQL数据库备份和恢复

(三)Linux中PostgreSQL数据库备份和恢复

在linux里依然有效。有一个值得注意的是:如果直接进入PostgreSQL的安装目录bin下,执行命令,可能会出现 找不到pg_dump,psql的现象,我们在可以这样:

1、备份

/opt/PostgreSQL/9.5/bin/pg_dump -h 164.82.233.54 -U postgres databasename > databasename.bak

2、恢复

/opt/PostgreSQL/9.5/bin/psql -h localhost -U postgres -d databasename < databasename.bak

二、sql方式备份和恢复

这里我们用到的工具是pg_dump和pg_dumpall。

这种方式可以在数据库正在使用的时候进行完整一致的备份,并不阻塞其它用户对数据库的访问。它会产生一个脚本文件,里面包含备份开始时,已创建的各种数据库对象的SQL语句和每个表中的数据。可以使用数据库提供的工具pg_dumpall和pg_dump来进行备份。pg_dump只备份数据库集群中的某个数据库的数据,它不会导出角色和表空间相关的信息,因为这些信息是整个数据库集群共用的,不属于某个单独的数据库。pg_dumpall,对集簇中的每个数据库调用pg_dump来完成该工作,还会还转储对所有数据库公用的全局对象(pg_dump不保存这些对象)。 目前这包括适数据库用户和组、表空间以及适合所有数据库的访问权限等属性。

例如,在我的计算机上,可使用如下命令对名为dbname的数据库进行备份:

 pg_dump  –h 127.0.0.1  -p  5432  -U  postgres -c  -C –f  dbname.sql  dbname

使用如下命令可对全部pg数据库进行备份。

pg_dumpall –h 127.0.0.1 –p 5432 -U postgres –c  -C –f db_bak.sql

恢复方式很简单。执行恢复命令即可:

psql –h 127.0.0.1 -p 5432 -U postgres –f db_bak.sql

 

? 作者简介:哪吒,CSDN2021博客之星亚军?、新星计划导师✌、博客专家?

? 哪吒多年工作总结:Java学习路线总结,搬砖工逆袭Java架构师

? 关注公众号【哪吒编程】,回复1024,获取Java学习路线思维导图、大厂面试真题、加入万粉计划交流群、一起学习进步

PostgreSQL数据库备份和恢复

关注公众号,回复1024,获取Java学习路线思维导图、加入万粉计划交流群

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/146373.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pycharm代码特效插件_pycharm插件在哪

    pycharm代码特效插件_pycharm插件在哪相信对于不少的Python程序员们都是用Pycharm作为开发时候的IDE来使用的,今天小编来分享几个好用到爆的Pycharm插件,在安装上之后,你的编程效率、工作效率都能够得到极大地提升…

    2022年8月27日
  • JavaScript表单提交「建议收藏」

    JavaScript表单提交「建议收藏」表单提交在前端编程阶段中也是一个重点。它是由页面数据保存到后台数据库的重要枢纽,通过表单提交的方式将数据上传到数据库进行保存。同时这些数据也包含用户信息、统计信息、日志信息等等。数据的信息不同,上传的方式也不同。在JavaScript中有四种种表单提交的方式:一、 Form表单手动提交(get与post)在没有任何Js代码的影响下,Form表单本身是自带提交功能的。在form元素标签上有两个…

    2022年10月7日
  • 检查文件是否有更新,监控文件状态

    检查文件是否有更新,监控文件状态

    2021年9月17日
  • hive:函数:length[通俗易懂]

    hive:函数:length[通俗易懂]length函数:语法:length(stringA) 返回值:int 说明:返回字符串A的长度如:***wherelength(name)>2

    2022年5月10日
  • Java—网络编程

    Java—网络编程1.网络编程的基本概念1.1网络的概念网络:一组相互连接的计算机,多台计算机组成,使用物理线路进行连接1.2网络连接的功能1.3网络编程的三要素1)IP地址:唯一标识网络上的每一台计算机,两台计算机之间通信的必备要素。2)端口号:计算机中应用的标号(代表一个应用程序),0-1024系统使用或保留端口,端口号占2个字节,所以有效端口0-65535.3)通信协议:通信的规则TCP,UDP4)注意:在通信协议相同的情况下,端口号才是唯一的。2.IP_端口_Scoket含义2.1IP地

    2022年7月8日
  • 零基础学Java(6)控制流程

    零基础学Java(6)控制流程控制流程与任何程序设计语言一样,Java使用条件语句和循环结构确定控制流程。块作用域我们首先要了解块(block)的概念。块是指由若干条Java语句组成的语句,并用一对大括号括起来。块确定了变

    2022年8月7日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号