Contents
- 前提条件
- 主服务器配制
- 备数据库服务器操作
-
Troubleshooting
- ORA-12514 TNS:listener does not currently know of service requested in connect descriptor
- auxiliary duplicate error
- ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instanceORACLE instance started.
- ORA-01665: control file is not a standby control file
- ORA 16139
- ORA-00328
- alert failed to establish dependency between database and diskgroup
- ERROR: failed to establish dependency between database goposstb and diskgroup resource ora.GOWMS_ARCH.dg
前提条件
- db_unique_name 在主备服务器不能相同。
- hosts文件中定义各自的主机名
127.0.0.1 localhost 192.168.81.21 gopos 192.168.81.22 goposstb
主服务器信息
OEL/RHEL 6.6 Server name: gopos IP: 192.168.81.21 Oracle 11.2.0.4 software with oracle instance Oracle SID/Global_name: gopos Oracle db_unique_name: gopos
备服务器信息
OEL/RHEL 6.6 Server name: goposstb IP: 192.168.81.22 Oracle 11.2.0.4 software only Oracle SID/Global_name: gopos Oracle db_unique_name: goposstb
主服务器配制
启用/禁用FRA
SQL> show parameter recovery_file_dest NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ db_recovery_file_dest string +GOWMS_DATA db_recovery_file_dest_size big integer 4182M SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST = '+GOWMS_ARCH' SCOPE=BOTH SID='*'; System altered. SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE = 100G SCOPE=BOTH SID='*'; SQL> show parameter recovery_file_dest NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ db_recovery_file_dest string +GOWMS_ARCH db_recovery_file_dest_size big integer 100G # disable DB_RECOVERY SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST='' SCOPE=BOTH SID='*';
启用归档
SQL> alter system set log_archive_dest_1='LOCATION=+GOWMS_ARCH' scope = both; SQL> SHUTDOWN IMMEDIATE; SQL> STARTUP MOUNT; SQL> ALTER DATABASE ARCHIVELOG; SQL> ALTER DATABASE OPEN; SQL> alter system switch logfile; 确认归档配制 SQL> archive log list;
启用logging
SQL> ALTER DATABASE FORCE LOGGING; Database altered. SQL> SELECT FORCE_LOGGING FROM v$database; FOR --- YES
检查初始化参数
SQL> show parameter db_name NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ db_name string gopos SQL> show parameter db_unique_name NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ db_unique_name string gopos
配制LOG_ARCHIVE_CONFIG参数
SQL> ALTER SYSTEM SET LOG_ARCHIVE_CONFIG='DG_CONFIG=(gopos,goposstb)'; 确认LOG_ARCHIVE_CONFIG配制 SQL> show parameter LOG_ARCHIVE_CONFIG NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ log_archive_config string DG_CONFIG=(gopos,goposstb)
设置对端LOG ARCHIVE
SQL> ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='SERVICE=goposstb NOAFFIRM ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=goposstb';
确认以上配制
SQL> show parameter LOG_ARCHIVE_DEST_2
SQL> show parameter LOG_ARCHIVE_DEST_2
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_2 string SERVICE=goposstb NOAFFIRM ASYN
C VALID_FOR=(ONLINE_LOGFILES,P
RIMARY_ROLE) DB_UNIQUE_NAME=go
wmsstb
log_archive_dest_20 string
log_archive_dest_21 string
log_archive_dest_22 string
log_archive_dest_23 string
log_archive_dest_24 string
log_archive_dest_25 string
log_archive_dest_26 string
NAME TYPE VALUE
------------------------------ -----------------------------
log_archive_dest_27 string
log_archive_dest_28 string
log_archive_dest_29 string
启用LOG_ARCHIVE_DEST_2
ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=ENABLE;
确认状态
SQL> show parameter LOG_ARCHIVE_DEST_STATE_2;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_state_2 string ENABLE
log_archive_dest_state_20 string enable
log_archive_dest_state_21 string enable
log_archive_dest_state_22 string enable
log_archive_dest_state_23 string enable
log_archive_dest_state_24 string enable
log_archive_dest_state_25 string enable
log_archive_dest_state_26 string enable
log_archive_dest_state_27 string enable
log_archive_dest_state_28 string enable
log_archive_dest_state_29 string enable
设置LOG ARCHIVE
ALTER SYSTEM SET LOG_ARCHIVE_FORMAT='%t_%s_%r.arc' SCOPE=SPFILE; ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=30; ALTER SYSTEM SET REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE SCOPE=SPFILE; show parameter log_archive_format; show parameter log_archive_max_processes; show parameter remote_login_passwordfile; SQL> show parameter log_archive_max_processes; NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ log_archive_max_processes integer 30 SQL> show parameter remote_login_passwordfile; NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ remote_login_passwordfile string EXCLUSIVE
设置fal_server
ALTER SYSTEM SET FAL_SERVER=goposstb; ALTER SYSTEM SET DB_FILE_NAME_CONVERT='goposstb','gopos' SCOPE=SPFILE; ALTER SYSTEM SET LOG_FILE_NAME_CONVERT='goposstb','gopos' SCOPE=SPFILE; ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT=AUTO; show parameter fal_server; show parameter fal_client; show parameter standby_file_management; SQL> show parameter fal_server; NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ fal_server string GOWMSSTB SQL> show parameter standby_file_management; NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ standby_file_management string AUTO
配制listener.ora & tnsnames.ora
SQL> select value from v$parameter where name='service_names' 2 ; VALUE -------------------------------------------------------------------------------- gopos.local
tnsnames.ora
GOWMSSTB =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = goposstb)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = goposstb.local)
(UR=A)
)
)
GOWMS =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = gopos)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = gopos.local)
(UR=A)
)
)listener.ora
#1
/u01/app/11.2.0/grid/network/admin/listener.ora
SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = gopos) (ORACLE_HOME = /u01/app/11.2.0/grid) (SID_NAME = gopos) ) )
#2
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = GOWMS)
(ORACLE_HOME = /u01/app/oracle/product/11.2.0/db_1)
(SID_NAME = GOWMS)
) )
LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = GOWMS)(PORT = 1521))
)
ADR_BASE_LISTENER = /u01/app/oracle确认主备都能ping通
tnsping GOWMS tnsping GOWMSSTB
备份主数据库
$ rman target /
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/mnt/sdb1/rman/full_%u_%s_%p'; RMAN> BACKUP DATABASE PLUS ARCHIVELOG; # 默认将备份到Flash Recovery Area.
为备数据库创建控制文件和PFILE
ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/tmp/goposstb.ctl'; CREATE PFILE='/tmp/initgoposstb.ora' FROM SPFILE; SQL> ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/tmp/goposstb.ctl'; Database altered. SQL> CREATE PFILE='/tmp/initgoposstb.ora' FROM SPFILE; File created.
修改PFILE /tmp/initgoposstb.ora
*.audit_file_dest='/u01/app/oracle/admin/goposstb/adump' *.control_files='+GOWMS_DATA/gopos/controlfile/current.276.917608579','+GOWMS_DATA/gopos/controlfile/current.277.917608579' *.db_file_name_convert='gopos','goposstb' *.db_unique_name='goposstb' *.fal_server='gopos' *.log_archive_dest_2='SERVICE=gopos ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=gopos' *.log_file_name_convert='gopos','goposstb'
首先登录备数据库创建以下目录
#mkdir -p /mnt/sdb1/oracleData/gopos #mkdir -p /u01/app/oracle/fast_recovery_area/gopos #mkdir -p /mnt/sdb1/oracleData/gopos/adump mkdir -pv /u01/app/oracle/admin/goposstb/adump
复制两个文件至备数据库
scp /tmp/initgoposstb.ora oracle@goposstb:/u01/app/oracle/product/11.2.0/db_1/dbs/ scp /tmp/goposstb.ctl oracle@goposstb:/mnt/sdb1/oracleData/gopos/control01.ctl scp /tmp/goposstb.ctl oracle@goposstb:/mnt/sdb1/oracleData/rman/control02.ctl
复制password file和备份文件
cd /u01/app/oracle/product/11.2.0/db_1/dbs/ scp orapwgopos oracle@goposstb:/u01/app/oracle/product/11.2.0/db_1/dbs/ cd /mnt/sdb1/rman/ scp -r gopos oracle@goposstb:/mnt/sdb1/rman/
备数据库服务器操作
注:可选?!首先更改db_unique_name为对应的名称。
alter system set db_unique_name='goposstb' SCOPE=SPFILE; select db_unique_name from v$database; # OR: show parameter unique;
确认listener启动正常
lsnrctl status
从备份中恢复数据库(可选方法)
恢复控制文件
export ORACLE_SID=gopos sqlplus / as sysdba SQL> CREATE SPFILE FROM PFILE='/tmp/initgoposstb.ora';
恢复数据库
export ORACLE_SID=gopos rman target / RMAN> STARTUP MOUNT; RMAN> list backup of database summary; RMAN> RESTORE DATABASE;
Note: Recovery of database would be failed with RMAN-06054 error, We can ignore it because RMAN will ask for unknown archive log ( i.e. next archive log sequence, i.e. 10 ) who is not also available on Primary database.
Error log: RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 10 and starting SCN of 1009554
创建日志文件
ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT=MANUAL;
ALTER DATABASE ADD LOGFILE ('+GOWMS_REDO') SIZE 4G;
ALTER DATABASE ADD LOGFILE ('+GOWMS_REDO') SIZE 4G;
ALTER DATABASE ADD LOGFILE ('+GOWMS_REDO') SIZE 4G;
ALTER DATABASE ADD LOGFILE ('+GOWMS_REDO') SIZE 4G;
ALTER DATABASE ADD LOGFILE ('+GOWMS_REDO') SIZE 4G;
ALTER DATABASE ADD LOGFILE ('+GOWMS_REDO') SIZE 4G;
ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT=AUTO;在主和备数据库中创建STANDBY LOGFILE( +1 redo file )
ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT='MANUAL';
ALTER DATABASE ADD STANDBY LOGFILE ('+GOWMS_REDO') SIZE 4G;
ALTER DATABASE ADD STANDBY LOGFILE ('+GOWMS_REDO') SIZE 4G;
ALTER DATABASE ADD STANDBY LOGFILE ('+GOWMS_REDO') SIZE 4G;
ALTER DATABASE ADD STANDBY LOGFILE ('+GOWMS_REDO') SIZE 4G;
ALTER DATABASE ADD STANDBY LOGFILE ('+GOWMS_REDO') SIZE 4G;
ALTER DATABASE ADD STANDBY LOGFILE ('+GOWMS_REDO') SIZE 4G;
ALTER DATABASE ADD STANDBY LOGFILE ('+GOWMS_REDO') SIZE 4G;
ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT='AUTO';ALTER DATABASE DROP LOGFILE GROUP 10;
使用RMAN自动复制主数据库至备数据库
For duplicate listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = GOWMS)
(ORACLE_HOME = /u01/app/oracle/product/11.2.0/db_1)
(SID_NAME = GOWMS)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = GOWMSSTB)(PORT = 1521))
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = /u01/app/oracle~$ sqlplus / as sysdba SQL> startup nomount pfile='$ORACLE_HOME/dbs/initgoposstb.ora'; SQL> startup nomount pfile='$ORACLE_HOME/dbs/initgoposstb.ora'; ORA-09925: Unable to create audit trail file Linux-x86_64 Error: 2: No such file or directory Additional information: 9925 SQL> show parameter dump ORA-01012: not logged on Process ID: 0 Session ID: 0 Serial number: 0 SQL> startup nomount pfile='$ORACLE_HOME/dbs/initgoposstb.ora'; ORA-01081: cannot start already-running ORACLE - shut it down first SQL> shutdown abort ORACLE instance shut down. SQL> startup nomount pfile='$ORACLE_HOME/dbs/initgoposstb.ora'; ORACLE instance started. Total System Global Area 7465926656 bytes Fixed Size 2267744 bytes Variable Size 1375733152 bytes Database Buffers 6073352192 bytes Redo Buffers 14573568 bytes [oracle@goposstb ~]$ rman target sys@gopos auxiliary sys@goposstb RMAN> duplicate target database for standby from active database nofilenamecheck; /u01/app/11.2.0/grid/bin [grid@goposstb bin]$ ./setasmgidwrap -o oracle
应用传输进程
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE NODELAY DISCONNECT FROM SESSION; # Foreground redo apply. Session never returns until cancel. ALTER DATABASE RECOVER MANAGED STANDBY DATABASE; # Background redo apply. Control is returned to the session once the apply process is started. ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
停止传输
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
确认Dataguard保护模式
默认为 maximum performance 模式
SELECT protection_mode FROM v$database;
select name,open_mode,database_role from v$database; select message from v$dataguard_status; select dest_name,status,error from v$archive_dest where dest_name='LOG_ARCHIVE_DEST_2'; dgmgrl sys/oracle36#^@goposstb DGMGRL> show configuration;
测试主备服务器ARCHIVELOG
主:
ALTER SESSION SET nls_date_format='DD-MON-YYYY HH24:MI:SS'; SELECT sequence#, first_time, next_time FROM v$archived_log ORDER BY sequence#; ALTER SYSTEM SWITCH LOGFILE;
备:
ALTER SESSION SET nls_date_format='DD-MON-YYYY HH24:MI:SS'; SELECT sequence#, first_time, next_time, applied FROM v$archived_log ORDER BY sequence#;
主备数据库切换操作
=== Enable Data Guard Broker == http://www.juliandyke.com/Research/DataGuard/DataGuardBroker.php
- Both gopos/goposstb
SQL> ALTER SYSTEM SET dg_broker_start = TRUE;
- Start DGMGRL
dgmgrl
- Create Data Guard Broker Configuration
dgmgrl CREATE CONFIGURATION DG1 AS PRIMARY DATABASE IS 'gopos' CONNECT IDENTIFIER IS 'gopos'; Configuration "DG1" created with primary database "gopos"
- Add standby database(s)
dgmgrl ADD DATABASE 'goposstb' AS CONNECT IDENTIFIER IS 'goposstb';
- Enable the configuration
dgmgrl ENABLE CONFIGURATION
- Switchover to standby
dgmgrl DGMGRL> SWITCHOVER TO 'goposstb'
- Switchback
dgmgrl DGMGRL> SWITCHOVER TO 'gopos'
手动从主gopos切换至备goposstb
CONNECT / AS SYSDBA ALTER DATABASE COMMIT TO SWITCHOVER TO STANDBY;
关闭主gopos数据库,挂载主数据库为“备”数据库工作
SHUTDOWN IMMEDIATE; STARTUP NOMOUNT; ALTER DATABASE MOUNT STANDBY DATABASE; ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
备数据库(goposstb)执行接管操作
CONNECT / AS SYSDBA ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY; SHUTDOWN IMMEDIATE; STARTUP;
切换回去的话,重启执行一遍,反方向。
主数据库故障手动切换操作
在备goposstb数据库执行
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH; ALTER DATABASE ACTIVATE STANDBY DATABASE;
Read-Only Standby and Active Data Guard
To switch the standby database into read-only mode, do the following.
SHUTDOWN IMMEDIATE; STARTUP MOUNT; ALTER DATABASE OPEN READ ONLY; select name,open_mode,database_role from v$database;
To resume managed recovery, do the following.
SHUTDOWN IMMEDIATE; STARTUP MOUNT; ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION; select name,open_mode,database_role from v$database;
Remove dataguard
alter database recover managed standby database disconnect from session; alter database recover managed standby database cancel;
dup log
[oracle@goposstb ~]$ lsnrctl start
[oracle@goposstb ~]$ rman target sys/oracle36#^@gopos auxiliary sys/oracle36#^@goposstb
Recovery Manager: Release 11.2.0.4.0 - Production on Fri Jul 8 01:33:11 2016
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
connected to target database: GOWMS (DBID=1444008119)
connected to auxiliary database: GOWMS (not mounted)
RMAN> duplicate target database for standby from active database nofilenamecheck;
Starting Duplicate Db at 08-JUL-16
using target database control file instead of recovery catalog
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=20 device type=DISK
contents of Memory Script:
{
backup as copy reuse
targetfile '/u01/app/oracle/product/11.2.0/db_1/dbs/orapwgopos' auxiliary format
'/u01/app/oracle/product/11.2.0/db_1/dbs/orapwgopos' ;
}
executing Memory Script
Starting backup at 08-JUL-16
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=68 device type=DISK
Finished backup at 08-JUL-16
contents of Memory Script:
{
backup as copy current controlfile for standby auxiliary format '/mnt/sdb1/oracleData/gopos/control01.ctl';
restore clone controlfile to '/mnt/sdb1/oracleData/rman/control02.ctl' from
'/mnt/sdb1/oracleData/gopos/control01.ctl';
}
executing Memory Script
Starting backup at 08-JUL-16
using channel ORA_DISK_1
channel ORA_DISK_1: starting datafile copy
copying standby control file
output file name=/mnt/sdb1/oracleData/rman/snapcf_gopos.f tag=TAG20160708T013323 RECID=5 STAMP=916623203
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01
Finished backup at 08-JUL-16
Starting restore at 08-JUL-16
using channel ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: copied control file copy
Finished restore at 08-JUL-16
contents of Memory Script:
{
sql clone 'alter database mount standby database';
}
executing Memory Script
sql statement: alter database mount standby database
contents of Memory Script:
{
set newname for tempfile 1 to
"/mnt/sdb1/oracleData/gopos/temp01.dbf";
switch clone tempfile all;
set newname for datafile 1 to
"/mnt/sdb1/oracleData/gopos/system01.dbf";
set newname for datafile 2 to
"/mnt/sdb1/oracleData/gopos/sysaux01.dbf";
set newname for datafile 3 to
"/mnt/sdb1/oracleData/gopos/undotbs01.dbf";
set newname for datafile 4 to
"/mnt/sdb1/oracleData/gopos/users01.dbf";
backup as copy reuse
datafile 1 auxiliary format
"/mnt/sdb1/oracleData/gopos/system01.dbf" datafile
2 auxiliary format
"/mnt/sdb1/oracleData/gopos/sysaux01.dbf" datafile
3 auxiliary format
"/mnt/sdb1/oracleData/gopos/undotbs01.dbf" datafile
4 auxiliary format
"/mnt/sdb1/oracleData/gopos/users01.dbf" ;
sql 'alter system archive log current';
}
executing Memory Script
executing command: SET NEWNAME
renamed tempfile 1 to /mnt/sdb1/oracleData/gopos/temp01.dbf in control file
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting backup at 08-JUL-16
using channel ORA_DISK_1
channel ORA_DISK_1: starting datafile copy
input datafile file number=00001 name=/mnt/sdb1/oracleData/gopos/system01.dbf
output file name=/mnt/sdb1/oracleData/gopos/system01.dbf tag=TAG20160708T013331
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:25
channel ORA_DISK_1: starting datafile copy
input datafile file number=00002 name=/mnt/sdb1/oracleData/gopos/sysaux01.dbf
output file name=/mnt/sdb1/oracleData/gopos/sysaux01.dbf tag=TAG20160708T013331
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:15
channel ORA_DISK_1: starting datafile copy
input datafile file number=00003 name=/mnt/sdb1/oracleData/gopos/undotbs01.dbf
output file name=/mnt/sdb1/oracleData/gopos/undotbs01.dbf tag=TAG20160708T013331
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:03
channel ORA_DISK_1: starting datafile copy
input datafile file number=00004 name=/mnt/sdb1/oracleData/gopos/users01.dbf
output file name=/mnt/sdb1/oracleData/gopos/users01.dbf tag=TAG20160708T013331
channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01
Finished backup at 08-JUL-16
sql statement: alter system archive log current
contents of Memory Script:
{
switch clone datafile all;
}
executing Memory Script
datafile 1 switched to datafile copy
input datafile copy RECID=5 STAMP=916623257 file name=/mnt/sdb1/oracleData/gopos/system01.dbf
datafile 2 switched to datafile copy
input datafile copy RECID=6 STAMP=916623257 file name=/mnt/sdb1/oracleData/gopos/sysaux01.dbf
datafile 3 switched to datafile copy
input datafile copy RECID=7 STAMP=916623257 file name=/mnt/sdb1/oracleData/gopos/undotbs01.dbf
datafile 4 switched to datafile copy
input datafile copy RECID=8 STAMP=916623257 file name=/mnt/sdb1/oracleData/gopos/users01.dbf
Finished Duplicate Db at 08-JUL-16
Troubleshooting
http://oracleinaction.com/recover-standby-datafile-primary/
ORA-12514 TNS:listener does not currently know of service requested in connect descriptor
auxiliary duplicate error
RMAN-04006: error from auxiliary database: ORA-12514: TNS:listener does not currently know of service requested in connect descriptor ORA-00600: internal error code, arguments: [kfdskAlloc0], [], [], [], [], [], [], [], [], [], [], []
/u01/app/11.2.0/grid/bin [grid@goposstb bin]$ ./setasmgidwrap -o oracle
ORA-32004: obsolete or deprecated parameter(s) specified for RDBMS instanceORACLE instance started.
- Note that the FAL_CLIENT parameter is deprecated in 11g and not needed.
ORA-01665: control file is not a standby control file
SQL> STARTUP MOUNT ORACLE instance started. … Database mounted. SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT; ERROR at line 1: ORA-01665: control file is not a standby control file SQL> SELECT database_role FROM v$database; DATABASE_ROLE —————- PRIMARY SQL> ALTER DATABASE CONVERT TO PHYSICAL STANDBY; Database altered. SQL> STARTUP MOUNT ORACLE instance started. … Database mounted. SQL> SELECT database_role FROM v$database; DATABASE_ROLE —————- PHYSICAL STANDBY SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT; Database altered.
ORA 16139
1:alter database recover managed standby database finish; 2:alter database commit to switchover to physical primary; 3:shutdown 4:startup 5:stop listener to point to crashed db primary and point it to standby and restart. 6:try to connect as user@to_primary
https://community.oracle.com/thread/315787?start=0&tstart=0
ORA-00328
ORA-00283: recovery session canceled due to errors ORA-00328: archived log ends at change 1019342, need later change 1050270 ORA-00334: archived log: '+GOWMS_ARCH/goposstb/archivelog/2016_07_21/thread_1_seq_18.263.917821673'
Metalink ID: 864364.1
1-Run the following query to determine the needed logfile SQL> select name, thread#, sequence#, archived, applied, status from v$archived_log \ where 1050270 between FIRST_CHANGE# and NEXT_CHANGE#; 2-Recopy the logfile from the primary to the standby server 3-Register the logfile SQL> alter database register or replace logfile '</absolute path/archive log file name>'; 4-start media recovery SQL> alter database recover automatic managed standby database disconnect from session;
alert failed to establish dependency between database and diskgroup
ALTER DISKGROUP "GOWSM_ARCH" CHECK ALL;
select instance_name,db_name,status from v$asm_client;
tail -f alert+ASM.log
ERROR: failed to establish dependency between database goposstb and diskgroup resource ora.GOWMS_ARCH.dg
This error is harmless.
It is documented in the internal Bug 8304720 "ERROR: FAILED TO ESTABLISH DEPENDENCY BETWEEN DB & DISKGROUP"
"The db-dg dependency will be created later on if the diskgroup is used by the db again; the dependency can also be created manually through cmdline tool. Automatically it will resolve itself later on when the db tries to use the diskgroup. Or we can manually establish the dependancy through any command line utility."
Doc ID 1474954.1
