迁移本地数据文件、控制文件、日志文件到新的存储(挂载点目录与本地目录相同)

来源:互联网 发布:linux安装gz文件 编辑:程序博客网 时间:2024/05/29 05:54

迁移数据文件、日志文件、控制文件到新的存储

  (相同的目录)

 

一、添加存储

1、 分区

[root@super ~]# fdisk /dev/sdb

2、 格式化

[root@super ~]# mkfs.ext4 /dev/sdb1

3、 创建一个挂载点

[root@super ~]# mkdir -p /data

4、 授权

[root@super ~]# chown oracle:oinstall /data –R

[root@super ~]# chmod 775 -R /data

二、关掉数据库

查询控制文件路径

SQL> select name from v$controlfile;

 

NAME

----------------------------

/oradata/orcl/control01.ctl

/oradata/orcl/control02.ctl

/oradata/orcl/control03.ctl

     查询数据文件路径

SQL> select name fromv$datafile;

 

NAME

----------------------------

/oradata/orcl/system01.dbf

/oradata/orcl/sysaux01.dbf

/oradata/orcl/undotbs01.dbf

/oradata/orcl/users01.dbf

查询日志文件路径

SQL> select member fromv$logfile;

 

MEMBER

--------------------------

/oradata/orcl/redo01.log

/oradata/orcl/redo03.log

/oradata/orcl/redo02.log

      强制检查点,切日志,关闭数据库

SQL>alter systemcheckpoint;

SQL>alter system switchlogfile;

SQL>shutdown immediate;

三、修改数据文件位置

[oracle@super ~]$ cd /data

     由于文件都放在/oradata下所以只创建一个目录就可以

[oracle@super data]$ mkdir -p /orcl

复制到存储上

[oracle@super data]$ cp /oradata/orcl/*  orcl/ -p

将原来的/oradata改名

[root@super /]# mv oradata oradata1

卸载/data,将盘挂载在新的/oradata上

[root@super /]# umount /data

[root@super /]# mkdir -p /oradata

     授权

[root@super /]# chown oracle:oinstall/oradata –R

root@super /]# chmod 775 /oradata –R

将存储挂载到/oradata上

[root@super /]# mount /dev/sdb1 /oradata

将挂载点写入fstab

[root@super /]# vi /etc/fstab

/dev/sdb1         /oradata         ext4   defaults        0 0

四、启动数据库

    [root@super oradata1]#su - oracle

[oracle@super ~]$ sqlplus /as sysdba

 

SQL*Plus: Release 11.2.0.4.0Production on Tue Apr 26 06:54:53 2016

 

Copyright (c) 1982, 2013,Oracle.  All rights reserved.

 

 

Connected to:

Oracle Database 11gEnterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, OLAP,Data Mining and Real Application Testing options

 

SQL> select open_mode fromv$database;

 

OPEN_MODE

--------------------

READ WRITE

五、遇到错误及解决方法

[root@super ~]# umount /data

umount: /data: device isbusy.

        (In some casesuseful info about processes that use

         the device isfound by lsof(8) or fuser(1))

    解决方法

[root@super ~]# fuser -m -v/data/

                 USER        PID ACCESS COMMAND

/data/:            oracle     2029 ..c.. bash

                     oracle    27018 ..c.. sqlplus

 

[root@super ~]# kill -9 2029

[root@super ~]# kill -9 27018

 

 

 

 

 

 

0 0