昨天领导给了一个移动硬盘,让看一下里面一个二百多GB的dmp文件是否完好。所做的操作如下:

首先,由于硬盘格式问题,只能找一台linux系统的服务器来做操作。

将移动硬盘挂载到服务器上,遇到了操作系统无法切换用户的问题“su:cannot set groups:Operation not permitted”。即用su - oracle会报错,显示的是bin文件夹下的su文件的问题,按照网上的说法应该是该文件的属主被修改导致的,但将其更改成root用户root组,仍然报原来的错误。没办法,只好将用户注销后切换成oracle用户,进行数据库的创建。

后来找了一个机房的其他机器,用ssh工具连接到此机器上用root用户进行远程登录操作,本机用oracle用户执行dbca命令,创建同名的数据库,创建了一个类似的表空间,然后是一个用户,执行imp命令进行导入。

问题又来了,导入时停在了字符集导入的阶段不动了,“Import done in ZHS16GBK character set and AL16UTF16 NCHAR character set……”这回是彻底的没有办法了,网上也没有什么解决方案。估计是字符集与现场导出时的不一样,但现在现场的数据库已经毁了。

字符集是个头疼的问题,需要好好研究研究了