导入备份文件到postgre
来源:互联网 发布:怎样才能恢复手机数据 编辑:程序博客网 时间:2024/05/21 22:29
当导入备份文件到postgre时出现一些如:
Unicode characters greater than or equal to 0x10000 are not supported invalid byte sequence for encoding "UNICODE": 0xd6 invalid byte sequence for encoding "EUC_CN": 0xfb66
....
如上的导入出现的某些字符集不支持的问题,现解决如下:
下面我以主和备机进行说明(主机作为备份数据来源,备机作为导入已备份的数据文件):
1、进入主机,执行psql -l命令,例如:
[root@localhost]$ psql -l
List of databases
Name | Owner | Encoding
-----------+-------+----------
mydata | root | EUC_CN
template0 | root | EUC_CN
template1 | root | EUC_CN
(3 rows)
第三列的Encoding就是对应的库所使用的字符集EUC_CN
也有一种情况是使用psql -l查看所使用的字符集时并没发现Encoding这一列,例如:
[root@localhost]$ psql -l
List of databases
Database | Owner
-----------+-------
mydata | root
template0 | root
template1 | root
(3 rows)
那么它所使用的字符集默认就是ISO885915 (注意默认的字符集名字了)
好了,知道了主机的postgre所使用的字符集后,就好办了。
2、进入备机,执行dropdb mydata删除数据库mydata
注意,当使用dropdb mydata后,出现如下信息则说是有进程在连接postgre:
[root@localhost]$ dropdb mydata
dropdb: database removal failed: ERROR: database "mydata" is being accessed by other users
这时,你就必须使用ps ax|grep post查出进程再使用kill ID号来杀掉相关进程了。
使用dropdb必须是postgre已经正常启动,所以当kill进程后,如果postgre没启来就要用pg_ctl start命令来启动它才可以使用dropdb命令。
3、当把数据库mydata删除掉后,就重新创建mbs这一步了,创建方法如下:
createdb -E 字符集 mydata
以上的命令格式中的“字符集”就是对应主机中所使用的字符集,比如主机使用的是EUC_CN,那么使用的命令就是 createdb -E EUC_CN mydata
4、成功创建数据库mydata后,就可以导入主机备份过来的数据文件了。
以上步骤基本解决了导入数据的问题。
Unicode characters greater than or equal to 0x10000 are not supported invalid byte sequence for encoding "UNICODE": 0xd6 invalid byte sequence for encoding "EUC_CN": 0xfb66
....
如上的导入出现的某些字符集不支持的问题,现解决如下:
下面我以主和备机进行说明(主机作为备份数据来源,备机作为导入已备份的数据文件):
1、进入主机,执行psql -l命令,例如:
[root@localhost]$ psql -l
List of databases
Name | Owner | Encoding
-----------+-------+----------
mydata | root | EUC_CN
template0 | root | EUC_CN
template1 | root | EUC_CN
(3 rows)
第三列的Encoding就是对应的库所使用的字符集EUC_CN
也有一种情况是使用psql -l查看所使用的字符集时并没发现Encoding这一列,例如:
[root@localhost]$ psql -l
List of databases
Database | Owner
-----------+-------
mydata | root
template0 | root
template1 | root
(3 rows)
那么它所使用的字符集默认就是ISO885915 (注意默认的字符集名字了)
好了,知道了主机的postgre所使用的字符集后,就好办了。
2、进入备机,执行dropdb mydata删除数据库mydata
注意,当使用dropdb mydata后,出现如下信息则说是有进程在连接postgre:
[root@localhost]$ dropdb mydata
dropdb: database removal failed: ERROR: database "mydata" is being accessed by other users
这时,你就必须使用ps ax|grep post查出进程再使用kill ID号来杀掉相关进程了。
使用dropdb必须是postgre已经正常启动,所以当kill进程后,如果postgre没启来就要用pg_ctl start命令来启动它才可以使用dropdb命令。
3、当把数据库mydata删除掉后,就重新创建mbs这一步了,创建方法如下:
createdb -E 字符集 mydata
以上的命令格式中的“字符集”就是对应主机中所使用的字符集,比如主机使用的是EUC_CN,那么使用的命令就是 createdb -E EUC_CN mydata
4、成功创建数据库mydata后,就可以导入主机备份过来的数据文件了。
以上步骤基本解决了导入数据的问题。
- 导入备份文件到postgre
- Sql2000的备份文件导入到sql2005中
- SQL 2005的备份文件导入到SQL 2000
- 解决MySQL导入备份文件到新数据库乱码问题
- Oracle导入dmp备份文件到不同的表空间中
- 导入SQLSERVER备份文件问题
- 如何导入ORACLE 备份文件
- 导入SQLSERVER备份文件问题
- oracle导入dmp备份文件
- oracle导入dmp备份文件
- PostgreSQL导入备份文件
- oracle导入dmp备份文件
- postgre数据迁移到mysql
- oracle备份文件导入到SQL中实用的方法(上)
- oracle备份文件导入到SQL中实用的方法(下)
- 怎样把SQL2005的备份文件导入到SQL2000的数据库中
- 将sql server 2000的备份文件导入到sql server 2012中
- 把4.x中的jira备份文件导入到Jira6.x中
- send()发送结构体
- linux下C工程层级目录的Makefile编写
- 什么是实体类?
- xorl %eax, %eax
- wince Sate210 的调试串口(com3-uart2)改成普通串口
- 导入备份文件到postgre
- 缩小IO/CPU瓶颈:linux平台加速编译速度的几种方法
- 元数据(MetaData)通俗解说
- hdu 2444
- java 算法失精问题
- android中的事件类型分为按键事件和屏幕触摸事件
- mysqlreport
- S3C2440上LCD驱动(FrameBuffer)实例开发讲解(一)
- 指令