sql >> Databasteknik >  >> RDS >> Oracle

Uppgiftslista

Jag är säker på att någon som läser det här kommer att fråga "hur visste du inte det?". Men ibland kommer de enklaste sakerna till oss sent i spelet medan andra visste det tidigt.

Jag har patchat Oracle på Windows sedan Windows NT-dagarna. Alla som korrigerar Oracle på Windows vet att OPatch ofta tar avstånd från det faktum att vissa DLL-filer är låsta av andra processer. Det enklaste sättet för mig att komma runt detta är att bara byta namn på DLL-filerna som kommer att ersättas av patchen. OS låter dig inte radera DLL-filerna, men du kan byta namn på dem och sedan kan OPatch fortsätta. I början av OPatch körde jag appliceringen, den skulle spotta ut DLL:n som var låst. Jag skulle byta namn på DLL-filen och sedan köra OPatch igen för att få nästa DLL-fil som var låst. Denna process skulle upprepas cirka 20 gånger tills OPatch inte hittade några låsta DLL-filer. Åtminstone nu när du kör OPatch, ger den dig en fullständig lista över DLL-filer som är låsta.

Ibland vill jag veta processen som låser DLL-filen. Tidigare skulle jag ladda ner ett av dessa fritt tillgängliga verktyg för att visa mig processen/processerna som låser filen i fråga och avslutar processen. Men jag gillar inte att gratisprogram sväller upp mina servrar så jag tar ofta bort verktyget när jag är klar. Tills nästa gång jag behöver det verktyget...

Någon hänvisade mig nyligen till Metalink Note 294350.1 som innehöll en liten guldklimp som jag inte var insatt i innan jag läste det här dokumentet. Tydligen innehåller Windows ett kommandoradsverktyg för att visa vilka processer som låser DLL-filer. Jag kan nu göra:

tasklist /m

Utdata kan vara långt, så det är fördelaktigt att lagra utdata i en fil och sedan öppna filen i en textredigerare:

tasklist /m > c:\oracle\task_list.txt
notepad c:\oracle\task_list.txt

Jag kan sedan använda textredigerarens sökfunktion för att hitta den aktuella DLL-filen.

Hur kommer det sig nu att det här lilla verktyget har undgått min uppmärksamhet under alla dessa år?


  1. 5 sätt att räkna antalet användardefinierade tabeller i en SQL Server-databas

  2. Returnera SETOF rader från PostgreSQL-funktionen

  3. Återställ en databas i SQL Server 2017

  4. En databasmodell för en onlineundersökning. Del 1