Oracle更改表空间大小的代码与实际操作

本文主要是以Oracle更改表空间大小的实际操作代码来引出Oracle更改表空间大小的实际操作步骤,同时此文章也对用户空间限额的具体操作步骤有一详细介绍,望大家在看望此片文章之后会有所收获。

目前成都创新互联已为上1000+的企业提供了网站建设、域名、虚拟空间、网站托管维护、企业网站设计、铁锋网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

 
 
 
  1. sys@TEST1>alter tablespace test_16k offline;

表空间已更改。

 
 
 
  1. sys@TEST1>alter database datafile '
    d:\oracle\product\10.2.0\oradata\test1\test6k.dbf' 
    autoextend on next 50m maxsize 200m;

数据库已更改。

 
 
 
  1. sys@TEST1>alter database datafile '
    d:\oracle\product\10.2.0\oradata\test1\test.dbf' resize 10m;

数据库已更改。

 
 
 
  1. sys@TEST1>alter user mxl quota 200m on test_16k;

用户已更改。

总结:

1、Oracle更改表空间大,乃修改的datafile非tablespace

2、不要出低级拼写错误。

3、错误提示很重要,不要想当然。

附:

三、磁盘配额管理的几个建议。

1、当在创建表空间对象的时候,出现“超出表空间的空间限量”错误提示的处理思路。这种情况一般是由很多种情况所造成的。笔者在遇到这种问题的时候,一般的处理思路是,先查看该用户的磁盘配额,看其是否满足空间上的需求。

若该用户没有磁盘配额管理的话,或者磁盘配额大小符合既定需求的话,则建议查看表空间的大小,看是否是因为表空间不足所造成的。若前两步还是不能够解决问题的,则看看表空间的管理方式。若是数据字典管理模式的话,则把他改为本地管理模式,一般就可以解决问题了。

2、若数据库中存放着不同办事处或者不同分公司的数据时,笔者建议对Oracle更改表空间大小进行磁盘限额。这可以有效的防止因为硬盘空间的不足导致整个数据库的崩溃。而若对用户进行磁盘配额管理的话,那最多只是某个办事处(某个用户)数据库操作出现故障而已。这也是提高Oracle数据库可用性的一个有效手段。

经查,表空间跟表空间限额两个值是不一样的.

推测按默认的话oracle应该会给每个用户分配一个默认的表空间限额,具体比例待查,但这比例肯定远小于100%.

所以说分配了400M的表空间未必能存储400M的数据.

解决办法如下:

查看用户表空间的限额

 
 
 
  1. select * from user_ts_quotas;

max_bytes字段就是了

-1是代表没有限制,其它值多少就是多少了.

不对用户做表空间限额控制:

 
 
 
  1. GRANT UNLIMITED TABLESPACE TO ***(用户);

这种方式是全局性的.

或者

 
 
 
  1. alter user ***(用户名) quota unlimited on ***(表空间);

这种方式是针对特定的表空间的.

可以分配自然也可以回收了:

 
 
 
  1. revoke unlimited tablespace from ***(用户)

或者

 
 
 
  1. alter user *** quota 0 on *** 

以上的相关内容就是对Oracle更改表空间大小的介绍,望你能有所收获。

当前标题:Oracle更改表空间大小的代码与实际操作
当前网址:http://www.mswzjz.cn/qtweb/news37/12587.html

攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能