Гость
Map
Форумы / Oracle [игнор отключен] [закрыт для гостей] / oracle держит датафайлы из дропнутого тайблспейса / 4 сообщений из 4, страница 1 из 1
21.10.2021, 14:53
    #40105848
barrabas
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
oracle держит датафайлы из дропнутого тайблспейса
Перенес все данные из тейбспейса в другой, дропнул его без опции INCLUDING CONTENTS AND DATAFILES.
тайблспейс успешно дропнулся его и дата-файлы не видно во вьюхах.
но не получается удалить файлы из ОС. процесс ораклы держит их.
Только рестарт поможет или есть варианты? не хочется прод останавливать, но и файлы большие мешают
...
Рейтинг: 0 / 0
21.10.2021, 16:17
    #40105902
shane54
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
oracle держит датафайлы из дропнутого тайблспейса
Да, есть такое поведение. Без рестарта вроде никак, хотя коллеги мож и поправят. Вообще, трюк в таких случаях - раз удалить нельзя, надо сделать resize, типа до 1 МБ или вроде того. Файлы будут отсвечивать до рестарта и реального удаления, но хотя бы место отдадут. Другой вопрос - как теперь это сделать, раз база про эти файлы уже "забыла". Можно попробовать создать заного тот же тейблспейс, и указать эти же датафайлы, с опцией REUSE. Если получится - тогда уже им сказать ALTER DATABASE DATAFILE.... RESIZE 1M, и снова удалить тейблспейс. Хотя в этом случае, если INCLUDING CONTENTS AND DATAFILES удалит датафайлы - то RESIZE получается уже был не нужен. Но лучше сделать, вдруг опять файлы останутся.

Или попробовать не создавать тейблспейс, а напрямую, по абсолютному пути попробовать ALTER DATABASE DATAFILE.... RESIZE 1M.

Кстати, Вы не указали ни ОС, ни версию базы, ни где лежат датафайлы (ASM или FS). Как всегда впрочем. Если у Вас там Linux/Unix - можете с помощью lsof посмотреть, кто держит файлы и не даёт удалить. Там в выводе скорее всего будет "вся толпа" - и background процессы, и сессии. Но эта информация от lsof скорее для интереса
...
Рейтинг: 0 / 0
21.10.2021, 16:39
    #40105920
barrabas
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
oracle держит датафайлы из дропнутого тайблспейса
ora 11204 под win 2016

я пробовал добавить новый тейблспейс указав файл с опцией реюз, получил

ORA-01119: error in creating database file 'D:\ORACLE\ORADATA\GSMSK\LARGE_INDX_9.DBF'
ORA-27086: unable to lock file - already in use
OSD-00002: additional error information
O/S-Error: (OS 32) The process cannot access the file because it is being used by another process.


ладно, придется окошко для рестарта найти

держит точно оракла, я посмотрел, ее процесс
...
Рейтинг: 0 / 0
21.10.2021, 17:38
    #40105953
shane54
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
oracle держит датафайлы из дропнутого тайблспейса
Не, ну с Oracle на Windows - это отдельная песня, лучше не связываться. Есть конечно инструменты - в пакете Sysinternals Suite была утилита (может даже просто Process Explorer?), с помощью неё можно вычислил нити (threads кажется в терминологии Windows), которые внутри процесса oracle.exe и представляют собой сессии, которые держат Ваши датафайлы. И вроде их можно найти и поубивать. Ещё есть на Windows утилита orakill.exe. И ещё можно пойти по пути oradebug. Но лучше не связываться, завалите Prod, будет только хуже в итоге. Лучше дождаться окна на рестарт и сделать все чисто. Дел на 10 сек, если подготовиться, и сразу обратно startup.
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / oracle держит датафайлы из дропнутого тайблспейса / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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