当前位置: 代码迷 >> DB2 >> (linux)db2 export 数据出错?如何操作是正确的那
  详细解决方案

(linux)db2 export 数据出错?如何操作是正确的那

热度:7433   发布时间:2013-02-26 00:00:00.0
(linux)db2 export 数据出错?怎么操作是正确的那?
我用db2inst1用户创建的数据,定义了下面的表
create table clients(id int primary key not null,name varchar(30),status varchar(30),contactinfo xml)


然后插入了数据
db2 import from /opt/ibm/hanchen/clients.del of del commitcount 6 insert into clients

现在我想导出数据,用了下面的命令, myfile.del文件我提前建好了放到了/opt/下面, 这个文件我不提前创建好也出错。
EXPORT TO /opt/myfile.del OF DEL SELECT * FROM clients t 

报以下错误。
SQL3104N The Export utility is beginning to export data to file "myfile".

SQL3001C An I/O error (reason = "sqlofopn -2079391743") occurred while 
opening the output file.

SQL3105N The Export utility has finished exporting "0" rows.

有哪为能知道是怎么回事?怎么能够导出数据那?用命令行,不是用其他的工具。


------解决方案--------------------------------------------------------
/opt/ 这个目录是否有权限
------解决方案--------------------------------------------------------
export 不用预先放文件的 会自动生成的 同时要注意当前用户在指定目录有可写权限
------解决方案--------------------------------------------------------
EXPORT TO /opt/myfile.del OF DEL SELECT * FROM clients t 

语法没有问题,如上所说,很可能是没有操作/opt/目录下创建文件的权限,linux下赋权使用chmod命令。
------解决方案--------------------------------------------------------
另外说一下,导出文件不用提前创建,export时会自动创建的。提前创建的话,会覆盖里面的内容,也不会报错。
------解决方案--------------------------------------------------------
可能是权限问题,呵呵
ls -al能查看权限

------解决方案--------------------------------------------------------
用root登录,执行操作
------解决方案--------------------------------------------------------
Linux 与Windows 不同,好像要先创建,而且也要给与足够的权限。
探讨

另外说一下,导出文件不用提前创建,export时会自动创建的。提前创建的话,会覆盖里面的内容,也不会报错。

------解决方案--------------------------------------------------------
clients中的ID是否为自增长?只是提出这样一个问题,如果是这么写就不正确了