如何终止正在进行expdp导出数据的任务
不能用ctrl+c来终止导出
一、按照以前的习惯,在进行oracle数据库数据导出操作时,大家一般都会使用组合键“CTRL+C”来终止导出操作。但这种方法在expdp导出数据时,却不能使用,因为虽然可以用ctrl+c终止expdp进程,但数据库导出任务仍在继续,磁盘空间仍在变小
[img=620,0]C:\Users\gdh\AppData\Local\YNote\data\mizhen007@126.com\a6eedc79d3bd4a3fa32a2184ff00c11e\2-1921805951.png[/img]
二、这时你使用:select job_name,state from DBA_datapump_jobs ,这个sql语句,可以看到ctrl+C终止的任务运行状态仍为EXECUTING。
[img=388,0]C:\Users\gdh\AppData\Local\YNote\data\mizhen007@126.com\e4e1249be14b47f9b69f2ec4c6e37de7\98-903836345.png[/img]
三、如果你已经使用ctrl+C将expdp进程杀掉了,那么首先需要运行:
impdp system/oracle ATTACH=SYS_IMPORT_SCHEMA_02
(备注:此为任务名,可通过第二步命令得到),来恢复expdp任务。
[img=620,0]C:\Users\gdh\AppData\Local\YNote\data\mizhen007@126.com\fc95e97926ed4e5e9e22f0214ffb7f9c\24-584765648.png[/img]
然后在 “Export> ”提示符下输入命令:stop_job=immediate ,回车后,再输入yes确定结束当前任务,即可正确终止正在进行expdp导出数据的任务。
[img=620,0]C:\Users\gdh\AppData\Local\YNote\data\mizhen007@126.com\547756c9cc194c348b8540b9c23948b0\7-1117694918.png[/img]
然后再来运行SQL语句查看视图dba_datapump_jobs中的内容,就可以看到数据导入任务已经没在运行。
select * FROM DBA_DATAPUMP_SESSIONS
DROP TABLE system.IMPJOBINTOHISDB PURGE;
SELECT * FROM DBA_DATAPUMP_JOBS;
|
|