-- 以 test 作为用户名,导出 localhost:5432 服务器上的 Test 数据库。
-- 导出的文件名为 test_data
F:\PostgreSQL\9.2\bin>pg_dump -f test_data -h localhost -U test -p 5432 Test
口令:
F:\PostgreSQL\9.2\bin>dir test_*
驱动器 F 中的卷是 Install
卷的序列号是 24AD-61D9
F:\PostgreSQL\9.2\bin 的目录
2013-04-15 14:46 136,270 test_data
1 个文件 136,270 字节
0 个目录 10,456,657,920 可用字节
-- 将 test_data 文件中的数据,导入到 localhost:5432 服务器上的 Test2 数据库。
F:\PostgreSQL\9.2\bin>psql.exe -h localhost -U test -p 5432 -d Test2 < test_data
用户 test 的口令:test
SET
SET
SET
SET
SET
CREATE SCHEMA
ALTER SCHEMA
CREATE EXTENSION
COMMENT
CREATE EXTENSION
COMMENT
......
上面的例子, 是 备份 / 恢复整个数据库的.
如果你是要 仅仅 备份 / 恢复 某个表的, 那么命令行里面增加下面的参数:
-t, --table=TABLE 只转储指定名称的表
使用pg_dump进行单独表备份,且包含表结构,可以用于数据表迁移到新数据库。pg_dump -U database_username database -t tablename -f /tmp/tablename.sql
恢复数据表,包含表结构。
登入数据库后 \i /tmp/tablename.sql即可创建表。应该pg_restore也可用但没有尝试过。
postgresql中可以使用pg_dump来备份数据库。pg_dump是用于备份PostgreSQL数据库的工具。它可以在数据库正在使用的时候进行完整一致的备份,并不阻塞其它用户对数据库的访问。用法:
pg_dump [选项]... [数据库名字]
一般选项:
-f, --file=FILENAME output file or directory name
-F, --format=c|d|t|poutput file format (custom, directory, tar, plain text)
-v, --verbose详细模式
-Z, --compress=0-9 被压缩格式的压缩级别
--lock-wait-timeout=TIMEOUT 在等待表锁超时后 *** 作失败
--help 显示此帮助信息, 然后退出
--versoin输出版本信息, 然后退出
示例:
备份数据库,指令如下:
pg_dump -h 164.82.233.54 -U postgres databasename >C:databasename.bak
开始-运行-cmd d出dos控制台;然后 在控制台里,进入PostgreSQL安装目录bin下:
cd C:Program FilesPostgreSQL9.0bin
最后执行备份指令:
pg_dump -h 164.82.233.54 -U postgres databasename >C:databasename.bak
指令解释:
pg_dump 是备份数据库指令,164.82.233.54是数据库的ip地址(必须保证数据库允许外部访问的权限哦~),当然本地的数据库ip写 localhost;
postgres 是数据库的用户名;databasename 是数据库名。
>意思是导出到C:databasename.bak文件里,如果没有写路径,单单写databasename.bak文件名,那么备份文件会保存在C: Program FilesPostgreSQL9.0bin 文件夹里。
推荐学习《Python教程》。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)