Alteração de DATAFILEs em ambiente Multitenant / Singletenant

A alteração de DATAFILEs deve levar em conta o CONTAINER onde se está conectado.

Veja abaixo que a CDB_DATA_FILES mostra que temos o DATAFILE 17, que eu quero colocar em OFFLINE, mas comando para isto falha, informando que o DATAFILE não existe.

SQL> SELECT FILE_ID, FILE_NAME FROM CDB_DATA_FILES ORDER BY FILE_ID;

   FILE_ID FILE_NAME
---------- ----------------------------------------------------------------------------------------------------
         1 +DATA/ORCL/DATAFILE/system.412.920121645
         3 +DATA/ORCL/DATAFILE/sysaux.444.920121645
         6 +DATA/ORCL/DATAFILE/users.1310.920121645
         7 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/system.1305.914377097
         8 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/sysaux.1306.914377097
         9 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/users.1019.914377163
        10 +DATA/ORCL/DATAFILE/undotbs2.420.920121645
        11 +DATA/ORCL/DATAFILE/users.477.920121645
        12 +DATA/ORCL/DATAFILE/teste.1212.920121645
        13 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/shsb.733.918477161
        16 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/tbs_catalogo.328.922888157
        17 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/soe.799.926084281
        18 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/teste_data.593.929281703
        19 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/teste_index.475.929281715

14 rows selected.

SQL> ALTER DATABASE DATAFILE 17 OFFLINE;
alter database datafile 17 offline
*
ERROR at line 1:
ORA-01516: arquivo de log, arquivo de dados ou arquivo temporario inexistente "17"


SQL>

Veja que pela DBA_DATA_FILES (e não CDB_*) este DATAFILE não existe. Então, ele não está neste CONTAINER, está em outro. Conectado no CONTAINER correto, o DATAFILE aparece na DBA_DATA_FILES, e pode ser colocado em OFFLINE.

SQL> SELECT FILE_ID, FILE_NAME FROM DBA_DATA_FILES ORDER BY FILE_ID;

   FILE_ID FILE_NAME
---------- ----------------------------------------------------------------------------------------------------
         1 +DATA/ORCL/DATAFILE/system.412.920121645
         3 +DATA/ORCL/DATAFILE/sysaux.444.920121645
         6 +DATA/ORCL/DATAFILE/users.1310.920121645
        10 +DATA/ORCL/DATAFILE/undotbs2.420.920121645
        11 +DATA/ORCL/DATAFILE/users.477.920121645
        12 +DATA/ORCL/DATAFILE/teste.1212.920121645

6 rows selected.

SQL> ALTER SESSION SET CONTAINER = CATALOGO;

Session altered.

SQL> SELECT FILE_ID, FILE_NAME FROM DBA_DATA_FILES ORDER BY FILE_ID;

   FILE_ID FILE_NAME
---------- ----------------------------------------------------------------------------------------------------
         7 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/system.1305.914377097
         8 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/sysaux.1306.914377097
         9 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/users.1019.914377163
        13 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/shsb.733.918477161
        16 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/tbs_catalogo.328.922888157
        17 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/soe.799.926084281
        18 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/teste_data.593.929281703
        19 +DATA/ORCL/352274B4763C5CD1E053CA00A8C07BDB/DATAFILE/teste_index.475.929281715

8 rows selected.

SQL> ALTER DATABASE DATAFILE 17 OFFLINE;

Database altered.

SQL>

Leave a Reply

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.