powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Прошу помощи
4 сообщений из 4, страница 1 из 1
Прошу помощи
    #39641818
adunya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день, прошу помощи, самостоятельно не удается разобраться(

Суть задача:
Необходимо разобрать помойку в схеме, удалить пользовательские таблицы, которые не обновлялись и не использовались с 06.2017. (их ~7 т)

Таблицы которые не обновляются и не используются в представлениях и процедурах выбрала. Теперь необходимо понять, с какими таблицами не работают пользователи, разбирать dba_hist_sqltext очень не хочется, может есть более простой способ?


select h.LAST_ANALYZED,h.TABLE_NAME, v1.timestamp, v2.timestamp
from
(
select v.LAST_ANALYZED,v.TABLE_NAME
from all_tables v
left join
(select distinct k.REFERENCED_NAME , 1 as flg_VIEW
from dba_dependencies k
where k.TYPE='VIEW')k on v.TABLE_NAME=k.REFERENCED_NAME
left join
(select distinct k.REFERENCED_NAME , 1 as flg_PROCEDURE
from dba_dependencies k
where k.TYPE='PROCEDURE')p on v.TABLE_NAME=p.REFERENCED_NAME
where v.owner='U_CRM'
and LAST_ANALYZED<'01.06.2017'
and k.REFERENCED_NAME is null
and p.REFERENCED_NAME is null
) h
left join dba_tab_modifications v1
on v1.TABLE_NAME=h.TABLE_NAME
left join ALL_TAB_MODIFICATIONS v2
on v2.TABLE_NAME=h.TABLE_NAME
where
( v1.timestamp is null or v1.timestamp <'01.06.2017')
and ( v2.timestamp is null or v2.timestamp <'01.06.2017')
...
Рейтинг: 0 / 0
Прошу помощи
    #39641825
Фотография AlexFF__|
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adunyaДобрый день, прошу помощи, самостоятельно не удается разобраться(

Суть задача:
Необходимо разобрать помойку в схеме, удалить пользовательские таблицы, которые не обновлялись и не использовались с 06.2017. (их ~7 т)

Таблицы которые не обновляются и не используются в представлениях и процедурах выбрала. Теперь необходимо понять, с какими таблицами не работают пользователи, разбирать dba_hist_sqltext очень не хочется, может есть более простой способ?


select h.LAST_ANALYZED,h.TABLE_NAME, v1.timestamp, v2.timestamp
from
(
select v.LAST_ANALYZED,v.TABLE_NAME
from all_tables v
left join
(select distinct k.REFERENCED_NAME , 1 as flg_VIEW
from dba_dependencies k
where k.TYPE='VIEW')k on v.TABLE_NAME=k.REFERENCED_NAME
left join
(select distinct k.REFERENCED_NAME , 1 as flg_PROCEDURE
from dba_dependencies k
where k.TYPE='PROCEDURE')p on v.TABLE_NAME=p.REFERENCED_NAME
where v.owner='U_CRM'
and LAST_ANALYZED<'01.06.2017'
and k.REFERENCED_NAME is null
and p.REFERENCED_NAME is null
) h
left join dba_tab_modifications v1
on v1.TABLE_NAME=h.TABLE_NAME
left join ALL_TAB_MODIFICATIONS v2
on v2.TABLE_NAME=h.TABLE_NAME
where
( v1.timestamp is null or v1.timestamp <'01.06.2017')
and ( v2.timestamp is null or v2.timestamp <'01.06.2017')
Судя по запросу, тебе лучше удалять по одной таблице и при криках пользователей, возвращать ее.
...
Рейтинг: 0 / 0
Прошу помощи
    #39641826
ORA__SQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plsql
1.
2.
3.
4.
5.
1. Включаем аудит
2. Ждем, собираем инфу
3. Переименовываем table в table_temp
4. Ждем
5. Если так и никто не прибежал с криками "у меня сломалось", drop purge
...
Рейтинг: 0 / 0
Прошу помощи
    #39641828
ORA__SQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ORA__SQL
Код: plsql
1.
2.
3.
4.
5.
1. Включаем аудит
2. Ждем, собираем инфу
3. Переименовываем table в table_temp
4. Ждем
5. Если так и никто не прибежал с криками "у меня сломалось", drop purge

Код: plsql
1.
0. Забрать все права, если конечно же ходят в базу не под owner таблиц
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Прошу помощи
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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