求助

qaz7ujm 2013-01-28 03:26:05
怎么查看表空间 和增加表空间
新手 求助
...全文
569 6 打赏 收藏 举报
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
张雨露 2013-01-28
学习了
  • 打赏
  • 举报
回复
熊猫大虾 2013-01-28
如果要看表空间的属性,执行语句:select * from dba_tablespaces; 如果想知道如何创建表空间,语法描述如下: CREATE [SMALLFILE|BIGFILE] TABLESPACE tablespace_name DATAFILE datefile_clause1 [,datefile_clause2] …… [ EXTENT MANAGEMENT LOCAL ] [ UNIFORM SIZE nnnn{K|M} ] [ AUTOALLOCATE ] [ SEGMENT SPACE MANAGEMENT { AUTO|MANUAL }] [ BLOCKSIZE nnnn{K|M} ] [ ONLINE|OFFLINE ] [ LOGGING|NOLOGGING ]; 其中: SMALLFILE|BIGFILE -- 小文件|大文件,省略为小文件; tablespace_name — 表空间名 Datafile_Clause — 完整语法如下: path\file_nameSIZEnnnn{K|M} REUSE [AUTOEXTEND {OFF|ON NEXT nnnn{K|M} {MAXSIZE nnnn{K|M}|UNLIMITED }}] 其中: path\file_name — 数据文件的存储路径和文件名; SIZE nnnn {K|M} -- 文件大小; REUSE — 如果File 已经存在,用原文件新Size,原来无File,则忽略REUSE; AUTOEXTEND — 文件空间自动增加,缺省等于AUTOEXTEND OFF; ON NEXTnnnn{K|M} — 文件空间自动增加大小; MAXSIXE nnnn{K|M} — 最大空间; UNLIMITED — 无限制。 EXTENT MANAGEMENT LOCAL — 代表本地化表空间,可以缺省; UNIFORM -- 区大小相同,默认为1M AUTOALLOCATE — 区大小系统动态自动分配。缺省等于AUTOALLOCATE。 SEGMENT SPACE MANAGEMENT — 段空间分配方式; BLOCKSIZE — 创建非标准块表空间。如果创建16K块标准的表空间,则需要设置参数 DB_16K_BLOCK_SIZE=16384。缺省时块大小按参数DB_BLOCK_SIZE创建; ONLINE|OFFLINE — 表空间联机/脱机。缺省等于ONLINE;LOGGING|NOLOGGING — 创建日志/不创建日志。缺省等于LOGGING。 扩展表空间 首先查看表空间的名字和所属文件 select tablespace_name, file_id, file_name, round(bytes/(1024*1024),0) total_space from dba_data_files order by tablespace_name; 1.增加数据文件 ALTER TABLESPACE game ADD DATAFILE '/oracle/oradata/db/GAME02.dbf' SIZE 1000M; 2.手动增加数据文件尺寸 ALTER DATABASE DATAFILE '/oracle/oradata/db/GAME.dbf' RESIZE 4000M; 3.设定数据文件自动扩展 ALTER DATABASE DATAFILE '/oracle/oradata/db/GAME.dbf AUTOEXTEND ON NEXT 100M MAXSIZE 10000M;
  • 打赏
  • 举报
回复
draling 2013-01-28
  • 打赏
  • 举报
回复
睿智天成 2013-01-28
增加表空间的步骤: 1:找出该表空间对应的数据文件及路径 select * from dba_data_files t where t.tablespace_name = 'ARD' 2:增大数据文件 alter database datafile '全路径的数据文件名称' resize ***M 3:增加数据文件 alter tablespace 表空间名称 add datafile '全路径的数据文件名称' ***M 注解:Oracle 数据库里查看的表空间尽量让free百分比保持在10%以上,如果低于10%就增加datafile或者resizedatafile,一般数据文件不要超过2G
  • 打赏
  • 举报
回复
睿智天成 2013-01-28
select a.tablespace_name,a.bytes/1024/1024 "Sum MB",(a.bytes-b.bytes)/1024/1024 "used MB",b.bytes/1024/1024 "free MB",round(((a.bytes-b.bytes)/a.bytes)*100,2) "percent_used" from (select tablespace_name,sum(bytes) bytes from dba_data_files group by tablespace_name) a, (select tablespace_name,sum(bytes) bytes,max(bytes) largest from dba_free_space group by tablespace_name) b where a.tablespace_name=b.tablespace_name order by ((a.bytes-b.bytes)/a.bytes) desc “Sum MB”表示表空间所有的数据文件总共在操作系统占用磁盘空间的大小 比如:test表空间有2个数据文件,datafile1为300MB,datafile2为400MB,那么test表空间的“Sum MB”就是700MB “userd MB”表示表空间已经使用了多少 “free MB”表示表空间剩余多少 “percent_user”表示已经使用的百分比
  • 打赏
  • 举报
回复
long842693 2013-01-28
查看表空间的名字和所属文件 select tablespace_name, file_id, file_name, round(bytes/(1024*1024),0) total_space from dba_data_files order by tablespace_name; 1.增加数据文件 ALTER TABLESPACE game ADD DATAFILE '/oracle/oradata /GAME02.dbf' SIZE 1000M; 2.手动增加数据文件尺寸 ALTER DATABASE DATAFILE '/oracle/oradata/GAME.dbf' RESIZE 4000M;
  • 打赏
  • 举报
回复
发帖
基础和管理

1.7w+

社区成员

Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
帖子事件
创建了帖子
2013-01-28 03:26
社区公告
暂无公告