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

  • 相关阅读:
    javascript实现简单的轮播图片
    用struts实现简单的登录
    非非是
    javabean连数据库
    超级迷宫 nabc
    我的Time
    SQL SERVER 2008 评估期已过
    《架构漫谈》有感
    c#
    与String有关的强制转换
  • 原文地址:https://www.cnblogs.com/greys/p/11811678.html
Copyright © 2011-2022 走看看