- 查看正在执行的import进度
可以通过查询v$session_longops
视图来查看正在执行的impdp进度。
具体操作步骤如下:
首先,打开Oracle客户端,使用sqlplus连接到Oracle数据库。
然后,执行以下SQL脚本:
SELECT
sid,
opname,
target,
sofar,
totalwork,
units,
elapsed_seconds,
time_remaining
FROM
v$session_longops
WHERE
opname LIKE 'Data Pump%'
AND target LIKE '%SCHEMA_NAME%'; -- 别忘了替换SCHEMA_NAME
其中,sid
是进程ID,opname
是正在执行的操作名称,target
是操作的目标(比如,操作的表名或者schema名),sofar
是目前已经完成的工作量,totalwork
是总的工作量,units
是工作量的单位,elapsed_seconds
是已经进行的时间,time_remaining
是预计剩余时间。
- 查询正在处理的对象
如果需要查询正在处理的对象,可以通过v$session_longops
和v$session
视图结合使用。
假设我们正在导入名为dumpfile.dmp
的数据,并将数据导入到一个名为SCHEMA_NAME
的schema中,我们可以执行以下SQL脚本:
SELECT
vsl.sid,
vsl.opname,
vsl.target,
vsl.sofar,
vsl.totalwork,
vsl.units,
vsl.elapsed_seconds,
vsl.time_remaining,
vses.machine,
vses.username
FROM
v$session_longops vsl,
v$session vses
WHERE
vsl.sid = vses.sid
AND vsl.opname LIKE 'Data Pump%'
AND vsl.target LIKE '%SCHEMA_NAME%'
AND vses.machine LIKE '%MACHINE_NAME%'; -- 别忘了替换SCHEMA_NAME和MACHINE_NAME
其中,machine
是执行导入任务的机器名称,username
是执行替代任务的用户名。您可以在查询的结果中查看正在导入/导出的对象和工作量的进度。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Oracle如何查看impdp正在执行的内容 - Python技术站