Linux上的Postgres数据库导入恢复backup数据

在linux中Postgresql数据库如何恢复数据库?执行sql脚本文件呢?具体步骤如下:

一、恢复数据库备份文件

1、将数据库备份文件xxx.backup用连接工具拷贝到/opt下,这个不固定,位置随意放;

2、在linux中打开终端,切换到postgres用户,命令是

 su - postgres (创建postgresql数据库时创建的用户),

然后cd到你安装的postgresql的bin目录下,我的安装在/opt下, 命令是

 cd /opt/postgres/9.3/bin

打开之后输入命令

 ./psql

输入你的数据库密码,进入postgres数据库;

3、先创建好你的数据库,命令

create database xxx;

4、然后为xxx数据库恢复数据库备份文件,命令是

 ./pg_restore -U postgres -W -d xxx(你的数据库) -v "/opt/xxx.backup"(你的备份文件位置)

备份:pg_dump -h localhost -p 5432 -U tradesns -W -F c -b -v -f "/home/tradeworkwangbin/us2010.backup" us2010
恢复:pg_restore -h 127.0.0.1 -p 5432 -U postgres -W -d zjyj_gxversion -v "/opt/zjyj_gxversion_0410.backup"

5,linux上执行x数据库恢复数据库备份命令报没有权限问用户“postgres”的密码认证失败。(password authentication failed for user "postgres")的修改:

 解决方法:

   修改一下pg_hba.conf 配置文件

把配置文件的indent都修改为trust

二、在postgres中执行sql脚本文件

1、在linux中打开终端,切换到postgres用户,然后cd到你安装的postgresql的bin目录下(同上),

  cd /opt/postgres/9.3/bin

2、将你的xxx.sql文件拷贝至/opt/下,然后执行的命令如下

   ./psql -s xxx(xxx是你要执行的数据库) -f /opt/xxx.sql

三、科普下

1、数据库备份,命令如下:

  ./pg_dump -h localhost -p 5432 -U postgres -W -F c -b -v -f "/opt/xxx.backup" xxx

2.在数据库安装目录bin下,./psql 进入数据库,输入密码,\c xxx(数据库名称) 进入指定数据库

\i 文件路径

猜你喜欢

转载自www.cnblogs.com/ComputerVip/p/12679517.html