PostgreSQL内置不少的工具,寻找的备份恢复方案就在其中:pg_dump,psql。这两个指令 在数据库的安装目录下,比如我自己本地安装的,路径形如:C:\Program Files\PostgreSQL\10\;然后进入到bin文件夹,会看到不少的exe文件,这就是PostgreSQL内置的工具了。里面会找到pg_dump.exe,psql.exe两个文件。 用法: 备份数据库,指令如下: pg_dump -h localhost -U postgres databasename >"E:\SouthernPowerGridProject\postgresql_all_db_backup_201801182345.dump"
指令解释:如上命令,pg_dump 是备份数据库指令,localhost是数据库的ip地址(必须保证数据库允许外部访问的权限哦~),当然本地的数据库ip写 localhost;postgres 是数据库的用户名;databasename 是数据库名。> 意思是导出到E:\SouthernPowerGridProject\postgresql_all_db_backup_201801182345.dump文件里,如果没有写路径,只写postgresql_all_db_backup_201801182345.dump文件名,那么备份文件会保存在C: \Program Files\PostgreSQL\10\bin 文件夹里。 开始-运行-cmd 弹出dos控制台;然后 在控制台里,进入PostgreSQL安装目录bin下: cd C:\Program Files\PostgreSQL\10\bin 最后执行备份指令: pg_dump -h localhost -U postgres "autoops"> "E:\SouthernPowerGridProject\postgresql_all_db_backup_201801182345.dump" 恢复数据库,指令如下: psql -h localhost -U postgres -d "databasename " <"E:\SouthernPowerGridProject\postgresql_all_db_backup_201801182345.dump" 指令解释:如上命令,psql是恢复数据库命令,localhost是要恢复到哪个数据库的地址,当然你可以写上ip地址,也就是说能远程恢复(必须保证 数据库允许外部访问的权限哦~);postgres 就是要恢复到哪个数据库的用户;databasename 是要恢复到哪个数据库。< 的意思是把"E:\SouthernPowerGridProject\postgresql_all_db_backup_201801182345.dump"文件导入到指定的数据库里。 最后执行恢复指令: psql -h localhost -U postgres -d "autoops" <"E:\SouthernPowerGridProject\postgresql_all_db_backup_201801182345.dump" 执行后会然你输入密码: 用户 postgres 的口令:输入你的数据库postgres 用户的密码