故障现象:
C网数据库/文件系统空间使用率突然达到99%,检查发现原来是因为本地维护给数据库添加了数据文件,但是该数据文件添加到文件系统上导致根文件系统使用率突然增大。
将文件系统上的数据文件迁移到裸设备,裸设备在文件系统上只存在一个链接,几乎不占空间。
处理步骤:
1) 检查发现C网已没有已建好的可用裸设备,有一个建好的30G的裸设备没有使用,首先需要添加适合适用的裸设备。
2) 删除这个没有使用的30G的soft partition:
metaclear -s cqcdg -r d6042
3) 在删除的空间上建立一个2G的裸设备:
metainit -s cqcdg d6044 -p /dev/did/rdsk/d4s0 2g:
4) 在文件系统上建立到裸设备的链接
ln -s /dev/md/cqcdg/rdsk/d6044 pre_ln2_57.dbf
5) 更改链接文件的所有者
chown oracle:dba pre_ln2_57.dbf
6) 以sysdba身份登录并关闭数据库
sqlplus “/as sysdba”
SQL>shutdown immediate
7) 将文件系统文件上的数据导到裸设备文件上
dd if=/usr5/linkdata/sys/pre_ln2_61.dbf of=/usr5/linkdata/pre/pre_ln2_57.
dbf bs=134217728
if 文件系统文件名
of 新建裸设备链接名
bs dd时的blocksize,单位为byte,如果不设此项,dd的速度非常慢
8) 启动数据库到mount状态
SQL>startup mount
9) 更改数据文件名
SQL>ALTER DATABASE RENAME FILE '/usr5/linkdata/sys/pre_ln2_61.dbf' TO '/usr5/linkdata/pre/pre_ln2_57.dbf';
10) 打开数据库
SQL〉alter database open;
11) 验证更改