Soru: Windows üzerinde kurulu oracle database makinesinde schedule edilmiş expdp job ları çalışmakta, otomatik dump alıp sıkıştıryor sonra eski dosyaları siliyor, buradaki eski dump dosyaları silinmemiş el ile silmeye kalktığımızda da dosya kullanılıyor hatası alıyoruz?
Çözüm: İlk olarak kontrol edeceğimiz yer dosyayı hangi işlem tutuyor (Database olduğunu biliyoruz ancak yinede kontrol edelim). Kontrol ettiğimizde Database bu dosyayı kullanıyor diyor, ancak çalışan bir expdp job yok o halde arkada tamamlanmamış askıda kalmış expdp işleri olmalı diyor ve kontrol ediyoruz.
SQL> select owner_name, job_name from dba_datapump_jobs where state='EXECUTING';
OWNER_NAME JOB_NAME
----------- ---------
SYS SYS_EXPORT_FULL_02
SYS SYS_EXPORT_FULL_03
SYS SYS_EXPORT_FULL_04
SYS SYS_EXPORT_FULL_05
SYS SYS_EXPORT_FULL_06
SYS SYS_EXPORT_FULL_07
En son prosess ten başlayarak attach olup kill yapabiliriz bu durumda bu dosyalar serbest kalacaktır..
>expdp \"/as sysdba\" attach=SYS_EXPORT_FULL_07
Export: Release 12.2.0.1.0 - Production on Thu Jul 28 10:22:26 2022
Copyright (c) 1982, 2017, Oracle and/or its affiliates. All rights reserved.
Connected to: Oracle Database 12c Standard Edition Release 12.2.0.1.0 - 64bit Production
Job: SYS_EXPORT_FULL_07
Owner: SYS
Operation: EXPORT
Creator Privs: TRUE
GUID: 8B3CE5545B0046B9BC0036B07F611E71
Start Time: Thursday, 28 July, 2022 9:43:52
Mode: FULL
Instance: jguar
Max Parallelism: 1
Timezone: +00:00
Timezone version: 26
Endianness: LITTLE
NLS character set: WE8ISO8859P9
NLS NCHAR character set: AL16UTF16
EXPORT Job Parameters:
Parameter Name Parameter Value:
CLIENT_COMMAND "/******** AS SYSDBA" full=y directory=EXPDIR dumpfile=JGUAR_2022-7.-02_9.43.50,67.dmp logfile=JGUAR_2022-7.-02.log
TRACE 0
State: EXECUTING
Bytes Processed: 0
Current Parallelism: 1
Job Error Count: 0
Job heartbeat: 5
Dump File: D:\ORACLE\DATAPUMP\JGUAR_2022-7.-02_9.43.50
bytes written: 7,569,408
Dump File: D:\ORACLE\DATAPUMP\67.DMP
bytes written: 4,096
Worker 1 Status:
Instance ID: 1
Instance name: jguar
Host name: LOGOORACLE
Object start time: Thursday, 28 July, 2022 10:13:32
Object status at: Thursday, 28 July, 2022 10:17:46
Process Name: DW05
State: EXECUTING
Export> kill_job
Are you sure you wish to stop this job ([yes]/no): yes
Tekrar sorguladığımızda; 7 numaralı JOB görünmeyecek ve artık dosyalardan 7 nin tuttuğu dosyalar silinebilir.
SQL> select owner_name, job_name from dba_datapump_jobs where state='EXECUTING';
OWNER_NAME JOB_NAME
----------- ---------
SYS SYS_EXPORT_FULL_02
SYS SYS_EXPORT_FULL_03
SYS SYS_EXPORT_FULL_04
SYS SYS_EXPORT_FULL_05
SYS SYS_EXPORT_FULL_06
Listeyi temizlediğimizde sorun ortadan kalkacaktır.
Bir yanıt yazın