postgresql数据库备份与还原

备份postgres表结构和数据:

进入用户名为postgres的数据库:su - postgres

pg_dump -h 59.65.233.201 -p 5432 -U postgres –F t -f /home/postgres/postgres.tar 

注:-h指数据库服务器的主机名

    -p 端口号,postgresql数据库默认5432

    -U postgresql数据库用户名

    -F 备份文件的格式--format=c|d|t|p     output file format (custom, directory, tar, plain text)

   -f --file=FILENAME         output file or directory name

需要注意,导出的备份文件的目录必须是postgres用户可以访问的,否则会出现could not open TOC file "/home/pg_data_2-23.tar" for output: Permission denied没有权限访问的问题

还原postgres表机构和数据:

pg_restore –U postgres -d postgres /home/postgres/postgres.tar

-d 数据库名

-U 数据库用户名

这两个不一样

“/home/postgres/postgres.sql”为sql文件存放位置全路径,可根据具体情况改

你可能感兴趣的:(postgreSQL数据库)