Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

ORA-01111 trong MRP trong cơ sở dữ liệu Chế độ chờ vật lý

Cách đây một thời gian, MRP trong cơ sở dữ liệu chờ không thành công với ORA-01111 với lỗi chi tiết sau trong nhật ký cảnh báo

Alert Log in Standby Shows MRP is terminated with below error
=================================================================
File #8 added to control file as 'UNNAMED00008' because
the parameter STANDBY_FILE_MANAGEMENT is set to MANUAL
The file should be manually created to continue.
MRP0: Background Media Recovery terminated with error 1111
Thu Jan 08 11:02:35 2016
Errors in file /u01/oracle/product/11.2.0/diag/rdbms/TEST/test/trace/TEST_mrp0_6436.trc:
ORA-01111: name for data file 129 is unknown - rename to correct file
ORA-01111: name for data file 129 is unknown - rename to correct file
ORA-01110: data file 129: '/u01/oracle/product/11.2.0/dms/UNNAMED00008'

Lý do cho ORA-01111

Lỗi này ORA-01111 xảy ra nếu chúng tôi thêm một tệp dữ liệu HOẶC không gian bảng trong Cơ sở dữ liệu CHÍNH và không thể được dịch sang Cơ sở dữ liệu dự phòng do những Lý do sau:

  • Standy_file_management được đặt thành MANUAL
  • Chế độ chờ Chính và Chế độ chờ vật lý có cấu trúc tệp khác nhau và DB_FILE_NAME_CONVERT không được đặt theo Cấu trúc thư mục trong Chế độ chính và Chế độ chờ
  • Không đủ dung lượng hoặc quyền sai trên Cơ sở dữ liệu dự phòng để tạo tệp dữ liệu

Nhật ký Làm lại được tạo từ Chính sẽ có Thông tin về Vùng bảng / Tệp dữ liệu được thêm vào tuy nhiên, nó không thể được tạo thành công trong Cơ sở dữ liệu ở chế độ chờ vật lý do standby_file_management =MANUAL
hoặc không thể tìm thấy Thư mục được chỉ định do bị thiếu / Chuyển đổi tên tệp không chính xác. Mục nhập tệp được thêm vào tệp điều khiển dự phòng dưới dạng “UNNAMED0000n” trong thư mục / dbs hoặc / cơ sở dữ liệu tùy thuộc vào Hệ điều hành và cuối cùng MRP kết thúc.

Giải pháp của ORA-01111

Thực hiện tất cả các Bước được đề cập trên Cơ sở dữ liệu dự phòng:

Bước 1: Đảm bảo standby_file_management =‘MANUAL’

LƯU Ý:Đối với tham số db_file_name_convert, hãy thay đổi nếu Trình môi giới bảo vệ dữ liệu được bật, sau đó chỉnh sửa Tham số bằng Trình môi giới,

DGMGRL>edit database '<standby>' set property DbFileNameConvert='/u01','+DATA';
DGMGRL>edit database '<standby>' set property StandbyFileManagement=manual;

Theo mặc định, StandbyFileManagement là AUTO của nhà môi giới.

Bước 2: Xác định tệp “không được đặt tên”

SQL> select name from v$datafile;
NAME
---------------------------------------
+DATA/TEST/datafiles/SYSTEM.DBF
+DATA/TEST/datafiles/UNDO.DBF
+DATA/TEST/datafiles/SYSAUX.DBF
+DATA/TEST/datafiles/index1.DBF
/u01/oracle/product/11.2.0/dms/UNNAMED00008

Bước 3: Đổi tên / tạo tệp dữ liệu thành tên tệp chính xác

SQL> alter database create datafile '/u01/oracle/product/11.2.0/dms/UNNAMED00008' as '+DATA/TEST/datafiles/appstex.dbf';
or
SQL>alter database create datafile '/u01/oracle/product/11.2.0/dms/UNNAMED00008' as new;

Bước 4: Xác minh tên tệp là chính xác

SQL> select name from v$datafile;
NAME
-------------------------------------------------
+DATA/TEST/datafiles/SYSTEM.DBF
+DATA/TEST/datafiles/UNDO.DBF
+DATA/TEST/datafiles/SYSAUX.DBF
+DATA/TEST/datafiles/index1.DBF
+DATA/TEST/datafiles/appstex.dbf


Bước 5: Thay đổi STANDBY_FILE_MANAGEMENT thành TỰ ĐỘNG

SQL> ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT=AUTO scope=both;


Bước 6: Khởi động MRP (đây là sử dụng Áp dụng thời gian thực)

SQL> alter database recover managed standby database using current logfile disconnect;
Database altered.

Bước 7: Xác minh MRP đang chạy như mong đợi

SQL> select process, status , sequence# from v$managed_standby;
PROCESS STATUS SEQUENCE#
--------- ------------ ----------
ARCH CLOSING 1014
ARCH CLOSING 1013
MRP0 APPLYING_LOG 1001
RFS IDLE 0
RFS IDLE 0
RFS IDLE 1015

Bước 8: Đảm bảo rằng bạn đã sửa lỗi gây ra lỗi không thể tạo tệp.

Chúng tôi phải đảm bảo thông số STANDBY_FILE_MANAGEMENT và DB_FILE_CONVERT là chính xác

Cũng đã đọc
ORA-03113:cuối tệp trên kênh liên lạc
ORA-00257:lỗi trình lưu trữ. Chỉ kết nối nội bộ, cho đến khi được giải phóng.
cơ sở dữ liệu chờ vật lý
https://support.oracle.com/knowledge/Oracle%20Database%20Products/1416554_1.html


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách xử lý MAX () của một bảng trống là 0 thay vì NULL

  2. Làm thế nào để sử dụng Array / Table Parameter cho Oracle (ODP.NET 10g) qua ADO.NET/C#?

  3. Kiểu Java cho ngày / giờ khi sử dụng Oracle Date với Hibernate

  4. Toán tử tập hợp Oracle

  5. ORA-00933:Lệnh SQL không được kết thúc đúng cách