169 похожих чатов

Можно както оперативно почистить сегменты lob без удаления таблицы в

которой поля blob/clob?

6 ответов

52 просмотра

ALTER TABLE TABLE_NAME ENABLE ROW MOVEMENT ALTER TABLE TABLE_NAME SHRINK SPACE CASCADE

Александр-Егоров Автор вопроса
Александр Егоров
Так пробовал... не чистит

Ну конечно, потому что таким образом Вы выполняете MOVE только для таблицы, но не для LOB сегмента. Вам нужен немного другой синтаксис, вроде такого: ALTER TABLE lob_tab MODIFY LOB(data) (SHRINK SPACE CASCADE); Ну и почитайте заметку с объяснением что к чему и почему, напрмер эту: https://oracle-base.com/articles/misc/alter-table-shrink-space-online

Александр-Егоров Автор вопроса
Ро
Ну конечно, потому что таким образом Вы выполняете...

Спасибо... ссыль посмотрю, но этот способ тоже не чистит.

Александр Егоров
Спасибо... ссыль посмотрю, но этот способ тоже не ...

Версия какая? Там до 19 (или даже 21) был баг, что хотя поле создавалось как BASIC, скрытый параметр все прописывал как SecureFile, а с ним Modify lob shrink не работал 😞

Александр Егоров
Спасибо... ссыль посмотрю, но этот способ тоже не ...

Ну как уже упоминалось в соседних сообщениях, разберитесь со способом хранения Ваших LOB сегментов - BASICFILE или SECUREFILE. И второе - тут же технический канал, мы тут "не верим" заявлениям "не чистится". Приведите логи сессии, где видно значение DBA_SEGMENTS.BYTES для таблицы и для LOB сегмента до, потом команды что Вы выполнили, их результат (полезно включить set timing on), и результаты с размерами сегментов из словаря после. А ещё лучше выложите куда-то на dbfiddle.uk простенький тест, где Вы создаете табличку с парой полей и LOB сегментом, наполняете её тестовыми данными из DBMS_RANDOM (скажем миллион строк), потом удаляете половину и пытаетесь сжать таблицу / LOB сегмент с помощью MOVE. Тут все сидят с открытыми коннектами к базам, и тут же могут воспроизвести Ваш пример на своих системах, на разных версиях и архитектурах Oracle DB. Эта рекомендация не только к Вашему вопросу относится, но вообще ко всем, кто просит аудиторию что-то проверить или помочь. Описанный выше подход к задаванию вопросов по-моему оптимальный и позволяет любому у кого есть несколько минут быстро воспроизвести пример и проблему - и предложить вариант решения.

Похожие вопросы

Обсуждают сегодня

Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Я вот подумал. SSE выполняет операции максимум с 64-битной точностью. А FPU - всегда с 80-битной. Разве не должно быть FPU точнее тогда?
The Bird of Hermes
13
как быть с принтером? такой подход прокатит?
zamtmn
12
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Я не понимаю, это троллинг или что? Швабрика поддерживают, который буквально пишет на ассемблере взаимодействия с винапи. Я это ещё написал загрузчик и хоть что-то изучаю в о...
Shadow Akira
6
А вот это что за конструкция? Вернее, она тут нафига?
Serjone
10
Привет. Подскажите, как правильно сматчить лист фиксированного размера, чтобы компилятор не говорил мне о неполном паттерне? Допустим что-то такое [x', y'] = sort [x, y]?
Arseny
8
Карта сайта