数据库有个附件表存放附件,一般一条记录有20m,200条左右。
用pg_dump命令,在备份到这个表时,出错。
出错信息如下:
pg_dump: 正在转储表 t_attachment 的内容
pg_dump: 无法从服务器接收数据: No buffer space available (0x00002747/10055)
pg_dump: 转储表 "t_attachment" 的内容的 SQL 命令失败: PQendcopy() 失败.
pg_dump: 来自服务器的错误信息: 无法从服务器接收数据: No buffer space available (
0x00002747/10055)
pg_dump: 命令是: COPY public.t_attachment (c_id, c_owner_id, c_name, c_size, c_c
hecker_type, c_attachment) TO stdout;
pg_dump: *** 因为错误退出
请问关于大数据量的表想导出如何处理??

解决方案 »

  1.   

    postgresql 使用pg_dump导出一个数据库或导出一张表示例:pg_dump -d database -U postgres -f database.sql到入数据库newdatabase
    # create database newdatabase
    $psql -d newdatabase -U postgres -f database.sql也可以用
    #psql datebasename < data.sql
    但是用-U -W无法输入用户密码(windows)。
      

  2.   

    大容量的倒出可以尝试 -Ft或-Fc选项
    不过恢复必须用pg_restore