Linux下备份还原PostgresSQL

it2022-05-05  187

备份数据库(以robot为例)①导出 dmp 文件 [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/pg_dump robot > /home/postgres/robot.dmp 备注:其他用户操作的时候可以使用 [root@myhadoop ~]# /home/postgres/pgsql/bin/pg_dump -U postgres robot > /home/postgres/robot.dmp

******************删除数据库,用备份出来的 robot.dmp 文件还原数据库*******************************②删除数据库 [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/dropdb robot 备注:其他用户操作可以使用 [root@myhadoop ~]# /home/postgres/pgsql/bin/dropdb -U postgres robot③新建数据库 [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/createdb robot 备注:其他用户操作可以使用 [root@myhadoop ~]# /home/postgres/pgsql/bin/createdb -U postgres robot④使用 dmp 文件重建 [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/psql robot < /home/postgres/robot.dmp 备注:其他用户操作可以使用 [root@myhadoop ~]# /home/postgres/pgsql/bin/psql -U postgres robot < /home/postgres/robot.dmp

/

备份所有数据库①导出 dmp 文件 [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/pg_dumpall > /home/postgres/all.dmp

******************删除数据库,用备份出来的 robot.dmp 文件还原数据库*******************************②删除数据库 [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/dropdb robot [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/dropdb postgres  (这个默认的数据库可以不用删除,不删除的话就不要执行第三步)③创建数据库 [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/createdb postgres④恢复数据库 [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/psql -f /home/postgres/all.dmp postgres

///

///

导出 sql 的方式备份(以 robot 库为例)①备份: $ pg_dump -U {user-name} {source_db} -f {dumpfilename.sql} [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/pg_dump -U postgres robot -f /home/postgres/robot.sql

②恢复: 2.1 先删除数据库 [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/dropdb robot 备注:其他用户操作时可以使用 [root@myhadoop postgres]# /home/postgres/pgsql/bin/dropdb -U postgres robot2.2 再创建数据库 [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/createdb robot 备注:其他用户操作时可以使用 [root@myhadoop postgres]# /home/postgres/pgsql/bin/createdb -U postgres robot

2.3 恢复数据 $ psql -U {user-name} -d {desintation_db} -f {dumpfilename.sql} [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/psql -U postgres -d robot -f /home/postgres/robot.sql

//

//

其他操作//创建数据库用户 [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/createuser robot//创建数据库 [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/createdb -O robot robot//登陆数据库 [postgres@myhadoop ~]$ /home/postgres/pgsql/bin/psql -U robot -d robot//修改密码(输入两次密码) robot=> \password

 

安装Postgresql数据库

安装postgresql数据库

sudo apt-get install postgresql

修改postgresql的配置文件/etc/postgresql/9.1/main/pg_hba.conf,例如改为本地可登录:

# "local" is for Unix domain socket connections only local   all             all                                     trust

运行下面命令重启postgresql服务

service postgresql restart 创建用户和密码:

执行命令

su - postgres psql

直至出现postgres=#提示符。

执行下面命令创建用户和设置密码:

postgres=# CREATE USER robot WITH PASSWORD 'robot'; CREATE ROLE

执行下面命令创建数据库并授权:

postgres=# CREATE DATABASE robot; CREATE DATABASE postgres=# GRANT ALL PRIVILEGES ON DATABASE robot TO robot; GRANT

退出psql

postgres=# \q

exit返回原用户


最新回复(0)