数据库服务器为 Sun Microsystems Inc SunOS 5.9 数据库为 Oracle9i
操作步骤如下:
1) 执行 select * from dba_data_files where tablespace_name='PPSTT' order by file_name desc
得到系统中该表空的数据文件序列字段FILE_NAME如值为 /dev/md/rdsk/d203 则我们在增加表空
间时应该取值d204.
2) 以root用户登陆数据库服务器
3) 执行 /usr/sbin/metainit d204 -p d100 2g 这里d204是表空文件的命名,后面的2g表示表空空间
大小,d100保持不变
4) 执行 chown oracle:dba /dev/md/dsk/d204
chown oracle:dba /dev/md/rdsk/d204
将这两个文件的权限分配给oracle用户和ora组
5) 从root用户切换到oracle用户(su oracle)
6) 与数据库建立连接:sqlplus "/ as sysdba"
7) 执行 alter tablespace "PPSTT" add datafile '/dev/md/rdsk/d204' size 2000m; 将表空文件加到
PPSTT表空中.
附:如下SQL可以查看各个表空间的使用情况:
select dbf.tablespace_name,
dbf.totalspace "总量(M)",
dbf.totalblocks as 总块数,
dfs.freespace "剩余总量(M)",
dfs.freeblocks "剩余块数",
(dfs.freespace / dbf.totalspace) * 100 "空闲比例"
from (select t.tablespace_name,
sum(t.bytes) / 1024 / 1024 totalspace,
sum(t.blocks) totalblocks
from dba_data_files t
group by t.tablespace_name) dbf,
(select tt.tablespace_name,
sum(tt.bytes) / 1024 / 1024 freespace,
sum(tt.blocks) freeblocks
from dba_free_space tt
group by tt.tablespace_name) dfs
where trim(dbf.tablespace_name) = trim(dfs.tablespace_name)