Oracle rac environment file data processing error built in the local directory

wrong description

My November 16 2015 7:02:38 p.m.

Errors in file /u01/app/oracle/diag/rdbms/zwzwdb/zwzwdb1/trace/zwzwdb1_m000_27416.trc:

ORA-01157: cannot identify/lock data file 18 - see DBWR trace file

ORA-01110: file 18: '/u01/app/oracle/11.2.0/db/dbs/goa31new'

Errors in file /u01/app/oracle/diag/rdbms/zwzwdb/zwzwdb1/trace/zwzwdb1_m000_27416.trc:

ORA-01157: cannot identify/lock data file 19 - see DBWR trace file

ORA-01110: file 19: '/u01/app/oracle/11.2.0/db/dbs/goafilenew'

Error Analysis

According to [4, data files mistakenly seen cases built 1], know that this is in the data file by mistake rac environment built on local disk, leading to another node can not access the data file, which reported ora-01157 and ora-01110 error.

Directly view the data file path:

SQL> select file#,name from v$datafile;

     FILE# NAME

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

         1 +DATA/zwzwdb/datafile/system.259.855244341

         2 +DATA/zwzwdb/datafile/sysaux.260.855244345

         3 +DATA/zwzwdb/datafile/undotbs1.261.855244345

         4 +DATA/zwzwdb/datafile/undotbs2.263.855244353

         5 +DATA/zwzwdb/datafile/users.264.855244355

         6 +DATA/smsmain_def_1.dbf

         7 +DATA/smsmain_def_2.dbf

         8 +DATA/smsmain_def_3.dbf

         9 +DATA/smsmain_def_4.dbf

        10 +DATA/smsmain_idx_1.dbf

        11 +DATA/smsmain_idx_2.dbf

     FILE# NAME

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

        12 +DATA/smsmain_def_5.dbf

        13 +DATA/smsmain_idx_3.dbf

        14 +DATA/gszwy_system_1.dbf

        15 +DATA/gszwy_system_2.dbf

        16 +DATA/gszwy_system_3.dbf

        17 +DATA/gszwy_system_4.dbf

        18 /u01/app/oracle/11.2.0/db/dbs/goa31new

        19 /u01/app/oracle/11.2.0/db/dbs/goafilenew

        20 +DATA/zwzwdb/datafile/egovcpp.293.874859211

        21 +DATA/zwzwdb/datafile/ioop_test.294.879093349

        22 +DATA/zwzwdb/datafile/ioop_file_test.295.8790

     FILE# NAME

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

           93537

22 rows selected.

Can clearly see, 18 and 19 is based on a data file under the local /u01/app/oracle/11.2.0/db/dbs directory.

Solution

The problem has been analyzed clearly, now based on already known directory data files 18, 19, go on view at each node corresponding directory, determines that the data file was created on that node, where the case is created in the node 2 local disk.

In the node 2 into the environment sqlplus, offline data files 18, 19:

SQL> alter database datafile 18 offline;

Database altered.

SQL>  alter database datafile 19 offline;

Database altered.

Off the assembly line is completed, re-determine the status of the data file:

SQL> col name for a45

SQL> set line 234

SQL> select name , file# , status from v$datafile;

NAME                                               FILE# STATUS

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

+DATA/zwzwdb/datafile/system.259.855244341             1 SYSTEM

+DATA/zwzwdb/datafile/sysaux.260.855244345             2 ONLINE

+DATA/zwzwdb/datafile/undotbs1.261.855244345           3 ONLINE

+DATA/zwzwdb/datafile/undotbs2.263.855244353           4 ONLINE

+DATA/zwzwdb/datafile/users.264.855244355              5 ONLINE

+DATA/smsmain_def_1.dbf                                6 ONLINE

+DATA/smsmain_def_2.dbf                                7 ONLINE

+DATA/smsmain_def_3.dbf                                8 ONLINE

+DATA/smsmain_def_4.dbf                                9 ONLINE

+DATA/smsmain_idx_1.dbf                               10 ONLINE

+DATA/smsmain_idx_2.dbf                               11 ONLINE

NAME                                               FILE# STATUS

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

+DATA/smsmain_def_5.dbf                               12 ONLINE

+DATA/smsmain_idx_3.dbf                               13 ONLINE

+DATA/gszwy_system_1.dbf                              14 ONLINE

+DATA/gszwy_system_2.dbf                              15 ONLINE

+DATA/gszwy_system_3.dbf                              16 ONLINE

+DATA/gszwy_system_4.dbf                              17 ONLINE

+DATA/zwzwdb/datafile/goa31.339.895952649             18 RECOVER

+DATA/zwzwdb/datafile/goafile31.340.895952749         19 RECOVER

+DATA/zwzwdb/datafile/egovcpp.293.874859211           20 ONLINE

+DATA/zwzwdb/datafile/ioop_test.294.879093349         21 ONLINE

+DATA/zwzwdb/datafile/ioop_file_test.295.8790         22 ONLINE

NAME                                               FILE# STATUS

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

93537

22 rows selected.

You can see, 18, 19 in the state recover data files, temporary can not control, first copy the data files in a shared environment to the rman catalog:

RMAN> copy datafile '/u01/app/oracle/11.2.0/db/dbs/goa31new' to '+DATA';

Starting backup at 16-NOV-15

using channel ORA_DISK_1

channel ORA_DISK_1: starting datafile copy

input datafile file number=00018 name=/u01/app/oracle/11.2.0/db/dbs/goa31new

output file name=+DATA/zwzwdb/datafile/goa31.339.895952649 tag=TAG20151116T194409 RECID=1 STAMP=895952650

channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01

Finished backup at 16-NOV-15

RMAN> copy datafile '/u01/app/oracle/11.2.0/db/dbs/goafilenew' to '+DATA'

2> ;

Starting backup at 16-NOV-15

using channel ORA_DISK_1

channel ORA_DISK_1: starting datafile copy

input datafile file number=00019 name=/u01/app/oracle/11.2.0/db/dbs/goafilenew

output file name=+DATA/zwzwdb/datafile/goafile31.340.895952749 tag=TAG20151116T194549 RECID=2 STAMP=895952750

channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01

Finished backup at 16-NOV-15

Here we need to remember the contents of copy results in italics for changes to the system data file path:

SQL>alter database rename file '/u01/app/oracle/11.2.0/db/dbs/goa31new' to '+DATA/zwzwdb/datafile/goa31.339.895952649';

Database altered.

SQL>alter database rename file '/u01/app/oracle/11.2.0/db/dbs/goafilenew' to '+DATA/zwzwdb/datafile/goafile31.340.895952749';

Database altered.

Now re-view the data in a file name and status, as follows:

SQL> select name , file# , status from v$datafile;

NAME                                               FILE# STATUS

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

+DATA/zwzwdb/datafile/system.259.855244341             1 SYSTEM

+DATA/zwzwdb/datafile/sysaux.260.855244345             2 ONLINE

+DATA/zwzwdb/datafile/undotbs1.261.855244345           3 ONLINE

+DATA/zwzwdb/datafile/undotbs2.263.855244353           4 ONLINE

+DATA/zwzwdb/datafile/users.264.855244355              5 ONLINE

+DATA/smsmain_def_1.dbf                                6 ONLINE

+DATA/smsmain_def_2.dbf                                7 ONLINE

+DATA/smsmain_def_3.dbf                                8 ONLINE

+DATA/smsmain_def_4.dbf                                9 ONLINE

+DATA/smsmain_idx_1.dbf                               10 ONLINE

+DATA/smsmain_idx_2.dbf                               11 ONLINE

NAME                                               FILE# STATUS

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

+DATA/smsmain_def_5.dbf                               12 ONLINE

+DATA/smsmain_idx_3.dbf                               13 ONLINE

+DATA/gszwy_system_1.dbf                              14 ONLINE

+DATA/gszwy_system_2.dbf                              15 ONLINE

+DATA/gszwy_system_3.dbf                              16 ONLINE

+DATA/gszwy_system_4.dbf                              17 ONLINE

+DATA/zwzwdb/datafile/goa31.339.895952649             18 RECOVER

+DATA/zwzwdb/datafile/goafile31.340.895952749         19 RECOVER

+DATA/zwzwdb/datafile/egovcpp.293.874859211           20 ONLINE

+DATA/zwzwdb/datafile/ioop_test.294.879093349         21 ONLINE

+DATA/zwzwdb/datafile/ioop_file_test.295.8790         22 ONLINE

NAME                                               FILE# STATUS

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

93537

22 rows selected.

Discovery 18, 19 data files have been successfully moved to the specified shared directory, but the state still recover state, and now the data file recovery:

SQL> recover datafile '+DATA/zwzwdb/datafile/goa31.339.895952649';

Media recovery complete.

SQL> recover datafile '+DATA/zwzwdb/datafile/goafile31.340.895952749';

Media recovery complete.

Recovery is complete, and then view the status of No. 18, 19 data files:

SQL> select name,file#,status from v$datafile;

NAME                                               FILE# STATUS

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

+DATA/zwzwdb/datafile/system.259.855244341             1 SYSTEM

+DATA/zwzwdb/datafile/sysaux.260.855244345             2 ONLINE

+DATA/zwzwdb/datafile/undotbs1.261.855244345           3 ONLINE

+DATA/zwzwdb/datafile/undotbs2.263.855244353           4 ONLINE

+DATA/zwzwdb/datafile/users.264.855244355              5 ONLINE

+DATA/smsmain_def_1.dbf                                6 ONLINE

+DATA/smsmain_def_2.dbf                                7 ONLINE

+DATA/smsmain_def_3.dbf                                8 ONLINE

+DATA/smsmain_def_4.dbf                                9 ONLINE

+DATA/smsmain_idx_1.dbf                               10 ONLINE

+DATA/smsmain_idx_2.dbf                               11 ONLINE

NAME                                               FILE# STATUS

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

+DATA/smsmain_def_5.dbf                               12 ONLINE

+DATA/smsmain_idx_3.dbf                               13 ONLINE

+DATA/gszwy_system_1.dbf                              14 ONLINE

+DATA/gszwy_system_2.dbf                              15 ONLINE

+DATA/gszwy_system_3.dbf                              16 ONLINE

+DATA/gszwy_system_4.dbf                              17 ONLINE

+DATA/zwzwdb/datafile/goa31.339.895952649             18 OFFLINE

+DATA/zwzwdb/datafile/goafile31.340.895952749         19 OFFLINE

+DATA/zwzwdb/datafile/egovcpp.293.874859211           20 ONLINE

+DATA/zwzwdb/datafile/ioop_test.294.879093349         21 ONLINE

+DATA/zwzwdb/datafile/ioop_file_test.295.8790         22 ONLINE

NAME                                               FILE# STATUS

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

93537

22 rows selected.

You can see, 18, 19 data files already in the offline state, will now have to do is line data file:

SQL> alter database datafile 18 online;

Database altered.

SQL> alter database datafile 19 online;

Database altered.

Changes are complete, look at the data file status:

SQL> select name,file#,status from v$datafile;

NAME                                               FILE# STATUS

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

+DATA/zwzwdb/datafile/system.259.855244341             1 SYSTEM

+DATA/zwzwdb/datafile/sysaux.260.855244345             2 ONLINE

+DATA/zwzwdb/datafile/undotbs1.261.855244345           3 ONLINE

+DATA/zwzwdb/datafile/undotbs2.263.855244353           4 ONLINE

+DATA/zwzwdb/datafile/users.264.855244355              5 ONLINE

+DATA/smsmain_def_1.dbf                                6 ONLINE

+DATA/smsmain_def_2.dbf                                7 ONLINE

+DATA/smsmain_def_3.dbf                                8 ONLINE

+DATA/smsmain_def_4.dbf                                9 ONLINE

+DATA/smsmain_idx_1.dbf                               10 ONLINE

+DATA/smsmain_idx_2.dbf                               11 ONLINE

NAME                                               FILE# STATUS

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

+DATA/smsmain_def_5.dbf                               12 ONLINE

+DATA/smsmain_idx_3.dbf                               13 ONLINE

+DATA/gszwy_system_1.dbf                              14 ONLINE

+DATA/gszwy_system_2.dbf                              15 ONLINE

+DATA/gszwy_system_3.dbf                              16 ONLINE

+DATA/gszwy_system_4.dbf                              17 ONLINE

+DATA/zwzwdb/datafile/goa31.339.895952649             18 ONLINE

+DATA/zwzwdb/datafile/goafile31.340.895952749         19 ONLINE

+DATA/zwzwdb/datafile/egovcpp.293.874859211           20 ONLINE

+DATA/zwzwdb/datafile/ioop_test.294.879093349         21 ONLINE

+DATA/zwzwdb/datafile/ioop_file_test.295.8790         22 ONLINE

NAME                                               FILE# STATUS

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

93537

22 rows selected.

You can clearly see, 18, 19 data files in the online state, and the directory already directory under the shared disk point, so far, the data file migration has been completed successfully.

Guess you like

Origin www.cnblogs.com/macliu1990/p/12107728.html