模拟用户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. css - 响应式

    css - 响应式 移动设备尺寸 移动设备的尺寸各不相同,大体上可以做如下划分: 768px以下的是手机屏幕 768px-991px是平板ipad屏幕 992px-1199是大平板屏幕 1200极其以 ...

  2. 使用volatile的条件

    使用volatile的值不能依赖于它之前的值: volatile这个关键字可能很多朋友都听说过,或许也都用过.在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果. ...

  3. mysql基础操作(一):DDL、DML

    -- 1.在命令行中开启数据库: net start mysql -- 2.在命令行中关闭数据库: net stop mysql 1.DDL语句:create.drop.alter -- 查看所有的数 ...

  4. 关于在mysql和oracle中编码对varchar等类型的影响

    今天在测试oracle的时候发现,我用varchar2(10),的字段,居然存不下"凯尔特人"四个字符:和我在学习mysql中显然是不一样的,查阅资料发现: mysql 5.0 之 ...

  5. LeetCode入门指南 之 回溯思想

    模板 result = {} void backtrack(选择列表, 路径) { if (满足结束条件) { result.add(路径) return } for 选择 in 选择列表 { 做选择 ...

  6. 你的域名是如何变成 IP 地址的?

    我的 个人网站 上线了,上面可以更好的检索历史文章,并且可以对文章进行留言,欢迎大家访问 可能大家都知道或者被问过一个问题,那就是很经典的「从浏览器输入 URL 再到页面展示,都发生了什么」.这个问题 ...

  7. Nginx配置文件详解与优化建议

    1.概述 今天来详解一下Nginx的配置文件,以及给出一些配置建议,希望能对大家有所帮助. 2.nginx.conf 1)配置文件位置 nginx 安装目录的 conf 文件夹下,例如:/usr/lo ...

  8. 史上最全git命令集

    配置化命令 git config --global user.name "Your Name" git config --global user.email "email ...

  9. GoLang设计模式06 - 对象池模式

    这次介绍最后一个创建型模式--对象池模式.顾名思义,对象池模式就是预先初始化创建好多个对象,并将之保存在一个池子里.当需要的时候,客户端就可以从池子里申请一个对象使用,使用完以后再将之放回到池子里.池 ...

  10. IIS托管Asp.net Core及Abp VNext

    默认方式安装IIS后,从官方网站下载IIS模块 https://dotnet.microsoft.com/download/dotnet-core/3.1 2个都需要安装 安装后,新建网站指向发布的磁 ...