logo
关于我们

技术分享

技术分享 pgAdmin4的备份和还原数据

pgAdmin4的备份和还原数据

2020-08-31

备份

 

  选中要备份的数据库,右击数据库,选择备份。点击备份出现以下对话框,点击文件名后面有三个点的按钮,选择要备份的路径,并输入备份文件的名称。

                                                                              云祺pgAdmin4的备份和还原数据

                                         云祺pgAdmin4的备份和还原数据

                                                                                 云祺pgAdmin4的备份和还原数据

出现下面这张图片所示的情况,点击完成就备份成功了,从图片上可以看出,数据库备份是通过pg_dump来执行的。

                                                                                 云祺pgAdmin4的备份和还原数据

还原

 

  还原时,如果数据库中没有要还原的数据库,应该先创建一个名字和备份文件相同的。如果要还原到其他数据库中也可以,这样就把原来数据库给覆盖了。我这里是新建了一个名字为postgis的数据库,然后对新建的库进行还原。

 

  下面先简单创建一个数据库,仅需要输入数据库名称,选择用户就可以了。

                                                                              云祺pgAdmin4的备份和还原数据

右击数据库名称,选择恢复,出现下面的对话框。然后选择备份好的backup文件,进行还原。

                                                                                  云祺pgAdmin4的备份和还原数据

                                                                                  云祺pgAdmin4的备份和还原数据

  这样就恢复完成了。如果要设置是否恢复设置,在恢复选项中进行设置。从上面的图片中可以看出,数据库的还原时是pg_restore执行的。

 

pg_dump和pg_restore

 

  从上面的执行过程中可以看出,PostgreSql的备份和还原分别是通过pg_dump和pg_restore执行的。PostgreSql的备份有三种形式,分别是自定义、tar格式、无格式三种类型。自定义和tar格式在备份时形成的是.backup文件,而无格式在备份时形成的是文本文件。在还原时,格式只能是自定义或tar格式,也就是说pg_dump使用无格式方式备份的文件,是不能用gp_restore还原的;pg_restore只能还原backup文件。

 

  那么文本文件又是怎么还原呢?只能通过命令来执行。cmd进入执行框,用cd命令将路径改到数据库安装路径的bin文件夹下,输入以下命令:

 

psql -h localhost -U username -d mydb <  mydb.bak

  

  其中username是数据库的用户名,mydb是要还原的数据库名称,mydb.bak是自己备份的文本文件,在执行命令时要加入路径,比如:

 

psql -h localhost -U postgres-d postgis <  c:\User\Desktop\postgis

命令执行完成之后,数据库就还原完成了。

 

<2>postgresql命令操作备份和还原

一、命令操作:

  数据的导出:

$ pg_dump -U postgres(用户名)  (-t 表名)  数据库名(缺省时同用户名)  > 路径/文件名.sql

 

 
  1. postgres@debian:~$ pg_dump -U postgres -t system_calls wangye > ./test.sql

  2. postgres@debian:~$ ls

  3. 9.1  test.sql

 

 数据的导入:

导入数据时首先创建数据库再用psql导入:

$ createdb newdatabase
$ psql -d newdatabase -U postgres -f mydatabase.sql   // sql 文件在当前路径下

 

$ psql -d databaename(数据库名) -U username(用户名) -f < 路径/文件名.sql  // sql 文件不在当前路径下
 

 

 
  1. $ su postgresql   #切换到psql用户下

  2. $ psql -d wangye -U postgres -f system_calls.sql   # sql 文件在当前路径下

  3. INSERT 0 1

  4. INSERT 0 1

  5. INSERT 0 1

  6. ......

二、pgAdmin操作:

数据的导出:

    在库名上右击-->backup-->ok,即将数据保存到.backup文件中。

数据的导入:

    在库名上右击-->restore-->注意填写.backup文件的路径不能有空格-->ok

 

云祺备份软件,云祺容灾备份系统,虚拟机备份,数据库备份,文件备份,实时备份,勒索软件,美国,图书馆
  • 标签:
  • 其他

您可能感兴趣的新闻 换一批

现在下载,可享30天免费试用

立即下载