zoukankan      html  css  js  c++  java
  • postgresql 数据备份与恢复

    最近在做数据迁移时,遇到了数据表导入时,总是提示 string  too long 或者 sequence 问题。 问题很容易定位:字符编码。通过sql语句查看数据库字符编码:select datname, pg_encoding_to_char(encoding) from pg_database 。 查到一个为UTF8,另一个是SQL_ASCII,改变数据库字符编码即可,保持一致。  

    一、首先:保持数据库的字符编码和用户名一致。

    二、然后再做数据转移:

    数据迁移时,通过pg_dump命令

    (1) 指定库指定表 pg_dump -d db_name -t table_name -f filename

       恢复:psql -h $host -p $port  -U $user -W $password -d $database < $backup_file 

    (2) 压缩 pg_dump -d db_name -t table_name | gzip file_name.gz

       恢复:gunzip -c filename.gz | psql dbname 或者 cat filename.gz | gunzip | psql dbname

    (3)切分成小文件多线程执行  pg_dump dbname | split -b 1m - filename

       恢复:cat filename* | psql dbname

  • 相关阅读:
    根据第三方库spire.pdf使用指定打印机打印pdf文件
    大批量GPS坐标转百度坐标
    maven settings.xml
    linux 权限
    hyper-v 创建ubuntu虚拟机设置静态ip
    mysql 复制
    nginx
    python函数定义
    Mysql索引浅析
    Mysql 数据库锁机制浅析
  • 原文地址:https://www.cnblogs.com/greys/p/11811678.html
Copyright © 2011-2022 走看看