powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Удаление TEMPFILE в Windows без останова экземпляра: ORA-01265: Unable to delete TEMP FILE
6 сообщений из 6, страница 1 из 1
Удаление TEMPFILE в Windows без останова экземпляра: ORA-01265: Unable to delete TEMP FILE
    #39290828
жвачкин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Возникла потребность перенести TEMP на другой диск большего объёма, с удалением текущего, чтобы освободить дисковое пространство.
Сделал:

Код: plsql
1.
2.
3.
CREATE TEMPORARY TABLESPACE TEMP2 TEMPFILE 'P:\ORACLE\temp01_new.DBF'  size 1G;
ALTER DATABASE DEFAULT TEMPORARY TABLESPACE temp2;
DROP TABLESPACE temp INCLUDING CONTENTS AND DATAFILES; 


третья команда "подвисла", потому что были сессии, которые использовали старый temp:

Код: plsql
1.
2.
3.
4.
5.
SELECT b.tablespace,b.segfile#,b.segblk#,b.blocks,a.sid,a.serial#,
a.username,a.osuser, a.status
FROM v$session a,v$sort_usage b
WHERE a.saddr = b.session_addr
and tablespace='TEMP';



пришлось давать +100500 команд kill. Получил притензии от пользователей после этого, что мол мою сессию убили!

после этого:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
WARNING: Cannot delete file D:\ORACLE\TEMP01.DBF
Errors in file C:\ORACLE\diag\rdbms\orcl\orcl\trace\orcl_ora_5100.trc:
ORA-01265: Unable to delete TEMP FILE D:\ORACLE\TEMP01.DBF
ORA-27056: could not delete file
OSD-04024: Unable to delete file.
O/S-Error: (OS 32) Процесс не может получить доступ к файлу, так как этот файл занят другим процессом.
Completed: DROP TABLESPACE temp INCLUDING CONTENTS AND DATAFILES



удалить файл руками в операционной системе я не могу. файл удерживается процессом oracle.

в связи с этим всем у меня два вопроса к знатокам:

1. как удалить temp файлы в операционной системе без останова экземпляра
2. как обойтись без команды kill, когда старый temp используется сессиями. тупо ждать когда сами отсоединяться?
...
Рейтинг: 0 / 0
Удаление TEMPFILE в Windows без останова экземпляра: ORA-01265: Unable to delete TEMP FILE
    #39291008
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обычно, сначала создают новый темп и объявляют его дефолтовым (или переназначают его всем юзерам)
Дожидаются пока сессии освободят свои временные сегменты на старом (или прибивают их)
Затем, если винда не дает удалить файл и не отрабатывает AND DATAFILES (просто DROP TABLESPACE проходит), тупо делают
echo "" > temp.file
...
Рейтинг: 0 / 0
Удаление TEMPFILE в Windows без останова экземпляра: ORA-01265: Unable to delete TEMP FILE
    #39291022
жвачкин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вячеслав ЛюбомудровОбычно, сначала создают новый темп и объявляют его дефолтовым (или переназначают его всем юзерам)
Дожидаются пока сессии освободят свои временные сегменты на старом (или прибивают их)
Затем, если винда не дает удалить файл и не отрабатывает AND DATAFILES (просто DROP TABLESPACE проходит), тупо делают
echo "" > temp.file

Код: plsql
1.
2.
3.
4.
5.
6.
SQL> DROP TABLESPACE temp INCLUDING CONTENTS AND DATAFILES;

Tablespace dropped.

SQL> exit
Disconnected from Oracle Database 11g Release 11.2.0.3.0 - 64bit Production



C:\> echo "" > D:\Oracle\TEMP01.DBF

Процесс не может получить доступ к файлу, так как этот файл занят другим процессом.

вариант перезаписать тоже не отрабатывает...
...
Рейтинг: 0 / 0
Удаление TEMPFILE в Windows без останова экземпляра: ORA-01265: Unable to delete TEMP FILE
    #39291027
И кто?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Удаление TEMPFILE в Windows без останова экземпляра: ORA-01265: Unable to delete TEMP FILE
    #39296488
pgalaktionov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
жвачкин,

авторC:\>echo "" > D:\Oracle\TEMP01.DBF

Процесс не может получить доступ к файлу, так как этот файл занят другим процессом.

СMD run as administrator запускали?
...
Рейтинг: 0 / 0
Удаление TEMPFILE в Windows без останова экземпляра: ORA-01265: Unable to delete TEMP FILE
    #39296517
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
жвачкинC:\> echo "" > D:\Oracle\TEMP01.DBF

Процесс не может получить доступ к файлу, так как этот файл занят другим процессом.Перезапись нужна в юниксах, так как фактическое удаление файла производится только после закрытия всеми использующими его процессами.
В винде filemon позволял принудительно закрывать открытые файлы. Но как на это отреагирует какой-нибудь smon...
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Удаление TEMPFILE в Windows без останова экземпляра: ORA-01265: Unable to delete TEMP FILE
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]