Sei sulla pagina 1di 22

RHEL 7 : PRVF-7532 : Package "compat-libstdc++-33(x86_64)"

is missing on node
While installing oracle 11204 on RHEL 7,I am getting below
warring in the pre check step.

Error:

PRVF-7532 : Package "compat-libstdc++-33(x86_64)" is missing on node "Node1"


- Cause: A required package is either not installed or, if the package is a
kernel module, is not loaded on the specified node.
Action: Ensure that the required package is installed and available.

But the above package is not there in the RHEL7 CD.

So i ignored it and stated installation.

During mid of installation I got the below warning as well.

Error:
INFO: /usr/bin/ld: warning: -z lazyload ignored.
/usr/bin/ld: warning: -z nolazyload ignored.
/usr/bin/ld:
/u01/app/oracle/product/11.2.0.4/db_1/sysman/lib//libnmectl.a(nmectlt.o):
undefined reference to symbol 'B_DestroyKeyObject'
/usr/bin/ld: note: 'B_DestroyKeyObject' is defined in DSO
/u01/app/oracle/product/11.2.0.4/db_1/lib/libnnz11.so so try adding it to the
linker command line
/u01/app/oracle/product/11.2.0.4/db_1/lib/libnnz11.so: could not read
symbols: Invalid operation

INFO: collect2: error: ld returned 1 exit status

INFO: make[1]: *** [/u01/app/oracle/product/11.2.0.4/db_1/sysman/lib/emdctl]


Error 1

INFO: make[1]: Leaving directory


`/u01/app/oracle/product/11.2.0.4/db_1/sysman/lib'

INFO: make: *** [emdctl] Error 2

INFO: End output from spawned process.


INFO: ----------------------------------
INFO: Exception thrown from action: make
Exception Name: MakefileException
Exception String: Error in invoking target 'agent nmhs' of makefile
'/u01/app/oracle/product/11.2.0.4/db_1/sysman/lib/ins_emagent.mk'. See
'/u01/app/oraInventory/logs/installActions2015-09-13_04-38-15PM.log' for
details.
Exception Severity: 1

Then I ignored this error and continued,since i am not going to


use Oracle EM product.

but when i apply the patch set i didn't encounter any error
during Relink.

So i think this issue can be ignorable.

Posted by Karl Marx at 01:51 No comments:


Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database
Monday, 31 August 2015
TNS-12545 TNS-12560 TNS-00515 Linux Error: 99: Cannot
assign requested address
Listener was not able to create or registered

Getting below error in the listener.log trace.

Error:
TNSLSNR for Linux: Version 11.2.0.4.0 - Production
System parameter file is
/u01/app/oracle/product/11.2.0.4/db_1/network/admin/listener.ora
Log messages written to
/u01/app/oracle/diag/tnslsnr/SIDPRD01/listener/alert/log.xml
Error listening on:
(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=HOSTNAME)(PORT=1521)))
TNS-12545: Connect failed because target host or object does not
exist
TNS-12560: TNS:protocol adapter error
TNS-00515: Connect failed because target host or object does
not exist
Linux Error: 99: Cannot assign requested address

Listener failed to start. See the error message(s) above...

Solution:
Check the ipadress of the server by running

ifconfig -a

Check the host file(cat /etc/hosts) with proper entry of host-


name and IP.

In my case the ip address with hostname is wrong in the host


file after fixing the /etc/hosts file with proper IP and host-
name. I am able to create the listener.
Posted by Karl Marx at 03:23 1 comment:
Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database
ORA-04030: out of process memory when trying to allocate
4032 bytes (qmxdGetChildNo,qmemNextBuf:alloc)
Getting ORA 04030 when we insert XML files into the database.

Error:

Errors in trace file

/u01/app/oracle/diag/rdbms/SIDPROD/SIDPROD2/trace/SIDPROD2_ora_4
085.trc (incident=528493):
ORA-04030: out of process memory when trying to allocate 4032
bytes (qmxdGetChildNo,qmemNextBuf:alloc)
Incident details in:
/u01/app/oracle/diag/rdbms/SIDPROD/SIDPROD2/incident/incdir_5284
93/SIDPROD2_ora_4085_i528493.trc
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging
details.
Mon Aug 31 10:05:27 2015

Solution:

Try insertXML after flusing the shared pool.

SQL> alter system flush SHARED_POOL;

System altered.

SQL>

For permanent solution you can refer Note:1667557.1


Posted by Karl Marx at 03:16 No comments:
Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database
Friday, 14 August 2015
drop logfile group ORA-01624: log 1 needed for crash recovery
of instance ORA-00312
After re-sizing redo log getting below error while dropping redo
log group.

Before drop we should make sure aleast 3 redo group are there
and droping group should be in INACTIVE state.

SQL> alter database drop logfile group 1


*
ERROR at line 1:
ORA-01624: log 1 needed for crash recovery of instance (thread
1)
ORA-00312: online log 1 thread 1:
'/u01/oradata//redolog/redo01_a.log'

So to make ACTIVE to INACTIVE exeute system level checkpoint.

SQL> ALTER SYSTEM CHECKPOINT GLOBAL;

System altered.

SQL>
SQL> select GROUP#,THREAD#,STATUS from v$log;

GROUP# THREAD# STATUS


---------- ---------- ----------------
1 1 INACTIVE
4 1 INACTIVE
5 1 CURRENT
6 1 INACTIVE
7 1 INACTIVE
8 1 INACTIVE

Now drop the group.


SQL> alter database drop logfile group 1;

Database altered.

SQL>
Posted by Karl Marx at 06:55 No comments:
Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database
Wednesday, 12 August 2015
Adding multiple oracle datagaurd standby database
We got DR site where real time data sync is happening from
Production and DR and I got another requirement for building 2nd
standby database from the primary data-center.

Steps:

Follow the below link to copy the data from existing DR or build
new standby from prod.

<< http://oracletechdba.blogspot.com/2015/05/migrating-oracle-
database-using-rman.html >>

Once you are done with the copy or restoration of data for
standby below steps needed in the primary database for archive
logs to ship.

SQL>alter system set FAL_SERVER=SIDSTD1,SIDSTD2 SCOPE=BOTH


sid='*';
SQL>alter system set
LOG_ARCHIVE_CONFIG='DG_CONFIG=(SIDPRD,SIDSTD1,SIDSTD2)'scope=bot
h sid='*';
SQL>alter system set LOG_ARCHIVE_DEST_3='SERVICE=SIDSTD2 LGWR
ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
DB_UNIQUE_NAME=SIDSTD2' SCOPE=BOTH sid='*';
SQL>alter system set LOG_ARCHIVE_DEST_STATE_3=ENABLE SCOPE=BOTH
sid='*';

After adding above parameter in PROD then mount the standby2 and
start the recovery.

In Standby2:
SQL>shut immediate
SQL>startup mount
SQL>ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT
FROM SESSION;

Check the alert log of both primary and standby for archive log
shipping and recovery.
Posted by Karl Marx at 01:04 No comments:
Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database
Monday, 10 August 2015
ORA-00600 on ALTER DATABASE RECOVER MANAGED
STANDBY DATABASE DISCONNECT FROM SESSION
Error:

Standby database was stuck with ORA-600 with below error.

Media Recovery Log


/SID/oradata/arch/Arch_SID_3982_1_884477344.arc
Errors in file
/SID/admin/diag/rdbms/sidstd/SID/trace/SIDSTD_pr00_4525.trc (in
cident=36243):
ORA-00600: internal error code, arguments: [2619], [3982], [],
[], [], [], [], [], [], [], [], []
Incident details in:
/SID/admin/diag/rdbms/sidstd/SID/incident/incdir_36243/SIDSTD_pr
00_4525_i36243.trc
Completed: ALTER DATABASE RECOVER MANAGED STANDBY DATABASE
DISCONNECT FROM SESSION
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging
details.
Errors with log /SID/oradata/arch/Arch_SID_3982_1_884477344.arc
MRP0: Background Media Recovery terminated with error 600

Solution:

copy the stuck archive log from production database to standby


database then do manual recovery with the file and then start
the recovery manager.

++ Scp the archive log from prod to temp location in standby.

SQL> shut immediate


SQL> startup mount;

SQL> recover standby database;


ORA-00279: change 5803237707 generated at 08/07/2015 16:50:34 needed for thread 1
ORA-00289: suggestion : /SID/oradata/arch/Arch_SIDPROD_3982_1_884477344.arc
ORA-00280: change 5803237707 for thread 1 is in sequence #3982

Specify log: {<RET>=suggested | filename | AUTO | CANCEL}


/tmp/Arch_SIDPROD_3982_1_884477344.arc
ORA-00279: change 5803272404 generated at 08/07/2015 17:01:47 needed for thread
1
ORA-00289: suggestion : /SID/oradata/arch/Arch_SIDPROD_3983_1_884477344.arc
ORA-00280: change 5803272404 for thread 1 is in sequence #3983
ORA-00278: log file '/tmp/Arch_SIDPROD_3982_1_884477344.arc' no longer needed
for this recovery

Specify log: {<RET>=suggested | filename | AUTO | CANCEL}


CANCEL
Media recovery cancelled.
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT
FROM SESSION;

Database altered.

SQL> select max(sequence#) from v$log_history;

Posted by Karl Marx at 23:41 No comments:


Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database
Tuesday, 4 August 2015
Moving datafile form NON ASM to ASM
How to move the datafile which is created in NON-ASM in
RAC environment.

Steps:
SQL> select file# from v$datafile where
name='/u01/app/oracle/product/11.2.0/db_1/dbs/DATA_01';

SQL> select tablespace_name from dba_data_files where


file_name='/u01/app/oracle/product/11.2.0/db_1/dbs/DATA_01';

++ Now Offline the tablespace


SQL> alter tablespace <Tablespace name> offline;

++ Login to RMAN to copy the datafile to ASM


RMAN> copy datafile
'/u01/app/oracle/product/11.2.0/db_1/dbs/DATA_01' to '+DATA_01'
;

++ Switch or rename the datafile


RMAN> switch datafile 74 to copy;

then check from both the nodes the datafile is accesable.


SQL> select name from v$datafile where file#=74;
++ Online the tablespace
SQL> alter tablespace <Tablespace name> online;

Posted by Karl Marx at 06:30 No comments:


Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database
Monday, 27 July 2015
PRVF-0002:Could not retrieve local hostname
When trying to start runInstaller getting below erro

PRVF-0002:Could not retrieve local hostname

Solution:

Update proper IP and hostname in /etc/hosts.

After that retry.


Posted by Karl Marx at 03:30 No comments:
Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database, LINUX
RHEL xclock command not found
When i try to installing the runInstaller java is not poping to go through installation.

So as root when i try xhost + and xclock i am getting below error.

[root@ Desktop]# xhost +


access control disabled, clients can connect from any host
[root@ Desktop]# xclock
bash: xclock: command not found
[root@Desktop]#

Solution:

Load RHEL iso and install x11 rpm.

In my case i installed xorg-x11-apps-7.6-6.el6.x86_64.rpm then xclock started working as well


as runInstaller.
Posted by Karl Marx at 03:23 No comments:
Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database, LINUX
Friday, 24 July 2015
Duplicate database fail with RMAN-04014 ORA-01127:
database name '/SIDDEVLOP' exceeds size limit of 8
characters
During cloning of Oracle DB using rman auxilary command got
below error.

ERROR:
connected to auxiliary database (not started)
RMAN-00571:
===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS
===============
RMAN-00571:
===========================================================
RMAN-03002: failure of Duplicate Db command at 07/24/2015
01:43:21
RMAN-06403: could not obtain a fully authorized session
RMAN-04006: error from auxiliary database: ORA-01034: ORACLE not
available
ORA-27101: shared memory realm does not exist
Linux-x86_64 Error: 2: No such file or directory
RMAN-03015: error occurred in stored script Memory Script
RMAN-04014: startup failed: ORA-01127: database name
'/SIDDEVLOP' exceeds size limit of 8 characters
RMAN-04017: startup error description: ORA-32004: obsolete or
deprecated parameter(s) specified for RDBMS instance

Solution:
Step1: Create text control file trace and edit as per
requirement.
Step2: Edit init.ora with proper SID.
Step3: Startnomont,create controlfile and open database in
resetlogs.

++ startup mount the db create text controlfile.


alter database backup controlfile to trace as
'/tmp/controlSIDDEVLOP.txt';

edit initSIDDEVLOP.ora of db_name and db_unique_name

++Take out the block of


CREATE CONTROLFILE REUSE DATABASE "SIDDEVLOP" RESETLOGS
NOARCHIVELOG
....
....
to
CHARACTER SET WE8MSWIN1252
/

++ Edit the file as below.


CREATE CONTROLFILE SET DATABASE "SIDDEVLOP" RESETLOGS
NOARCHIVELOG
MAXLOGFILES 192
MAXLOGMEMBERS 3
MAXDATAFILES 1024
MAXINSTANCES 32
MAXLOGHISTORY 5840
LOGFILE
GROUP 1 (
......
......
DATAFILE
'+ASM_DATA01
....
....
CHARACTER SET WE8MSWIN1252
;

++ Now,Stop the DB and nomount the DB.


Then using above create controlfile command create the control
file.
SQL>shut immediate
SQL> statup nomount

SQL> CREATE CONTROLFILE SET DATABASE "SIDDEVLOP" RESETLOGS


NOARCHIVELOG
MAXLOGFILES 192
MAXLOGMEMBERS 3
MAXDATAFILES 1024
MAXINSTANCES 32
MAXLOGHISTORY 5840
LOGFILE
GROUP 1 (
......
......
DATAFILE
'+ASM_DATA01
....
....
CHARACTER SET WE8MSWIN1252
;

Control file created.

SQL> alter database open resetlogs;

Database altered.

Ref: Manual Completion of a Failed RMAN Backup based Duplicate


(Doc ID 360962.1)
Posted by Karl Marx at 01:12 No comments:
Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database, rman
Wednesday, 22 July 2015
SHUTDOWN Active processes prevent shutdown operation
Today when i am shut-downing one of the oracle database its
taking lots of time and when i see the alert log its waiting for
"SHUTDOWN: Active processes prevent shutdown operation" to
close.

Alert log:
Job queue slave processes stopped
Waiting for dispatcher 'D000' to shutdown
All dispatchers and shared servers shutdown
Wed Jul 22 11:01:33 2015
SHUTDOWN: Active processes prevent shutdown operation
Wed Jul 22 11:06:34 2015
SHUTDOWN: Active processes prevent shutdown operation
Wed Jul 22 11:11:36 2015
SHUTDOWN: Active processes prevent shutdown operation
Wed Jul 22 11:16:30 2015
MMNL absent for 1234 secs; Foregrounds taking over
Wed Jul 22 11:16:37 2015
SHUTDOWN: Active processes prevent shutdown operation

Diag:

When i grep pmon and SID it shows only one LOCAL=YES connection
but that's is my connection of shutdown statement

[oracle@ ~]$ ps -ef|grep SID


oracle 641 1 0 2013 ? 00:41:48 ora_pmon_SID
oracle 643 1 0 2013 ? 00:00:30 ora_psp0_SID
oracle 645 1 0 2013 ? 01:01:12 ora_mman_SID
oracle 647 1 0 2013 ? 01:39:28 ora_dbw0_SID
oracle 649 1 0 2013 ? 06:08:15 ora_lgwr_SID
oracle 651 1 0 2013 ? 01:59:31 ora_ckpt_SID
oracle 653 1 0 2013 ? 00:32:51 ora_smon_SID
oracle 655 1 0 2013 ? 00:00:08 ora_reco_SID
oracle 688 1 0 2013 ? 00:12:00 ora_arc0_SID
oracle 691 1 0 2013 ? 00:12:11 ora_arc1_SID
oracle 19906 19905 0 10:56 ? 00:00:00 oracleSID
(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle 20004 19952 0 11:12 pts/5 00:00:00 tail -100f alert_SID.log
oracle 20043 20016 0 11:17 pts/6 00:00:00 grep SID

But when i grep complete oracle, i see some of the rman and
defunct session.
[oracle@ ~]$ ps -ef|grep oracle
oracle 25327 25282 0 2014 pts/4 00:00:01 rman target /
oracle 25347 25327 0 2014 ? 00:00:38 [oracle]
<defunct>
oracle 25348 25327 0 2014 ? 00:00:50 [oracle]
<defunct>
oracle 25349 25327 0 2014 ? 00:01:00 [oracle]
<defunct>
oracle 25350 25327 0 2014 ? 00:00:19 [oracle]
<defunct>

Solution:
After killing process ID(kill -9 PID) rman and defunct session
from other putty connection the database went down.

Posted by Karl Marx at 02:32 No comments:


Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database
Friday, 17 July 2015
How to make status column to False in
DBA_SCHEDULER_WINDOWS
++ To disable status column to FALSE from DBA_SCHEDULER_WINDOWS

exec DBMS_SCHEDULER.DISABLE ( '"MONDAY_WINDOW"');


exec DBMS_SCHEDULER.DISABLE ( '"TUESDAY_WINDOW"');
exec DBMS_SCHEDULER.DISABLE ( '"WEDNESDAY_WINDOW"');
exec DBMS_SCHEDULER.DISABLE ( '"THURSDAY_WINDOW"');
exec DBMS_SCHEDULER.DISABLE ( '"FRIDAY_WINDOW"');
exec DBMS_SCHEDULER.DISABLE ( '"SATURDAY_WINDOW"');
exec DBMS_SCHEDULER.DISABLE ( '"SUNDAY_WINDOW"');

++ To disable active column to FALSE from DBA_SCHEDULER_WINDOWS

exec DBMS_SCHEDULER.CLOSE_WINDOW ('"MONDAY_WINDOW"');


exec DBMS_SCHEDULER.CLOSE_WINDOW ('"TUESDAY_WINDOW"');
exec DBMS_SCHEDULER.CLOSE_WINDOW ('"WEDNESDAY_WINDOW"');
exec DBMS_SCHEDULER.CLOSE_WINDOW ('"THURSDAY_WINDOW"');
exec DBMS_SCHEDULER.CLOSE_WINDOW ('"FRIDAY_WINDOW"');
exec DBMS_SCHEDULER.CLOSE_WINDOW ('"SATURDAY_WINDOW"');
exec DBMS_SCHEDULER.CLOSE_WINDOW ('"SUNDAY_WINDOW"');
SQL> select WINDOW_NAME,ENABLED,ACTIVE,RESOURCE_PLAN,NEXT_START_DATE, DURATION from
DBA_SCHEDULER_WINDOWS;

WINDOW_NAME ENABL ACTIV


RESOURCE_PLAN NEXT_START_DATE DURATION
-------------------- ----- ----- ------------------------------ ---------------------------------------
------ ---------------
MONDAY_WINDOW FALSE FALSE 20-JUL-15 01.00.00 AM
AFRICA/JOHANNESBURG +000 06:00:00
TUESDAY_WINDOW FALSE FALSE 21-JUL-15 04.00.00 AM
AFRICA/JOHANNESBURG +000 03:00:00
WEDNESDAY_WINDOW FALSE FALSE 22-JUL-15 04.00.00 AM
AFRICA/JOHANNESBURG +000 03:00:00
THURSDAY_WINDOW FALSE FALSE 23-JUL-15 04.00.00 AM
AFRICA/JOHANNESBURG +000 03:00:00
FRIDAY_WINDOW FALSE FALSE 24-JUL-15 04.00.00 AM
AFRICA/JOHANNESBURG +000 03:00:00
SATURDAY_WINDOW FALSE FALSE 18-JUL-15 04.00.00 AM
AFRICA/JOHANNESBURG +000 03:00:00
SUNDAY_WINDOW FALSE FALSE 19-JUL-15 02.00.00 AM
AFRICA/JOHANNESBURG

Posted by Karl Marx at 00:51 No comments:


Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database, PERFORMANCE
How to disable DEFAULT_MAINTENANCE_PLAN from
DBA_SCHEDULER_WINDOWS
select
WINDOW_NAME,WINDOW_PRIORITY,ENABLED,RESOURCE_PLAN,NEXT_START_DAT
E, DURATION from DBA_SCHEDULER_WINDOWS
Output:
WINDOW_NAME WIND ENABL
RESOURCE_PLAN NEXT_START_DATE DURATION
------------------ ---- ----- ------------------------------ ------------------------------------------
-- --------------------
MONDAY_WINDOW LOW TRUE 20-JUL-15 01.00.00 AM
AFRICA/JOHANNESBURG +000 06:00:00
TUESDAY_WINDOW LOW TRUE DEFAULT_MAINTENANCE_PLAN 21-JUL-15 04.00.00 AM
AFRICA/JOHANNESBURG +000 03:00:00
WEDNESDAY_WINDOW LOW TRUE DEFAULT_MAINTENANCE_PLAN 22-JUL-15 04.00.00 AM
AFRICA/JOHANNESBURG +000 03:00:00
THURSDAY_WINDOW LOW TRUE DEFAULT_MAINTENANCE_PLAN 23-JUL-15 04.00.00 AM
AFRICA/JOHANNESBURG +000 03:00:00
FRIDAY_WINDOW LOW TRUE DEFAULT_MAINTENANCE_PLAN 24-JUL-15 04.00.00 AM
AFRICA/JOHANNESBURG +000 03:00:00
SATURDAY_WINDOW LOW TRUE DEFAULT_MAINTENANCE_PLAN 18-JUL-15 04.00.00 AM
AFRICA/JOHANNESBURG +000 03:00:00
SUNDAY_WINDOW LOW TRUE DEFAULT_MAINTENANCE_PLAN 19-JUL-15 02.00.00 AM
AFRICA/JOHANNESBURG +000 06:00:00

Now to disable DEFAULT_MAINTENANCE_PLAN from


DBA_SCHEDULER_WINDOWS

SQL> alter system set resource_manager_plan='' scope=both

SQL>execute
dbms_scheduler.set_attribute('WEEKNIGHT_WINDOW','RESOURCE_PLAN',
''); and
SQL>execute
dbms_scheduler.set_attribute('WEEKEND_WINDOW','RESOURCE_PLAN',''
);

SQL>execute
dbms_scheduler.set_attribute('SATURDAY_WINDOW','RESOURCE_PLAN','
');
SQL>execute
dbms_scheduler.set_attribute('SUNDAY_WINDOW','RESOURCE_PLAN','')
;
SQL>execute
dbms_scheduler.set_attribute('MONDAY_WINDOW','RESOURCE_PLAN','')
;
SQL>execute
dbms_scheduler.set_attribute('TUESDAY_WINDOW','RESOURCE_PLAN',''
);
SQL>execute
dbms_scheduler.set_attribute('WEDNESDAY_WINDOW','RESOURCE_PLAN',
'');
SQL>execute
dbms_scheduler.set_attribute('THURSDAY_WINDOW','RESOURCE_PLAN','
');
SQL>execute
dbms_scheduler.set_attribute('FRIDAY_WINDOW','RESOURCE_PLAN','')
;

SQL> select
WINDOW_NAME,WINDOW_PRIORITY,ENABLED,RESOURCE_PLAN,NEXT_START_DAT
E, DURATION from DBA_SCHEDULER_WINDOWS;
WINDOW_NAME WIND ENABL RESOURCE_PLAN
NEXT_START_DATE DURATION
-------------------- ---- ----- -------------------------------------------------------- --------------
-
MONDAY_WINDOW LOW TRUE 20-JUL-15 01.00.00 AM AFRICA/JOHANNESBURG +000 06:00:00
TUESDAY_WINDOW LOW TRUE 21-JUL-15 04.00.00 AM AFRICA/JOHANNESBURG +000 03:00:00
WEDNESDAY_WINDOW LOW TRUE 22-JUL-15 04.00.00 AM AFRICA/JOHANNESBURG +000 03:00:00
THURSDAY_WINDOW LOW TRUE 23-JUL-15 04.00.00 AM AFRICA/JOHANNESBURG +000 03:00:00
FRIDAY_WINDOW LOW TRUE 24-JUL-15 04.00.00 AM AFRICA/JOHANNESBURG +000 03:00:00
SATURDAY_WINDOW LOW TRUE 18-JUL-15 04.00.00 AM AFRICA/JOHANNESBURG +000 03:00:00

SUNDAY_WINDOW LOW TRUE 19-JUL-15 02.00.00 AM AFRICA/JOHANNESBURG +000 06:00:00


Ref:
Resource Manager and Sql Tuning Advisory
DEFAULT_MAINTENANCE_PLAN (Doc ID 786346.1)

Now To make status column to False in DBA_SCHEDULER_WINDOWS

Follow the below link


<< http://oracletechdba.blogspot.com/2015/07/how-to-make-status-
column-to-false-in.html >>

Posted by Karl Marx at 00:49 No comments:


Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database, PERFORMANCE
Monday, 13 July 2015
Oracle Data Guard config ORA-16057: server not in Data
Guard configuration
During Oracle Data Gaurd Configuration at the post config the
logs are not shipping to the DR site.

While checking "gv$archive_dest" view getting below error.

select error from gv$archive_dest where dest_id=2;


ERROR

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

ORA-16057: server not in Data Guard


configuration

Diag:

I see log_archive_config was empty.


SQL> show parameter log_archive_config

NAME TYPE VALUE


------------------------------------ ----------- ---------------
---------------
log_archive_config string

Solution:
After updating log_archive_config the archive logs started
shipping.

SQL> alter system set


LOG_ARCHIVE_CONFIG='DG_CONFIG=(SIDPROD,SIDSTD)'scope=both
sid='*';

System altered.

SQL> show parameter log_archive_config

NAME TYPE VALUE


------------------------------------ ----------- ---------------
---------------
log_archive_config string DG_CONFIG=(SIDP
ROD,SIDSTD)

SQL>select error,Status from gv$archive_dest where dest_id=2;

ERROR
STATUS
-------------------------- ---------

VALID

SQL>
Posted by Karl Marx at 01:42 No comments:
Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database
ORA-12801: error signaled in parallel query server ORA-01114
ORA-01114 ORA-29701
Error:

Below error while running a query.

ORA-12801: error signaled in parallel query server P009, instance (2)


ORA-01114: IO error writing block to file (block # )
ORA-01114: IO error writing block to file 206 (block # 1053056)
ORA-29701: unable to connect to Cluster Synchronization Service

But the same query work from other Rac Node.

Diag:

Looks like /u01 oracle/grid mount point is 100% full.

Solution:
After cleaning some of the log file from /u01 we are able to run the query from both the nodes
Posted by Karl Marx at 01:35 No comments:
Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database
Thursday, 18 June 2015
Oracle database I/O performance issue
We have night batch process slowly taking time and when we check
the AWR report we see most of the time DB File Sequential read
and when checking the query its going for index scan that
directs me to check the I/O performance of the system.

I am glancing how i went throught AWR.

check the Avg wait(ms) for "db file sequential read" in Top 5 Timed
Foreground Events" session and there Avg wait is 27,Then further go
through "Wait Event Histogram"
In below "Wait Event Histogram" you can see the % of waits are more
b/w 32ms and 1s buckets for above top wait events and further walk
through the AWR on tablespace I/O.

You can see the Av Rd(ms) and Av Buf Wt(ms) is more.


From this it look we have I/O issue making slowness of the database.

and when we check the OS level for the disk it gives 100% disk busy.

Further to fix the issue we have to check the for datafile I/O session
in AWR and if possible move the datafile to another disk where there
is low i/o.
As well as we have to tune the top I/O related queries.
Consider increasing DB buffer cache.

Reference: How to Tell if the I/O of the Database is Slow (Doc ID


1275596.1)

Please go thought the metalink note for more details.


Posted by Karl Marx at 04:03 No comments:
Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database, PERFORMANCE
Thursday, 4 June 2015
backup controlfile for standby error with RMAN-03009 ORA-
01671: control file is a backup, cannot make a standby control
file
We are duplicating the standby database to other standby and
during the process we are getting below error.

Starting backup at 04-JUN-15


allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=693 device type=DISK
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
RMAN-00571:
===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS
===============
RMAN-00571:
===========================================================
RMAN-03009: failure of backup command on ORA_DISK_1 channel at
06/04/2015 09:42:09
ORA-01671: control file is a backup, cannot make a standby
control file

So standby-1 is having the issue of taking controlfile backup


for standby controlfile.

Solution:

Please refer "RMAN ACTIVE DUPLICATE WHEN CONNECTED TO STANDBY AS


TARGET (Doc ID 1343515.1)"

I applied the Patch 11715084 in standby-1 and tried the


duplication which is successful.

Posted by Karl Marx at 01:04 No comments:


Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database
Wednesday, 3 June 2015
ORA-19809: limit exceeded for recovery files ORA-19804:
cannot reclaim
During RMAN restoration on UAT got the below error.

ERROR:
RMAN-03002: failure of restore command at 06/03/2015 09:42:32
ORA-19870: error while restoring backup piece
/dump/RMANBK/backupfile/Db_.39373.1.881387571.20150603.bak
ORA-19809: limit exceeded for recovery files
ORA-19804: cannot reclaim 18874368 bytes disk space from
32212254720 limit

Solution:
Increase the size of DB_RECOVERY_FILE_DEST_SIZE in initSID.ora
file and then restart the recovery.
SQL> shut immediate
#Increase the value DB_RECOVERY_FILE_DEST_SIZE in init file
SQL> startup nomount
RMAN> start the recovery.

Note: If you use spfile then change using

alter system set DB_RECOVERY_FILE_DEST_SIZE=g scope=BOTH;


then start the recovery
Posted by Karl Marx at 00:33 No comments:
Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database, rman
Monday, 1 June 2015
ORA-17503: ksfdopn:2 Failed to open file ORA-15173: entry
'dr1DBSID.dat' does not exist in directory 'brokerfile'
During Data broker configuration getting below error:

ORA-15173: entry 'dr2DBSID.dat' does not exist in directory


'brokerfile'
drcx: Error opening "+ASM_DATA01/DBSID/brokerfile/dr2DBSID.dat",
error = ORA-16572
drcx: cannot open configuration file
"+ASM_DATA01/DBSID/brokerfile/dr1DBSID.dat", retrying
drcx: cannot open configuration file
"+ASM_DATA01/DBSID/brokerfile/dr1DBSID.dat"
ORA-17503: ksfdopn:2 Failed to open file
+ASM_DATA01/DBSID/brokerfile/dr1DBSID.dat
ORA-15173: entry 'dr1DBSID.dat' does not exist in directory
'brokerfile'
drcx: Error opening "+ASM_DATA01/DBSID/brokerfile/dr1DBSID.dat",
error = ORA-16572
drcx: Establishing "+ASM_DATA01/DBSID/brokerfile/dr2DBSID.dat"
as the more current file
drcx: cannot open configuration file
"+ASM_DATA01/DBSID/brokerfile/dr2DBSID.dat", retrying

Solution:
In asm create directory +ASM_DATA01/DBSID/brokerfile
asmcmd cd +ASM_DATA01/DBSID
mkdir brokerfile
Posted by Karl Marx at 03:29 No comments:
Email ThisBlogThis!Share to TwitterShare to FacebookShare to Pinterest
Labels:DATABASE,PERFORMANCE Database
Primary database alertlog giving below error(TNS-12564) for
DGMGRL data guard services DBSID_DGB.
Warring in the alert log of primary:

Fatal NI connect error 12514, connecting to:


(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=hostname)(PORT=port))(CONNECT_DATA
=(SERVER=DEDICATED)(SERVICE_NAME=DBSID_DGB)(CID=(PROGRAM=oracle)(HOST=hostnam
e)(USER=oracle))))
VERSION INFORMATION:
TNS for Linux: Version 11.2.0.2.0 - Production
TCP/IP NT Protocol Adapter for Linux: Version 11.2.0.2.0 - Production
Time: 01-JUN-2015 11:12:47
Tracing not turned on.
Tns error struct:
ns main err code: 12564
TNS-12564: TNS:connection refused
ns secondary err code: 0
nt main err code: 0
nt secondary err code: 0
nt OS err code: 0

Solution:
When checking the service in DR using lsnrctl status, you are not able to see
the service "DBSID_DGB".
so logged in to the Standby db and modify the parameter,

SQL> alter system set "__dg_broker_service_names" = 'DBSID_DGB' scope=both;

System altered.

++Check the values.

SELECT
a.ksppinm "Parameter",b.ksppstvl "Session Value",c.ksppstvl "Instance Value"
FROM
x$ksppi a,
x$ksppcv b,
x$ksppsv c
WHERE a.indx = b.indx
AND a.indx = c.indx
AND a.ksppinm LIKE '/__dg%' escape '/'
/
------------------
__dg_broker_service_names
DBSID_DGB
DBSID_DGB

++ Then check the lsnrctl status,You can see the services("DBSID_DGB").

$lsnrctl status

LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 01-JUN-2015 11:11:26

Copyright (c) 1991, 2010, Oracle. All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.2.0 - Production
Start Date 01-JUN-2015 10:29:23
Uptime 0 days 0 hr. 42 min. 2 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/11.2.0/grid/network/admin/listener.ora
Listener Log File /u01/app/diag/tnslsnr/za-fdbs-dr-
03/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=hostname)(PORT=prot)))
Services Summary...
Service "DBSID" has 1 instance(s).
Instance "DBSID", status READY, has 1 handler(s) for this service...
Service "DBSID_DGB" has 1 instance(s).

Instance "DBSID", status READY, has 1 handler(s) for this service...


++ Now in Primary alert log we are not getting any more warnings.

Potrebbero piacerti anche