select tablespace_name,file_name,bytes/1024/1024 mb,autoextensible from cdb_data_files;
默认创建的表空间日志模式为开启状态LOGGING
select tablespace_name,logging,con_id from cdb_tablespaces;
3. 关闭表空间的日志模式
alter tablespace baymax nologging;
select tablespace_name,logging,con_id from cdb_tablespaces where tablespace_name=‘BAYMAX‘;
TABLESPACE LOGGING CON_ID
---------- --------- ----------
BAYMAX NOLOGGING 3
4. 作为数据加载后可以手工调整回日志方式
alter tablespace baymax logging;
二,数据泵导入数据时使用isable_archive_logging参数
12c的新特性,可以尽量减少导入操作时生成日志。并且在expdp时可以自动判断是否符合自动加载的条件direct=y。如果符合该条件数据泵会自动开启直接路径加载的方式来提高导出速度,比之前版本的数据泵只能了许多。
create or replace dp_dir as ‘/home/oracle‘;
grant read,write on directory dp_dir to dp
$ impdp dp/dp directory=dp_dir dumpfile=hr.dmp transform=disable_archive_logging:Y
需要注意的是常规的DML操作,如insert,update,delete语句是不受nologging限制的。即使在表空间上设置了nologging,也会生成日志,这样做是为了数据的可恢复性。
nologging的有效工作范围很小,总结如下:
-
直接路径加载的insert语句
-
直接路径的SQL*Loader语句
-
CREATE TABLE <table_name> AS SELECT(nologging只会影响创建表时的insert语句,当表创建好以后就不再受nologging的影响)
-
ALTER TABLE <table_name> MOVE
-
ALTER TABLE <table_name> ADD/MERGE/SPLIT/MOVE/MODIFY PARTITION
-
CREATE INDEX
-
ALTER INDEX <index_name> REBUILD
-
CREATE MATERIALIZED VIEW
-
CREATE MATERIALIZED VIEW LOG
-
ALTER MATERIALIZED VIEW <view_name> MOVE
-
ALTER MATERIALIZED VIEW LOG <view_log_name> MOVE
以后的学习过程中发现新的方法再补充进来。
全文完