Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Уменьшение размера файла  [new]
azzak
Member

Откуда:
Сообщений: 205
Фаил табличного пространства TOOLS весит 160Mb из них 23Mb занято данными.
-Пытаюсь сделать resize - пишет ошибку ORA:03297. Типо занят данными и уменьшить размер нельзя.
-Смотрю Show Tablespace Map... (OEM 9201) в самом начале и в конце файла распологаются экстенты, а громадная середина пуста.

Как переместить экстенты из конца в начало файла и уменьшить его размер?

Спасибо.
22 июн 04, 08:56    [755969]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
dragonx
Member

Откуда: Vladivostok - Москва - ...
Сообщений: 564
кажется никак,
попробуй пересоздать его, т.е. создать другое табличное пространство, перенести туда объекты и дропнуть старое(попробовтаь уменьшить размер), при желании можно создать еше новое с именем старого, вернуть в него объекты и дропнуть первое созданное.
22 июн 04, 09:00    [755974]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
azzak
Member

Откуда:
Сообщений: 205
Я так и думал...
22 июн 04, 09:07    [755994]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
Вячеслав Любомудров
Member

Откуда: Владивосток
Сообщений: 18486
alter table ... move [tablespace ...]
alter index ... rebuild [tablespace ...]
22 июн 04, 09:11    [756005]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
azzak
Member

Откуда:
Сообщений: 205
Вячеслав Любомудров

Спасибо!!! Все получилось!!!

А можно попадробнее о
alter table ... move [tablespace ...]
alter index ... rebuild [tablespace ...]
22 июн 04, 09:36    [756047]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
MacDuck
Member

Откуда: Москва-Подольск
Сообщений: 6387
azzak
Вячеслав Любомудров

Спасибо!!! Все получилось!!!

А можно попадробнее о
alter table ... move [tablespace ...]
alter index ... rebuild [tablespace ...]


А когда объектов в ts много, но они принадлежат одному пользователю (схеме), нельзя ли "пересадить" ее в другой ts?
4 апр 05, 13:45    [1438791]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
Владимор Конев
Member

Откуда:
Сообщений: 3451
MacDuck

А когда объектов в ts много, но они принадлежат одному пользователю (схеме), нельзя ли "пересадить" ее в другой ts?
Тогда нужно использовать словарь данных :-)
Примерно вот так:
BEGIN
   --
   -- Цикл по переносу всех таблиц 
   -- из табличного пространства OLD_TABLESPACE 
   -- в табличное пространство NEW_TABLESPACE
   --
   FOR i IN (
               SELECT 'ALTER TABLE '||
                      table_name ||' '||
                      'MOVE TABLESPACE NEW_TABLESPACE' sql_str
                 FROM user_tables
                WHERE upper(tablespace_name) = upper('OLD_TABLESPACE')
	    )
   LOOP  
      IF i.sql_str IS NOT NULL
         THEN EXECUTE IMMEDIATE i.sql_str;
      END IF;      
   END LOOP;
   --
   --
   -- Цикл по пересозданию всех индексов
   -- из табличного пространства OLD_TABLESPACE 
   -- в табличное пространство NEW_TABLESPACE
   --
   FOR i IN (
               SELECT 'ALTER INDEX '||
                      index_name ||' '||
                      'REBUILD TABLESPACE NEW_TABLESPACE ONLINE' sql_str
                 FROM user_indexes
                WHERE upper(tablespace_name) = upper('OLD_TABLESPACE')
	    )
   LOOP  
      IF i.sql_str IS NOT NULL
         THEN EXECUTE IMMEDIATE i.sql_str;
      END IF;      
   END LOOP;
END;
/
Только вместо NEW_TABLESPACE и OLD_TABLESPACE поставь свои названия для табличных пространств...
И ещё один нюанс - таблички с полями типа LONG невозможно перенести в другое табличное пространство посредством команды MOVE.
5 апр 05, 05:23    [1440279]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
SmaLL
Member

Откуда: Voronezh brewery
Сообщений: 701
А индексы (из схем SYS, SYSTEM...) тоже можно также перенести?
10 янв 06, 11:48    [2238903]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
Вячеслав Любомудров
Member

Откуда: Владивосток
Сообщений: 18486
Ну, если тебе надоела техподдержка -- дерзай

Многие выносят aud$ (с индексом) в более другое ТП, нежели SYSTEM, чтоб не засирать

Только не все объекты получится:
tst> alter index i_user1 rebuild tablespace tools;
alter index i_user1 rebuild tablespace tools
*
ERROR at line 1:
ORA-00701: object necessary for warmstarting database cannot be altered

Чего не даст можешь посмотреть в sys.bootstrap$ (как минимум)
10 янв 06, 12:46    [2239322]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
SmaLL
Member

Откуда: Voronezh brewery
Сообщений: 701
Oracle 8.1.7.4.1
Имеются дефолтные таблеспэйсы, полученные после создания БД.
USERS, INDX, RBS, SYSTEM, TOOLS, TEMP

Рабочая схема вся хранится в USERS и INDX.
После ребилда всех индексов рабочей схемы у меня INDX увеличился с 7 до 12 Гб. Т.к. объЁм используемого пространства не изменился, то хотелось бы уменьшить назад размер INDX до 7

Поэтому у меня и возник вопрос, могу ли я все индексы из INDX перенести в другой таблеспэйс, а старый грухнуть?

PS: В последствии хочу вынести рабочую схему в отдельные таблеспэйсы, чтобы не попадать в подобную ситуацию.
10 янв 06, 13:34    [2239576]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
softy
Member

Откуда: from Russia
Сообщений: 5911
Вроде как exp/imp раньше для этого использовался?
10 янв 06, 15:15    [2240154]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
SmaLL
Member

Откуда: Voronezh brewery
Сообщений: 701
softbuilder@inbox.ru
Вроде как exp/imp раньше для этого использовался?


Имеется в виду FULL ?
10 янв 06, 16:07    [2240515]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
222
Member [заблокирован]

Откуда: из форума
Сообщений: 1251
SmaLL

Поэтому у меня и возник вопрос, могу ли я все индексы из INDX перенести в другой таблеспэйс, а старый грухнуть?


Можешь, если не IOT и не LOB
Только непонятно зачем так извращаться.
Перестрой тот (или пару тех), который мешает двигать планочку(да и в то же ТП), уменьши файл - и всех делов.
10 янв 06, 16:12    [2240538]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
222
Member [заблокирован]

Откуда: из форума
Сообщений: 1251
ИОТ и ЛОБ тока експ-имп.
А нужного негодяя найди типа так -

select file_name, segment_name, segment_type, owner  
       from dba_extents s, 
       (select max(block_id) maxblock, file_id from dba_extents 
                group by file_id) b, 
            dba_data_files f 
        where s.block_id = b.maxblock 
        and s.file_id = b.file_id 
        and f.file_id = s.file_id
        and b.file_id = &File_Id
10 янв 06, 16:14    [2240551]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
softy
Member

Откуда: from Russia
Сообщений: 5911
SmaLL
softbuilder@inbox.ru
Вроде как exp/imp раньше для этого использовался?


Имеется в виду FULL ?


Да? Не знаю. А если по tablespace делать?
10 янв 06, 16:53    [2240735]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
Калина
Member

Откуда: Moskau
Сообщений: 2649
Какая разница, Full или нет?
------------------------------
Not affilated with VAZ
10 янв 06, 18:01    [2241040]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
Почитай лучше документацию
Guest
222
ИОТ и ЛОБ тока експ-имп.
10 янв 06, 18:04    [2241048]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
222
Member [заблокирован]

Откуда: из форума
Сообщений: 1251
Почитай лучше документацию
222
ИОТ и ЛОБ тока експ-имп.

не спорю, могу ошибаца.
10 янв 06, 18:35    [2241186]     Ответить | Цитировать Сообщить модератору
 Re: Уменьшение размера файла  [new]
Sergko
Member

Откуда:
Сообщений: 55
У меня такой же вопрос, нужно уменьшить размер файла, но не переносить...

Я новенький в этом деле. Буду очень признателен если пошагово распишите как это сделать! Оракле версии 8.
13 окт 06, 06:02    [3256550]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить