首页 > 数据库 > Oracle > 正文

Oracle dbf文件移动的方法

2020-07-26 13:25:47
字体:
来源:转载
供稿:网友

背景

oracle空间不足,发现dbf文件未按设计的路径存放,linux磁盘挂载空间未利用,需要移动一下位置错误的dbf文件。

检查文件系统

/home/oracle />df -h文件系统 容量 已用 可用 已用% 挂载点/dev/mapper/lv01-root 22G 4.5G 16G 23% /devtmpfs 3.8G 0 3.8G 0% /devtmpfs 3.9G 96K 3.9G 1% /dev/shmtmpfs 3.9G 153M 3.7G 4% /runtmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup/dev/sda1 190M 132M 44M 75% /boot/dev/mapper/lv02-home 20G 19G 0 100% /home/dev/mapper/oradatalv-oradata 30G 18G 9.8G 65% /oradatatmpfs 781M 16K 781M 1% /run/user/42tmpfs 781M 0 781M 0% /run/user/1001tmpfs 781M 0 781M 0% /run/user/0

home挂载点下空间已达到100%。

检查大文件

/home/oracle/oradata/ora12c />ls -lh总用量 8.7G/-rw-r-----. 1 oracle oinstall 6.7G 5月 20 13:54 upbs_data.dbf/-rw-r-----. 1 oracle oinstall 2.0G 5月 20 05:06 upbs_index.dbf

发现是dbf文件过大后,准备移动一下。应该存放数据库文件的oradata挂载点下还有剩余空间可以存放dbf文件。

/home/oracle/oradata/ora12c >sqlplus / as sysdbaSQL*Plus: Release 12.1.0.2.0 Production onWed May 20 14:18:36 2020Copyright (c) 1982, 2014, Oracle. All rights reserved.ERROR:ORA-09817: Write to audit file failed.Linux-x86_64 Error: 28: No space left on deviceAdditional information: 12ORA-09945: Unable to initialize the audit trail fileLinux-x86_64 Error: 28: No space left on device

oracle sqlplus直接登录失败,显示空间不足。

删除审计文件日志

/home/oracle/audit />rm /*/home/oracle/audit />ll总用量 0

删除后查看磁盘空间,发现刚删的审计文件有点少

/home/oracle/audit />df -h文件系统 容量 已用 可用 已用% 挂载点/dev/mapper/lv01-root 22G 4.5G 16G 23% /devtmpfs 3.8G 0 3.8G 0% /devtmpfs 3.9G 96K 3.9G 1% /dev/shmtmpfs 3.9G 153M 3.7G 4% /runtmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup/dev/sda1 190M 132M 44M 75% /boot/dev/mapper/lv02-home 20G 19G 60K 100% /home/dev/mapper/oradatalv-oradata 30G 18G 9.8G 65% /oradatatmpfs 781M 16K 781M 1% /run/user/42tmpfs 781M 0 781M 0% /run/user/1001tmpfs 781M 0 781M 0% /run/user/0

删除后有60k空间剩余,开始没发现aud文件路径有问题, 不是正常的aud路径。

重新查找清理审计日志释放空间

/home/oracle/app/oracle/admin/orcl />find ./ -name /*aud

查询出结果后清除前30天的

/home/oracle/app/oracle/admin/orcl />find ./ -name /*aud -mtime +30 /|xargs rm-f

关闭数据库

/home/oracle/audit />sqlplus / as sysdbaSQL/*Plus: Release 12.1.0.2.0 Production on Wed May 20 14:14:30 2020Copyright (c) 1982, 2014, Oracle. All rights reserved.Connected to:Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit ProductionWith the Partitioning, OLAP, Advanced Analytics and Real Application TestingoptionsSQL/> shutdown immediateDatabase closed.Database dismounted.ORACLE instance shut down.

复制dbf文件

/home/oracle/oradata/ora12c />cp upbs_data.dbf/oradata/orcl/appdata/upbs_data.dbf

登录数据库修改dbf文件路径

home/oracle/app/oracle/admin/orcl />sqlplus / as sysdbaSQL/*Plus: Release 12.1.0.2.0 Production on Wed May 20 14:33:30 2020Copyright (c) 1982, 2014, Oracle. All rights reserved.Connected to an idle instance.SQL/> startup mount;ORACLE instance started.Total System Global Area 2466250752 bytesFixed Size 2927384 bytesVariable Size 671089896 bytesDatabase Buffers 1778384896 bytesRedo Buffers 13848576 bytesDatabase mounted.SQL/> alter database rename file '/home/oracle/oradata/ora12c/upbs_data.dbf' to'/oradata/orcl/appdata/upbs_data.dbf';Database altered.

重启数据库服务

SQL/> shutdown immediateORA-01109: database not openDatabase dismounted.ORACLE instance shut down.SQL/> startupORACLE instance started.Total System Global Area 2466250752 bytesFixed Size 2927384 bytesVariable Size 671089896 bytesDatabase Buffers 1778384896 bytesRedo Buffers 13848576 bytesDatabase mounted.Database opened.SQL/>

plsql重新连接数据库成功,删除原来的dbf文件释放空间

总结

到此这篇关于Oracle dbf文件移动的文章就介绍到这了,更多相关Oracle dbf文件移动内容请搜索武林网以前的文章或继续浏览下面的相关文章希望大家以后多多支持武林网!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表