服务于区块链开拓者

www.zhidnet.com

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

一、脱机状态

数据库置于脱机状态实现数据库的维护,主要维护工作包括如下:

1、在数据库出于打开状态时移动数据文件

2、在数据库处于打开状态时恢复一个表空间或者一个数据文件

3、执行对表空间的脱机备份

4、当数据库的一部分不能被访问,其他部分可以正常访问时

注:当一个表空间被置为脱机状态或者重新置为联机状态时,oracle会把这一事件记录在数据字典和控制文件中。同时也会记录在报警文件中。

以下表空间不能被置为脱机:

1、默认临时表空间

2、系统表空间system

3、上面有活动的还原/回滚段的表空间

脱机指令: alter tablespace YGMD1 offline;

联机指令:alter tablespace YGMD1 online;

查看表空间对应的数据文件的sql:

select t.ts#,t.name as tablespace_name,d.file# as fileId,d.name as file_name  from v$tablespace t ,v$datafile d where t.ts#=d.ts#

使用了v$tablespace,v$datafile两个数据字典,该数据字典是来自于控制文件中的信息,属于动态的数据字典视图。

其实dba_data_files静态数据字典中保存了表空间和数据文件的对应信息

select tablespace_name,file_name from dba_data_files;

二、只读状态

如果将一个数据库精心设计,把许多不变的数据归类放到一个或几个表空间中,然后将他们置为只读状态,将会使得数据库的维护更加容易且效率更高

alter tablespace name read only;

将表空间置为只读后,表空间暂时处于中间状态,保证在事物结束(commit or rollback)后将表空间置为只读状态。

删除表空间中的对象如:表、索引是可以的,因为删除操作执行的是ddl操作,它只是修改数据字典而不是修改数据文件。

alter tablespace name read write;

将表空间置为正常状态。

注:所有的alter语句都会被记录在报警文件中。

三、存储设置

修改表空间中所设置的存储参数使用如下命令格式:

alter tablespace tablespace_name 

  minimum extent 正整数k|M

  default存储子句

ex:

alter tablespace tablespace_name  minimum extent 100K

alter tablespace tablespace_name default storage(initial 100k next 100k maxextents 200)

在alter语句中不能直接修改initial 、next、maxextents参数需要在storage存储子句中修改。具体参考下一篇关于storage子句使用的文章。

 

 

posted on 2014-06-25 23:59  知点网  阅读(2982)  评论(0编辑  收藏  举报