×
COOKIES
Prezeraním tejto stránky dochádza k spracovaniu cookies. Spracovaniu cookies zabránite v nastaveniach internetového prehliadača alebo nezobrazovaním tejto stránky v internetovom prehliadači.
Vytvárame riešenia

Ako odstrániť a znovu vytvoriť undo tablespaces

V tomto článku budem demonštrovať ako postupovať ak undo tablespaces už majú neakceptovateľnú veľkosť a je potrebné už s týmto stavom niečo robiť. V mojom prípade išlo o problém na virtuálke, kde Oracle undo tablespaces dospeli do takej veľkosti, že som už nemal dostatok voľného miesta. Pre uvoľnenie miesta som zvolil nasledujúci postup.
Ešte uvádzam, že pre SQL zápisy som použil nástroj Oracle SQL Developer. Pre zistenie veľkosti a umiestnenie databázových súborov je možné použiť nasledujúci zápis.
Príklad: Výpis atribútov k dbf súborom.
1
SELECT * FROM V$DATAFILE;
Príklad: Výpis vybraných atribútov k *.dbf súborom.
1
SELECT NAME, FILE#, STATUS, CHECKPOINT_CHANGE# "CHECKPOINT" FROM V$DATAFILE;
V nasledujúcom príklade robím konverziu bajtov na megabajty, zaokrúhlenie výsledného čísla a premenovanie atribútu BYTES na Size (MB).
Príklad: Výpis umiestnenia *.dbf súborov a ich veľkosti v MB.
1
SELECT NAME, round(BYTES/1024/1024) as "Size (MB)" FROM V$DATAFILE;
V tomto zápise používam absenciu as pre Oracle Database a premenovávam aj atribút NAME.
Príklad: Zápis pre Oracle Database.
1
SELECT NAME "DBF files path", round(BYTES/1024/1024) "Size (MB)" FROM V$DATAFILE;
Vďaka výstupu je možné zistiť veľkosti a umiestnenie *.dbf súborov.
Ďalším krokom bude vytvorenie nového undo tablespace. V mojom prípade som mal problém so súborom UNDOTBS01.DBF ako undotbs1. Preto som musel vytvoriť nový súbor UNDOTBS02.DBF, ktorému som nastavil veľkosť a zakázal rozširovanie.
Príklad: Vytvorenie nového súboru UNDOTBS02.DBF.
1
2
3
CREATE UNDO TABLESPACE undotbs2 DATAFILE
'C:\CODING\ORACLEDB\APP\ORACLE\ORADATA\XE\UNDOTBS02.DBF' SIZE 600M AUTOEXTEND OFF
ALTER SYSTEM SET undo_tablespace = UNDOTBS2;
Teraz treba ukončiť Oracle SQL Developer, znovu spustiť a vymazať staré undo tablespaces.
Príklad: Zmazanie starých undo tablespaces
1
drop tablespace undotbs1;
Po tejto operácii je potrebné opäť vyjsť s Oracle SQL Developera, prípadne reštartovať operačný systém a následne by už malo byť dostatok miesta na disku.

Záver

Pre zistenie aktuálneho TABLESPACE_NAME je možné použiť príkaz select tablespace_name, contents from dba_tablespaces;. Ak máte skúsenosti s undo tablespaces, môžete sa o ne podeliť prostredníctvom komentára.


SQL,Oracle,Oracle SQL Developer,undo,tablespaces,Oracle Database,SELECT,FROM
Žiadna časť tohto článku nesmie byť reprodukovaná bez uvedenia autora a URL na túto stránku.
Viac informácií nájdete v sekcii O projekte.

Komentáre

Článok neobsahuje zatiaľ žiadne komentáre.

Pridať komentár

Meno (povinné)
Web
Správa (povinné)
Odoslať
Od najnovších