oracle 表空间文件迁移

表空间文件迁移

背景

由于各种原因,在实际工作中可能会出现oracle服务器数据盘空间被占满的情况,这个时候单纯的添加新磁盘,后续表空间文件放新盘的方案已经不适用了,因为源盘已经占用满了,数据库服务会异常,且之前的表空间是自增长的,会一直顶死源盘),这个时候就必须得将这部分没到最大值的表空间文件一起迁移到新盘

操作步骤

1、挂盘

推荐使用lvm

pvcreate /dev/sdb
vgcreate oravg /dev/sdb
lvcreate -n oralv -L 190G oravg
mkfs.ext4 /dev/oravg/oralv
mkdir /oradata
chown oracle:oinstall /oradata
echo "/dev/oravg/oralv /oradata ext4 defaults 0 0" >> /etc/fstab
mount -a
df -h

2、关闭监听,关闭数据库

[oracle@testosa:/home/oracle]$ lsnrctl stop
[oracle@testosa:/home/oracle]$ sqlplus / as sysdba
sys@testdba(testosa)> shutdown immediate

3、移动需要移动的表空间文件到新目录

[oracle@testosa:/oracle/oradata/testdba]$ mv sysaux01.dbf /oradata/
[oracle@testosa:/oracle/oradata/testdba]$ mv system01.dbf /oradata/
[oracle@testosa:/oracle/oradata/testdba]$ mv test01.dbf /oradata/
[oracle@testosa:/oracle/oradata/testdba]$ mv undotbs01.dbf /oradata/
[oracle@testosa:/oracle/oradata/testdba]$ mv users01.dbf /oradata/

4、mount数据库,并修改表空间文件信息

#数据库启动至mount状态
sys@testdba(testosa)> startup mount

#修改表空间文件信息
sys@testdba(testosa)> alter database rename file '/oracle/oradata/testdba/sysaux01.dbf' to '/oradata/sysaux01.dbf';

Database altered.

sys@testdba(testosa)> alter database rename file '/oracle/oradata/testdba/system01.dbf' to '/oradata/system01.dbf';

Database altered.

sys@testdba(testosa)> alter database rename file '/oracle/oradata/testdba/test01.dbf' to '/oradata/test01.dbf';

Database altered.

sys@testdba(testosa)> alter database rename file '/oracle/oradata/testdba/undotbs01.dbf' to '/oradata/undotbs01.dbf';

Database altered.

sys@testdba(testosa)> alter database rename file '/oracle/oradata/testdba/users01.dbf' to '/oradata/users01.dbf';

Database altered.

5、打开数据库,并启动监听

sys@testdba(testosa)> alter database open;

Database altered.

-- 启动监听程序
sys@testdba(testosa)> ! lsnrctl start

6、验证数据服务和数据

  • 16
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值