rac下asm管理的表空间-数据文件的重命名
asm下表空间的重命名与普通文件系统下的表空间重命名原理是一样的,只不过asm管理的数据文件有一些需要注意的地方,另外在asm下操作数据文件需要格外小心,稍有不慎将会造成数据文件丢失,如可以做备份最好需要备份。
需求:公司rac数据库asm存储原本采用normal模式,现在给数据库做了备份策略,不想在使用normal模式的asm管理,这样日常管理太浪费时间,为了平滑迁移,我新添加了一个磁盘组oradata,把日后增加的数据文件首先添加到oradata磁盘组下,然后没有业务发生时再去迁移原始数据。
实施步骤:
1、原始文件存储data磁盘组:
ASMCMD [+data/orcl/datafile] > ls -l
Type Redund Striped Time Sys Name
DATAFILE MIRROR COARSE JUN 27 14:00:00 Y EFMIS.268.907265611
DATAFILE MIRROR COARSE JUN 27 14:00:00 Y EFMIS.269.911467049
DATAFILE MIRROR COARSE JUN 27 14:00:00 Y EFMIS.270.911467085
DATAFILE MIRROR COARSE JUN 27 14:00:00 Y EFMIS.271.913894971
DATAFILE MIRROR COARSE JUN 27 14:00:00 Y EFMIS.272.915559085
DATAFILE MIRROR COARSE JUN 27 14:00:00 Y EFMIS.273.915613859
DATAFILE MIRROR COARSE JUN 27 14:00:00 Y SYSAUX.257.907264709
DATAFILE MIRROR COARSE JUN 27 14:00:00 Y SYSTEM.256.907264709
DATAFILE MIRROR COARSE JUN 27 14:00:00 Y UNDOTBS1.258.907264709
DATAFILE MIRROR COARSE JUN 27 14:00:00 Y UNDOTBS2.264.907264867
DATAFILE MIRROR COARSE JUN 27 14:00:00 Y USERS.259.907264709
N efmis01.dbf => +DATA/ORCL/DATAFILE/EFMIS.268.907265611
N efmis02.dbf => +DATA/ORCL/DATAFILE/EFMIS.269.911467049
N efmis03.dbf => +DATA/ORCL/DATAFILE/EFMIS.270.911467085
N efmis04.dbf => +DATA/ORCL/DATAFILE/EFMIS.271.913894971
N efmis05.dbf => +DATA/ORCL/DATAFILE/EFMIS.272.915559085
N efmis06.dbf => +DATA/ORCL/DATAFILE/EFMIS.273.915613859
2、目标文件存储oradata磁盘组:
ASMCMD [+oradata/orcl/datafile] > ls -l
Type Redund Striped Time Sys Name
DATAFILE UNPROT COARSE JUN 27 22:00:00 Y EFMIS.256.915634603
DATAFILE UNPROT COARSE JUN 27 22:00:00 Y EFMIS.257.915634643
DATAFILE UNPROT COARSE JUN 27 22:00:00 Y EFMIS.258.915634663
DATAFILE UNPROT COARSE JUN 27 22:00:00 Y EFMIS.259.915634679
N efmis07.dbf => +ORADATA/ORCL/DATAFILE/EFMIS.256.915634603
N efmis08.dbf => +ORADATA/ORCL/DATAFILE/EFMIS.257.915634643
N efmis09.dbf => +ORADATA/ORCL/DATAFILE/EFMIS.258.915634663
N efmis10.dbf => +ORADATA/ORCL/DATAFILE/EFMIS.259.915634679
3、这里需要将data磁盘组下的efmis数据表空间下的文件都迁移到oradata下:
1)首先关闭数据库:
[grid@node2 ~]$ serctl stop database -d orcl
2)启动数据库一个节点实例到mount状态(也可以open下迁移数据,这里因为数据库暂时不会发生业务,所以直接在mount下迁移)并查询数据库数据文件组成:
[oracle@node1 ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Mon Jun 27 22:28:42 2016
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup mount
ORACLE instance started.
Total System Global Area 4275781632 bytes
Fixed Size 2260088 bytes
Variable Size 1073742728 bytes
Database Buffers 3187671040 bytes
Redo Buffers 12107776 bytes
Database mounted.
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
+DATA/orcl/datafile/system.256.907264709
+DATA/orcl/datafile/sysaux.257.907264709
+DATA/orcl/datafile/undotbs1.258.907264709
+DATA/orcl/datafile/users.259.907264709
+DATA/orcl/datafile/undotbs2.264.907264867
+DATA/orcl/datafile/efmis01.dbf
+DATA/orcl/datafile/efmis02.dbf
+DATA/orcl/datafile/efmis03.dbf
+DATA/orcl/datafile/efmis04.dbf
+DATA/orcl/datafile/efmis05.dbf
+DATA/orcl/datafile/efmis06.dbf
+ORADATA/orcl/datafile/efmis07.dbf
+ORADATA/orcl/datafile/efmis08.dbf
+ORADATA/orcl/datafile/efmis09.dbf
+ORADATA/orcl/datafile/efmis10.dbf
15 rows selected.
3)asm上迁移物理文件:
ASMCMD [+data/orcl/datafile] > cp +DATA/ORCL/DATAFILE/EFMIS.273.915613859 +ORADATA/ORCL/DATAFILE/efmis06.dbf
copying +DATA/ORCL/DATAFILE/EFMIS.273.915613859 -> +ORADATA/ORCL/DATAFILE/efmis06.dbf
ASMCMD [+data/orcl/datafile] > cp +DATA/ORCL/DATAFILE/EFMIS.272.915559085 +ORADATA/ORCL/DATAFILE/efmis05.dbf
copying +DATA/ORCL/DATAFILE/EFMIS.272.915559085 -> +ORADATA/ORCL/DATAFILE/efmis05.dbf
ASMCMD [+data/orcl/datafile] > cp +DATA/ORCL/DATAFILE/EFMIS.271.913894971 +ORADATA/ORCL/DATAFILE/efmis04.dbf
copying +DATA/ORCL/DATAFILE/EFMIS.271.913894971 -> +ORADATA/ORCL/DATAFILE/efmis04.dbf
ASMCMD [+data/orcl/datafile] > cp +DATA/orcl/datafile/EFMIS.270.911467085 +ORADATA/orcl/datafile/efmis03.dbf
copying +DATA/orcl/datafile/EFMIS.270.911467085 -> +ORADATA/orcl/datafile/efmis03.dbf
ASMCMD [+data/orcl/datafile] > cp +DATA/ORCL/DATAFILE/EFMIS.269.911467049 +ORADATA/ORCL/DATAFILE/efmis02.dbf
copying +DATA/ORCL/DATAFILE/EFMIS.269.911467049 -> +ORADATA/ORCL/DATAFILE/efmis02.dbf
ASMCMD [+data/orcl/datafile] > cp +DATA/ORCL/DATAFILE/EFMIS.268.907265611 +ORADATA/orcl/datafile/efmis01.dbf
copying +DATA/ORCL/DATAFILE/EFMIS.268.907265611 -> +ORADATA/orcl/datafile/efmis01.dbf
ASMCMD [+data/orcl/datafile] > cp USERS.259.907264709 +ORADATA/orcl/datafile/USERS
copying +data/orcl/datafile/USERS.259.907264709 -> +ORADATA/orcl/datafile/USERS
ASMCMD [+oradata/orcl/datafile] > ls -l
Type Redund Striped Time Sys Name
DATAFILE UNPROT COARSE JUN 27 23:00:00 Y EFMIS.256.915634603
DATAFILE UNPROT COARSE JUN 27 23:00:00 Y EFMIS.257.915634643
DATAFILE UNPROT COARSE JUN 27 23:00:00 Y EFMIS.258.915634663
DATAFILE UNPROT COARSE JUN 27 23:00:00 Y EFMIS.259.915634679
N USERS => +ORADATA/ASM/DATAFILE/USERS.266.915663721
N efmis01.dbf => +ORADATA/ASM/DATAFILE/efmis01.dbf.265.915663163
N efmis02.dbf => +ORADATA/ASM/DATAFILE/efmis02.dbf.264.915662267
N efmis03.dbf => +ORADATA/ASM/DATAFILE/efmis03.dbf.263.915662067
N efmis04.dbf => +ORADATA/ASM/DATAFILE/efmis04.dbf.262.915662031
N efmis05.dbf => +ORADATA/ASM/DATAFILE/efmis05.dbf.261.915661983
N efmis06.dbf => +ORADATA/ASM/DATAFILE/efmis06.dbf.260.915661893
N efmis07.dbf => +ORADATA/ORCL/DATAFILE/EFMIS.256.915634603
N efmis08.dbf => +ORADATA/ORCL/DATAFILE/EFMIS.257.915634643
N efmis09.dbf => +ORADATA/ORCL/DATAFILE/EFMIS.258.915634663
N efmis10.dbf => +ORADATA/ORCL/DATAFILE/EFMIS.259.915634679
4)数据库下重命名数据文件:
SQL> alter database rename file '+DATA/orcl/datafile/efmis01.dbf' to '+ORADATA/orcl/datafile/efmis01.dbf';
Database altered.
SQL> alter database rename file '+DATA/orcl/datafile/efmis02.dbf' to '+ORADATA/orcl/datafile/efmis02.dbf';
Database altered.
SQL> alter database rename file '+DATA/orcl/datafile/efmis03.dbf' to '+ORADATA/orcl/datafile/efmis03.dbf';
Database altered.
SQL> alter database rename file '+DATA/orcl/datafile/efmis04.dbf' to '+ORADATA/orcl/datafile/efmis04.dbf';
Database altered.
SQL> alter database rename file '+DATA/orcl/datafile/efmis05.dbf' to '+ORADATA/orcl/datafile/efmis05.dbf';
Database altered.
SQL> alter database rename file '+DATA/orcl/datafile/efmis06.dbf' to '+ORADATA/orcl/datafile/efmis06.dbf';
Database altered.
SQL> alter database rename file '+DATA/orcl/datafile/users.259.907264709' to '+ORADATA/orcl/datafile/USERS';
Database altered.
5)查看迁移后数据文件分布情况:
SQL> SELECT NAME FROM V$DATAFILE;
NAME
--------------------------------------------------------------------------------
+DATA/orcl/datafile/system.256.907264709
+DATA/orcl/datafile/sysaux.257.907264709
+DATA/orcl/datafile/undotbs1.258.907264709
+ORADATA/orcl/datafile/users
+DATA/orcl/datafile/undotbs2.264.907264867
+ORADATA/orcl/datafile/efmis01.dbf
+ORADATA/orcl/datafile/efmis02.dbf
+ORADATA/orcl/datafile/efmis03.dbf
+ORADATA/orcl/datafile/efmis04.dbf
+ORADATA/orcl/datafile/efmis05.dbf
+ORADATA/orcl/datafile/efmis06.dbf
+ORADATA/orcl/datafile/efmis07.dbf
+ORADATA/orcl/datafile/efmis08.dbf
+ORADATA/orcl/datafile/efmis09.dbf
+ORADATA/orcl/datafile/efmis10.dbf
15 rows selected.
6)打开数据库:这里可以成功打开数据库,证明数据文件迁移是没有问题的。
SQL> alter database open;
Database altered.
7)设置grid管理数据库
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> exit
[grid@node2 ~]$ srvctl start database -d orcl
8)查看目前集群软件及数据库运行状态:
[grid@node2 ~]$ crsctl status resource -t
ora.asm
ONLINE ONLINE node1 Started
ONLINE ONLINE node2 Started
ora.orcl.db
1 ONLINE ONLINE node1 Open
2 ONLINE ONLINE node2 Open
ASMCMD [+oradata/orcl/datafile] > lsdg
State Type Total_MB Free_MB Req_mir_free_MB Usable_file_MB Voting_files Name
MOUNTED NORMAL 409592 358082 102398 127842 N DATA/
MOUNTED NORMAL 204796 204126 0 102063 N FLASH/
MOUNTED EXTERN 6134 5736 0 5736 Y GRIDDG/
MOUNTED EXTERN 409594 255077 0 255077 N ORADATA/
SQL> select name,round(total_mb/1024,2),round(free_mb/1024,2) from v$asm_diskgroup;
NAME ROUND(TOTAL_MB/1024,2) ROUND(FREE_MB/1024,2)
-------------------- ---------------------- ------------------------------------------------------------------------------
DATA 399.99 349.69
FLASH 200 199.34
GRIDDG 5.99 5.6
ORADATA 399.99 249.1
rac下asm管理的表空间-数据文件的重命名的更多相关文章
- oracle 表空间 数据文件 表的关系
数据文件是表空间的容器,增加数据文件是增大表空间的容量,而不是往表空间里添加数据因此数据文件肯定能添加,如果表空间用完了,再添加新的数据就会报错你可以这样理解,数据库是一个箱子,表空间是箱子里的抽屉, ...
- Oracle数据库表空间 数据文件 用户 以及表创建的SQL代码
--create the tablespace CREATE SMALLFILE TABLESPACE "TABLE_CONTAINER" --创建表空间 DATAFILE 'E: ...
- Oracle创建、管理撤销表空间
撤销管理模式: 用户通过设定撤销管理模式(undo mode)就可以灵活地选择使用手动撤销管理(manual undo management)或自动撤销管理(automatic undo manage ...
- asm和file system之间数据文件的转换
How to move a datafile from a file system to ASMMoving a datafile from the file system can be achive ...
- [Oracle]System 表空间的文件丢失
如果system 表空间的文件丢失,假设有备份的情况,可以恢复.数据库需要设置为mount 状态,然后restore/recover datafile 模拟实验: SQL> select nam ...
- EOFError: Compressed file ended before the end-of-stream marker was reached解决办法(在Windows下查看已下载的MNIST数据文件)
出现这个问题的原因是因为文件下载到一半就中断了,解决办法是删除datasets中下载到一半的数据包. 下面以我遇到的问题为例: 我下载数据下载到最后一个包就没有反应了,于是我强制终止了运行,可能是因为 ...
- php文件夹下文件批量重命名
php文件夹下文件批量重命名 <?php header("Content-type:text/html;charset=utf-8"); $dir = __DIR__.'./ ...
- 使用 vim 快速对当前文件夹下的文件批量重命名
前言 我们在使用 Linux 的时候,有很多种方法可以对文件进行重命名,例如 命令行 下的 mv 命令,或者是使用像 dolphin 这样的图形文件管理器.但是有时候需要对一个文件夹下的所有文件批量重 ...
- java中实现File文件的重命名(renameTo)、将文件移动到其他目录下、文件的复制(copy)、目录和文件的组合(更加灵活方便)
欢迎加入刚建立的社区:http://t.csdn.cn/Q52km 加入社区的好处: 1.专栏更加明确.便于学习 2.覆盖的知识点更多.便于发散学习 3.大家共同学习进步 3.不定时的发现金红包(不多 ...
随机推荐
- c# 异步编程demo (async await)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.W ...
- PHP curl_setopt函数用法介绍上篇
最近,学习与实践了php中curl的知识点.在此做个初步的总结: 先看看对于它的基本介绍: curl_setopt函数是php中一个重要的函数,它可以模仿用户的一些行为,如模仿用户登录,注册等等一些用 ...
- 编写Unity3D着色器的三种方式
不管你会不会写Unity3D的shader,估计你会知道,Unity3D编写shader有三种方式,这篇东西主要就是说一下这三种东西有什么区别,和大概是怎样用的. 先来列一下这三种方式: fixed ...
- JavaScript网页换肤
使网页背景颜色可选黄/粉 <!doctype html> <html> <head><title>网页换肤</title></head ...
- [Scikit-learn] Dynamic Bayesian Network - HMM
Warning The sklearn.hmm module has now been deprecated due to it no longer matching the scope and th ...
- 08python之列表的常用方法
列表list是python常用的数据类型,需要掌握以下常用方法: name_list = ['alex','tenglan','65brother'] 这个变量和之前的变量只存一个数字或字符串,这个列 ...
- linux安装nagios客户端
( 安装到 被监控的机器上)新增用户和组 useradd nagiosgroupadd nagcmd usermod -a -G nagcmd nagios (如果安装中报没有c编译器,就 yum i ...
- Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile)
使用maven打包的时候出现如下错误: Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compil ...
- Tomcat在Linux下的安装与配置
一.安装配置JDK 1.官网下载JDK1.7 mkdir /usr/java cd /uar/java wget http://download.oracle.com/otn/java/jdk/7u8 ...
- SYN攻击处理
针对SYN攻击的几个环节,提出相应的处理方法: 方式1:减少SYN-ACK数据包的重发次数(默认是5次): sysctl -w net.ipv4.tcp_synack_retries=3 sysctl ...