rac ORA-001157 数据文件误创 本地盘 共享存储 ASM cannot identify/lock data file

误将数据文件创建在本地盘而不是共享存储

错误原因:

不是共享存储中的数据文件,其他实例不能访问

解决思路和办法:

把本地的数据文件移到共享存储中。

步骤;

1. offline 表空间或数据文件

2. 复制数据文件

3. 重命名数据文件

4. 恢复数据文件(表空间不用)

5. online 表空间或数据文件

复制方案

1. RMAN copy datafile

2. dbms_file_transfer.copy_file

3. ASMCMD cp

详细步骤:

一:

alter tablespace ts1 offline;

rman>copy datafile ‘本地目录/源数据文件‘ to ‘共享目录/目标文件名‘;--目标文件自己取名

alter database rename file ‘本地目录/源数据文件‘ to ‘共享目录/目标文件名‘;

alter tablespace ts1 online;

二:

create directory source_dir as ‘本地目录/‘;

create directory dest_dir as ‘共享目录/‘;

alter tablespace ts1 offline;

begin

dbms_file_transfer.copy_file(‘SOURCE_DIR‘,‘源数据文件名‘,‘DEST_DIR‘,‘目标文件名‘);

end;

--可以通过asmcmd命令行确认是否正确copy成功

/*

grid>asmcmd

asmcmd>cd 共享目录

asmcmd>ls 目标文件名

*/

alter database rename file ‘本地目录/源数据文件名‘ to ‘共享目录/目标文件名‘;

alter tablespace ts1 online;

三:--操作数据文件,只能是表空间添加数据文件可行,创建表空间时出错(以下改成表空间)

alter database datafile ‘本地目录/源数据文件‘ offline;

root>mv 源数据文件 /home/grid/

root>chown grid:asmadmin  源数据文件--/home/grid/目录操作

grid>asmcmd

asmcmd>cd 共享目录

asmcmd>cp /home/grid/源数据文件 目标文件名

asmcmd>ls

alter database rename file ‘本地目录/源数据文件‘ to ‘共享目录/目标文件名‘;

alter database recover datafile ‘共享目录/目标文件名‘;

alter database datafile ‘共享目录/目标文件名‘ online;

时间: 2024-12-28 01:58:00

rac ORA-001157 数据文件误创 本地盘 共享存储 ASM cannot identify/lock data file的相关文章

rac 环境数据文件误建到rac 节点本地处理

在一次RAC例行巡检时,查询表空间的使用情况,节点1竟然抛出来,dbwr 进程无法lock 'D:oraclefcdataLIXORA.DBF'  这个数据文件:感觉不对啊,非常不祥的感觉: 光看名字就可以猜到,数据文件建到rac 节点2本地: 看下文件状态吧: SQL> select file_name,tablespace_name from dba_data_files; FILE_NAME -------------------------------------------------

openfiler作为文件server,实现ISCSI共享存储

还是不能发图.这是第二篇.图文在这个地址:http://download.csdn.net/detail/weimingyu945/8089893 1      登陆 首先登陆openfiler的web界面,配置的ip为192.168.1.111.所以浏览器地址栏输入https://192.168.1.111:446/  username:openfiler 密码:password 登陆成功后进入status界面,这里显示了server的基本信息,系统状态,硬件信息,网络,内存以及挂载的磁盘情况

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

系统环境:CentOS release 6.7 (Final)Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit 操作过程: 1.添加数据文件或者创建表空间时,误操作将路径指定为单节点本地 SQL> alter tablespace users add datafile '/home/oracle/test.dbf' size 4m;Tablespace altered. SQL> set line 180col

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

系统环境:rhel6.2_x64+Oracle RAC11g 操作过程: 1.非归档模式 SQL> archive log list; Database log mode No Archive Mode Automatic archival Disabled Archive destination /u01/oracle/app/oracle/11.2.0/db/dbs/arch Oldest online log sequence 303086 Current log sequence 303

ORA-01157、ORA-01110无法识别/锁定数据文件

之前在生产中遇到同样报错,用户在客户端查询表中数据,报如下错误:Errors in file /oratrace/xxx/diag/rdbms/xxx/xxx2/trace/xxx2_dbw0_8454382.trc:ORA-01157: cannot identify/lock data file 366 - see DBWR trace fileORA-01110: data file 366: '/dev/rrpt001vg05' 这个报错是由于,2节点重启后,包含/dev/rrpt001

归档模式下恢复没有备份的数据文件

测试环境 SQL> select * from v$version; BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production PL/SQL Release 11.2.0.4.0 - Production CORE    11.

数据库数据文件和控制文件恢复

数据库数据文件和控制文件恢复一次数据库数据文件和控制文件丢失或未创建恢复数据库启动方法该文档适用数据恢复:数据库安装的时候丢失控制文件和数据文件或者数据库故障的数据.控制文件丢失或者数据库的本来数据.控制文件丢失有备份文件,用备份文件恢复本文的环境变量ORACLE_BASE=/oo/oracleORACLE_HOME=/oo/oracle/11g 1.数据库启动报错数据库启动时报错: 报错1: SQL> startup ORA-01261: Parameter db_recovery_file_

Oracle数据文件物理删除后的恢复

做系统管理的都是这样,难免会误删文件,某天要是把某个Oracle数据文件删除,那该如何恢复呢?(这里数据库是OPEN的,并且未关闭) 建立测试表空间 创建测试用户 插入测试数据 删除数据文件 恢复数据库文件 建立测试表空间 SQL> select name from v$datafile; NAME -------------------------------------------------------------------------------- /opt/oracle/oradat

无备份有完全归档日志情况下恢复数据文件

如果一个数据文件创建时到当前所有的归档日志都存在的话,那么可以通过offline datafile,recover datafile,online datafile的方式直接恢复数据文件,此种恢复属于介质恢复. 下面我们做一个实验: 查看当前所有的归档日志的初始scn以及终止scn:(status 为 A 表示available,D表示已删除) SQL> col name for a100 SQL> select sequence#,name,first_change#,next_change