模拟用户zytuser的表空间ZYTUSER_TBS表空间添加数据文件到本地。
--环境准备
1.创建一个表空间
--创建表空间
create tablespace ZYTUSER_TBS datafile '+DATA' size 10m;
ALTER user ZYTUSER DEFAULT TABLESPACE ZYTUSER_TBS;
GRANT dba TO userzyt;
conn ZYTUSER/ZYTUSER
create table table1 as select * from dba_objects;
insert into table1 select * from table1;

2.首先查看db_create_file_dest参数指定数据文件创建路径。指定为+DATA;当它为Null时,默认位置为$ORACLE_HOME/dbs
SQL> show parameter db_create_file_dest

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest string +DATA

3.给这个表空间添加数据文件到本地
--正确
00:37:10 SYS@zytrac1>ALTER TABLESPACE ZYTUSER_TBS ADD DATAFILE SIZE 10m AUTOEXTEND ON NEXT 10M MAXSIZE 20m;

Tablespace altered.

--错误
1.
ALTER TABLESPACE ZYTUSER_TBS ADD DATAFILE ' +DATA'SIZE 10m AUTOEXTEND ON NEXT 10M MAXSIZE 20m;
2.
ALTER TABLESPACE ZYTUSER_TBS ADD DATAFILE 'DAT' SIZE 10m AUTOEXTEND ON NEXT 10M MAXSIZE 20m;

TABLESPACE_NAME FILE_NAME BIG FILE_ID AUT UG TG
------------------------------ -------------------------------------------------- --- ---------- --- ---------- ----------
ZYTUSER_TBS +DATA/zytrac/datafile/zytuser_tbs.289.1001722641 NO 7 NO .009765625 0
ZYTUSER_TBS +DATA/zytrac/datafile/zytuser_tbs.288.1001723845 NO 8 YES .009765625 .01953125
ZYTUSER_TBS /picclife/app/oracle/product/11.2.0/db_1/dbs/ +DA NO 9 YES .009765625 .01953125
TA

4.--alert
节点一alert正常,节点二alert报错。
SQL> select count(*) from table1;

COUNT(*)
----------
36864


SQL> select count(*) from table1;
select count(*) from table1
*
ERROR at line 1:
ORA-01157: cannot identify/lock data file 9 - see DBWR trace file
ORA-01110: data file 9: '/picclife/app/oracle/product/11.2.0/db_1/dbs/ +DATA'

5.解决方法
--mos两个
ORA-01157: cannot identify/lock data file 66 - see DBWR trace file ORA-01110: data file 66: (Doc ID 1612244.1)
How to move a datafile from a file system to ASM (Doc ID 390274.1)--Oracle Database - Enterprise Edition - Version 10.1.0.5 to 10.2.0.5.0 [Release 10.1 to 10.2]

How to Move a Datafile from Filesystem to ASM Using ASMCMD CP Command. (Doc ID 1610615.1)--Oracle Database - Enterprise Edition - Version 11.2.0.1 to 12.2.0.1 [Release 11.2 to 12.2]

NOTE: To copy datafiles from primary to standby databases on ASM it is recommended to use RMAN.
How to Copy ASM datafile From Primary Database to Standby Database on ASM using RMAN(Doc ID 605234.1)

--处理

--问题解决
--第一种方式
alter database datafile 9 offline;
RMAN> copy datafile '/picclife/app/oracle/product/11.2.0/db_1/dbs/ +DATA' to '+DATA/zytrac/datafile/zytuser_tbs.2019';
--RMAN> copy datafile '/picclife/app/oracle/product/11.2.0/db_1/dbs/ +DATA' to '+DATA';

alter database rename file '/picclife/app/oracle/product/11.2.0/db_1/dbs/ +DATA' to '+DATA/zytrac/datafile/zytuser_tbs.2019';
Database altered.
SQL> recover datafile '+DATA/zytrac/datafile/zytuser_tbs.2019';
Media recovery complete.
SQL> alter database datafile '+DATA/zytrac/datafile/zytuser_tbs.2019' online;
--alter database datafile 9 online;

--第二种方式
Doc ID 1610615.1
1) Make sure the datafile to be moved is OFFLINE
SQL> alter system switch logfile;
System altered.
SQL> select file_name, file_id from dba_data_files;

FILE_NAME FILE_ID
-------------------------------------------------- ----------
+DATA/zytrac/datafile/users.259.989696237 4
+DATA/zytrac/datafile/undotbs1.258.989696237 3
+DATA/zytrac/datafile/sysaux.257.989696237 2
+DATA/zytrac/datafile/system.256.989696237 1
+DATA/zytrac/datafile/example.267.989696347 5
+DATA/zytrac/datafile/undotbs2.268.989696591 6
+DATA/zytrac/datafile/zytuser_tbs.289.1001722641 7
+DATA/zytrac/datafile/zytuser_tbs.288.1001723845 8
+DATA/zytrac/datafile/zytuser_tbs.2019 9
/picclife/app/oracle/product/11.2.0/db_1/dbs/DATA 10
/picclife/app/oracle/product/11.2.0/db_1/dbs/DAT 11

11 rows selected.

SQL> alter database datafile 11 offline;
Database altered.
SQL> select file_name, file_id, online_status from dba_data_files where file_id=11;
FILE_NAME FILE_ID ONLINE_
-------------------------------------------------- ---------- -------
/picclife/app/oracle/product/11.2.0/db_1/dbs/ +DATA 9 RECOVER

2) Use ASMCMD to copy the file from filesystem to the diskgroup
ASMCMD> cp /picclife/app/oracle/product/11.2.0/db_1/dbs/DAT +DATA/zytrac/datafile/share1.dbf
ASMCMD> cp /picclife/app/oracle/product/11.2.0/db_1/dbs/DAT +DATA/zytrac/datafile/share1.dbf
copying /picclife/app/oracle/product/11.2.0/db_1/dbs/DAT -> +DATA/zytrac/datafile/share1.dbf
ASMCMD>
ASMCMD> ls -lt
Type Redund Striped Time Sys Name
N zytuser_tbs.2019 => +DATA/ZYTRAC/DATAFILE/ZYTUSER_TBS.276.1001727549
DATAFILE UNPROT COARSE MAR 23 13:00:00 Y ZYTUSER_TBS.289.1001722641
DATAFILE UNPROT COARSE MAR 23 13:00:00 Y ZYTUSER_TBS.288.1001723845
DATAFILE UNPROT COARSE MAR 23 13:00:00 Y ZYTUSER_TBS.276.1001727549
DATAFILE UNPROT COARSE MAR 23 13:00:00 Y USERS.259.989696237
DATAFILE UNPROT COARSE MAR 23 13:00:00 Y UNDOTBS2.268.989696591
DATAFILE UNPROT COARSE MAR 23 13:00:00 Y UNDOTBS1.258.989696237
DATAFILE UNPROT COARSE MAR 23 13:00:00 Y SYSTEM.256.989696237
DATAFILE UNPROT COARSE MAR 23 13:00:00 Y SYSAUX.257.989696237
DATAFILE UNPROT COARSE MAR 23 13:00:00 Y EXAMPLE.267.989696347
N share1.dbf => +DATA/ASM/DATAFILE/share1.dbf.297.1001729237

3. Once the file is copied, rename the datafile
SQL> alter database rename file '/picclife/app/oracle/product/11.2.0/db_1/dbs/DAT' to '+DATA/zytrac/datafile/share1.dbf';
Database altered.

4. Recover the datafile and bring it ONLINE.
SQL> alter database recover datafile 11;
Database altered.

SQL> alter database datafile 11 online;
Database altered.

5. Confirm correct name and location:
SQL> select file_name, file_id, online_status from dba_data_files where file_id=11;
FILE_NAME FILE_ID ONLINE_STATUS
---------- -------
+DATA/zytrac/datafile/share1.dbf 11 ONLINE

--总结
在主库需要将数据文件offline,否则会提示正在使用;如果备库应该不需要。

测试rac数据文件建本地及处理的更多相关文章

  1. Oracle 11g R2(11.2.0.4) RAC 数据文件路径错误解决--ORA-01157 ORA-01110: 数据文件

    Oracle 11g R2(11.2.0.1) RAC  数据文件路径错误解决--ORA-01157 ORA-01110: 数据文件 oracle 11g R2(11.2.0.4) rac--scan ...

  2. 在windows下,将mysql离线数据文件导入本地mysql数据库

    1. 查看mysql路径 SELECT @@basedir AS basePath FROM DUAL 其实mysql5.6 的数据文件在 C:\ProgramData\MySQL\MySQL Ser ...

  3. RAC环境下误操作将数据文件添加到本地存储

    今天碰到个有意思的事情,有客户在Oracle RAC环境,误操作将新增的数据文件直接创建到了其中一个节点的本地存储上. 发现网上去搜的话这种问题还真不少,对应解决方案也各式各样,客户问我选择哪种方案可 ...

  4. 测试Oracle 11gr2 RAC 非归档模式下,offline drop数据文件后的数据库的停止与启动测试全过程

    测试Oracle 11gr2 RAC 非归档模式下,offline drop数据文件后的数据库的停止与启动测试全过程 最近系统出现问题,由于数据库产生的日志量太大无法开启归档模式,导致offline的 ...

  5. RAC本地数据文件迁移至ASM的方法--非归档模式

    系统环境:rhel6.2_x64+Oracle RAC11g 操作过程: 1.非归档模式 SQL> archive log list; Database log mode No Archive ...

  6. Postman Postman测试接口之POST提交本地文件数据

    Postman测试接口之POST提交本地文件数据   by:授客 QQ:1033553122 本文主要是针对用Postman POST提交本地文件数据的方法做个简单介绍 举例: 文件同步接口 接口地址 ...

  7. oracle之 RAC本地数据文件迁移至ASM

    系统环境:CentOS release 6.7 (Final)Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit 操作过 ...

  8. Oracle 11g Rac 用rman实现把本地数据文件迁移到ASM共享存储中

    在Oracle Rac环境中,数据文件都是要存放在ASM共享存储上的,这样两个节点才能同时访问.而当你在某一节点下把数据文件创建在本地磁盘的时候,那么在另一节点上要访问该数据文件的时候就会报错,因为找 ...

  9. bay——RAC 表空间时数据文件误放置到本地文件系统-介质恢复.txt

    RAC添加新表空间时数据文件误放置到本地文件系统的修正 于是我想11G 也兼容这些操作的方法,但是11G的新特性有一点就是可以直接支持ASM文件系统直接可以和本地文件系统进行文件的拷贝了,也就是有三种 ...

随机推荐

  1. mybatis面试题总结

    1.什么是MyBatis? 答:MyBatis是一个可以自定义SQL.存储过程和高级映射的持久层框架. 2.讲下MyBatis的缓存 答:MyBatis的缓存分为一级缓存和二级缓存,一级缓存放在ses ...

  2. (1)hadoop之----linux配置jdk环境

    首先Linux中应有jdk包 运用flashFXP上传文件,xshell连接linux系统 我一般将文件放在个人目录下softwear目录 ,软件装在个人目录下app目录 cd software    ...

  3. 关于RandomAccess

    package special; import java.io.IOException; import java.io.RandomAccessFile; /** * 随机访问流: * * 此类不属于 ...

  4. [转载]getContentPane()

    关于setContentPane()和getContentPane()的应用       我们可以在 JFrame 对象中添加 AWT 或者 Swing 组件.但是,虽然它有 add 方法,却不能直接 ...

  5. tree命令出现乱码

    alias tree='tree --charset ASCII'就可以了

  6. 解决移动端click事件300ms延迟的问题

    方法1.部分浏览器的<meta>标签加上width=device-width就能解决. 方法2.引入fastclick.js库 <!DOCTYPE html> <html ...

  7. PXE预启动执行环境

    PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并 ...

  8. JS 根据文件路径获取名字和后缀名

    var fileName = this.from.doc.substring(this.from.doc.lastIndexOf('/')+1); //文件名           var extNam ...

  9. Docker编排工具Docker Compose的使用

    一.安装docker compose 官网推荐方式之一: sudo curl -L "https://github.com/docker/compose/releases/download/ ...

  10. 剑指 Offer 38. 字符串的排列

    剑指 Offer 38. 字符串的排列 输入一个字符串,打印出该字符串中字符的所有排列. 你可以以任意顺序返回这个字符串数组,但里面不能有重复元素. 示例: 输入:s = "abc" ...