Oracle XE 11g SYSAUXOdpowiedz

avatar
Rejestracja: 11/09/22
Posty: 78
19/11/2018, 11:51
1
Cześć.
Mam taki około APEXowy problem z bazą XE 11g.
Naładowałem do Static files plików wskutek czego tablespace SYSAUX rozepchałem do 10 GB.
Pokasowałem zbędne pliki i shrink’nołem WWV_FLOW_STATIC_FILES

Alter table WWV_FLOW_STATIC_FILES shrink space cascade;
ALTER TABLE WWV_FLOW_STATIC_FILES MODIFY LOB (FILE_CONTENT);
Oraz
alter table "WWV_FLOW_STATIC_FILES" move;

Dało mi to tyle że tablespace zajmuje 30% swojej zaalokowanej przestrzeni, ale ORA-12953: The request exceeds the maximum allowed database size of 11 GB nadal wyskakuje.
W internetach piszą żeby przekopiować dane z tablespacu do nowego a stary skasować, ale po pierwsze to tablespace systemowy Oracla i się boję, a poza tym z uwagi na ORA-12953 ani eksportu bazy nie mogę zrobić, ani założyć nowego tablespacu.

Macie jakieś doświadczenia/pomysły co z tym można zrobić?
avatar
Rejestracja: 10/07/19
Posty: 400
20/11/2018, 09:41
2
Że tak powiem zrobiłeś sobie kuku.
Jeżeli używasz 11g XE to pewnie upgradowałeś APEX-a. Przed upgradem zawsze zalecam zbudować osobną przestrzeń tabel dla metadanych apex-a. No i podczas instalacji używać tej przestrzeni a nie sysaux (skandal jest też że Oracle w swojej dokumentacji ma właśnie pokazaną komendę z sysaux).

W każdym bądź razie spróbowałbym pomniejszyć pliki. To, ze zrobiłeś shrinka na tabeli to nie znaczy ze zmniejszyły się pliki.
Spróbuj użyć tego polecenia do wygenerowania poleceń zmniejszających pliki:


with
hwm as (
-- get highest block id from each datafiles ( from x$ktfbue as we don't need all joins from dba_extents )
select /*+ materialize */ ktfbuesegtsn ts#,ktfbuefno relative_fno,max(ktfbuebno+ktfbueblks-1) hwm_blocks
from sys.x$ktfbue group by ktfbuefno,ktfbuesegtsn
),
hwmts as (
-- join ts# with tablespace_name
select name tablespace_name,relative_fno,hwm_blocks
from hwm join v$tablespace using(ts#)
),
hwmdf as (
-- join with datafiles, put 5M minimum for datafiles with no extents
select file_name,nvl(hwm_blocks*(bytes/blocks),5*1024*1024) hwm_bytes,bytes,autoextensible,maxbytes
from hwmts right join dba_data_files using(tablespace_name,relative_fno)
)
select
case when autoextensible='YES' and maxbytes>=bytes
then -- we generate resize statements only if autoextensible can grow back to current size
'/* reclaim '||to_char(ceil((bytes-hwm_bytes)/1024/1024),999999)
||'M from '||to_char(ceil(bytes/1024/1024),999999)||'M */ '
||'alter database datafile '''||file_name||''' resize '||ceil(hwm_bytes/1024/1024)||'M;'
else -- generate only a comment when autoextensible is off
'/* reclaim '||to_char(ceil((bytes-hwm_bytes)/1024/1024),999999)
||'M from '||to_char(ceil(bytes/1024/1024),999999)
||'M after setting autoextensible maxsize higher than current size for file '
|| file_name||' */'
end SQL
from hwmdf
where
Bytes-Hwm_Bytes>1024*1024 -- resize only if at least 1MB can be reclaimed
order by BYTES-HWM_BYTES desc;




Poza tym trzymanie plików w bazie szczególnie XE jest mało rozsądne... pomyśl o storowaniu tego na zewnątrz (śledź nasz angielskojęzyczny blog: https://apexutil.blogspot.com , mam nadzieje ze w ciągu jakiegoś miesiąca opublikujemy plugin który będzie wspierał składowanie plików poza bazą)
avatar
Rejestracja: 11/09/22
Posty: 78
22/11/2018, 07:56
3
Na swoje usprawiedliwienie mam tylko tyle, że nie ja instalowałem apexa, ale pewnie też zrobiłbym to zgodnie z dokumentacją.
Jak wrzucałem pliki do Static files to nie wiem czemu wydawało mi się że nie są one trzymane w bazie. Może pomyliłem #APP_IMAGES# z #IMAGE_PREFIX# :|
Dzięki za skrypcik. Niestety żeby zadziałał musiałem strzelić w high water marka mnóstwo systemowych tabel indeksów i czegoś tam jeszcze. Efekt jest taki że zrobiłem eksport bazy, zaimportowałem co chciałem i aplikacje działają, ale straciłem dostęp do środowiska developerskiego. Zastanawiam się czy jak odinstaluję apexa i zainstaluję go ponownie to czy wpłynie to na zainstalowane aplikacje.
Waszego bloga oczywiście śledzę, a zapowiedź pluginu widziałem i oczekuję z wypiekami :)
avatar
Rejestracja: 11/09/22
Posty: 78
09/01/2019, 13:27
4
No i pojawił się wpis na blogu o pluginie i znikł :(
avatar
Rejestracja: 10/07/19
Posty: 400
10/01/2019, 00:02
5
Ależ miałeś szczęście włączyliśmy na 15 sek. tylko żeby sprawdzić czy wszystko tam jest ok. W tym tygodniu myślę to opublikujemy.
Musisz być zalogowany aby wykonać tę akcję.