为什么ALTER TABLESPACE OFFLINE命令仍然离开表空间' USERS'在' READ ONLY'模式? 我错过了什么/做错了吗?
SQL> select user from dual;
USER
------------------------------
SYS
SQL> ALTER TABLESPACE USERS OFFLINE IMMEDIATE;
Tablespace altered.
SQL> SELECT TABLESPACE_NAME, STATUS, CONTENTS FROM DBA_TABLESPACES;
TABLESPACE_NAME STATUS CONTENTS
------------------------------ --------- ---------
SYSTEM ONLINE PERMANENT
SYSAUX ONLINE PERMANENT
UNDOTBS1 ONLINE UNDO
TEMP ONLINE TEMPORARY
USERS READ ONLY PERMANENT
答案 0 :(得分:1)
因为它是只读的。您可以在dba_data_files中检查数据文件状态:
select file_id, file_name, tablespace_name, online_status;
应该报告为'OFFLINE'。
答案 1 :(得分:1)
这取决于Oracle版本。 在脱机只读表空间后,dba_tablespaces视图的状态列显示:
10g:离线
11g:只读
12c:只读
但是在两个版本上,您可以通过选择DBA_DATA_FILES视图来检查表空间的ONLINE_STATUS:
select file_name,tablespace_name,online_status
from dba_data_files;