日期:2014-05-17  浏览次数:21299 次

表空间的大小影响数据库的大小么?如果定义表空间为5M,那么这个数据库保存数据不能超过5M么?
表空间的大小影响数据库的大小么?如果定义表空间为5M,那么这个数据库保存数据不能超过5M么?

------解决方案--------------------
一个数据库是有数据表空间/索引表空间/临时表空间组成的.
一个用户所有保存的数据,都是在数据表空间的,如果这个表空间为5M,那么该用户保存的数据是肯定超不过5M的
------解决方案--------------------
表空间的数据文件的autoextend 的属性如果为on的话,表空间的总大小会增加,一直到到maxsize属性的值。如果autoextend属性为off的话,存储的数据就不会超过表空间的大小了。
------解决方案--------------------
如果指定了autoextend 为on的话,maxsize是需要指定的,形如
create tablespace tsname datafile '/XXX/XXX.dfb' size 4000M autoextend on next 40M maxsize 20000M之类的
------解决方案--------------------
如果表空间未开启自动扩展,那就只能存储5M的数据;如果开启了自动扩展,然后会让你设置每次扩展多少,最大多少,然后超过5M后,就是扩展你设置的数值,知道最大的值~!
------解决方案--------------------
引用:
表空间的大小影响数据库的大小么?如果定义表空间为5M,那么这个数据库保存数据不能超过5M么?


没有指定auto extend的话,那么只有5M,但是如果细扣一下,算上PGA里面尚未写入REDOlog里面的数据,还有在内存里面尚未写入到磁盘的数据,可能会超过5M吧,然后就会因为保存不了,会报磁盘空间不够的错误。
------解决方案--------------------
表空间是数据库的物理表现,是真正存储数据库对象的地方。在某种程度上,表空间的大小就是数据库的大小。
------解决方案--------------------
楼上几位说的没错,你也可以设置为表空间根据后期数据量的增加自动扩展
但是据我的经验来看,表空间在生产库运行期自动扩展的话,会影响性能的