Saturday, March 21, 2015

Compile Invalid Objects using UTLRP.SQL and UTLIRP.SQL in R12

UTLIRP.SQL

This is a SQL script which Invalidates PL/SQL modules (procedures, functions, packages, types, triggers, views in a database). This script expects standard.sql, dbmsstdx.sql files. 

There should be no other DDL on the database while running the script.

For better performance set following parameter
set  _disable_fast_validate=TRUE in init.ora file 

connected AS SYSDBA

start database in UPGRADE mode 
SQL>STARTUP UPGRADE; or SQL>ALTER DATABASE OPEN UPGRADE;
Run script utlirp.sql 
SQL>@<ORACLE_HOME>/rdbms/admin/utlirp.sql


UTLRP.SQL

This script recompiles all existing invalid PL/SQL modules in a database. this invokes utlrcmp.sql

There should be no other DDL on the database while running the script. 

Connected AS SYSDBA

Shut down the database and restart in normal mode 

Run script utlrp.sql 
SQL>@<ORACLE_HOME>/rdbms/admin/utlrp.sql

Saturday, March 7, 2015

Setup Printers for Cheque printing on Oracle EBS R12


For Printer setup first need to setup from OS level and then setup from application

Setup the printer at the OS level

First we need to check the status for the Linux/UNIX based CUPS print server
[root@ etc /]# /etc/init.d/cups status
Then add the new printer to the LINUX environment, login to linux CUPS using following URL
http://localhost:631/admin

Click on Add Printer button and add printer details



Click Continue button and select Device from drop down list for network printer select Apps Socket


Enter IP for network printer 


Select printer model and type



And press continue. Now Printer is added from OS


Setup through Application

Navigation -  System Administrator -> Install -> Printer -> Register
Define a new printer by entering the Printer Name and Type (Printer name must be same for both OS and application)


For Custom style we can define new style  Add The printer to 'printer' profile option
Navigation -  System Administrator -> Profile -> System 

Select the style as 'PDF Publisher' and printer name for concurrent program.
Navigation -  System Administrator -> Concurrent -> Program -> Define 
Find the the relevant cheque printing program

Bounce the Concurrent Manager to reflect the changes

When run the concurrent program select the no of copies need to print

RMAN Error : ORA-19625: error identifying file

Problem
RMAN> run{
2> allocate channel ch1 device type disk format '+DATA/RAC/BACKUP/%T_DB_%U';
3> backup database;
4> backup archivelog all format '+DATA/RAC/BACKUP/%T_Archive_%U';
5> backup current controlfile format '+DATA/RAC/BACKUP/%T_Control_%U';
6> }

using target database control file instead of recovery catalog
allocated channel: chq
channel chq: SID=53 instance=RAC2 device type=DISK

Starting backup at 06-MAR-15
current log archived
released channel: chq
RMAN-00571: ================================================
RMAN-00569: ========= ERROR MESSAGE STACK FOLLOWS ==========
RMAN-00571: ================================================
RMAN-03002: failure of backup command at 03/06/2015 17:57:28
RMAN-06059: expected archived log not found, loss of archived log compromises recoverability
ORA-19625: error identifying file /u01/archive/1_7_873551068.dbf
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3

Recovery Manager complete.

Solution

Delete expired archivelog those are not in the DB
RMAN> crosscheck archivelog all;

using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=35 instance=RAC2 device type=DISK
validation failed for archived log
archived log file name=/u01/archive/1_7_873551068.dbf RECID=3 STAMP=873556504
validation failed for archived log
archived log file name=/u01/archive/1_8_873551068.dbf RECID=2 STAMP=873556504
validation failed for archived log
archived log file name=/u01/archive/1_9_873551068.dbf RECID=4 STAMP=873557382
validation failed for archived log
archived log file name=/u01/archive/1_10_873551068.dbf RECID=5 STAMP=873557389
validation failed for archived log
validation succeeded for archived log
archived log file name=+DATA/rac/archivelog/1_14_873551068.dbf RECID=15 STAMP=873567711
validation succeeded for archived log
archived log file name=+DATA/rac/archivelog/1_15_873551068.dbf RECID=19 STAMP=873567781
validation succeeded for archived log
archived log file name=+DATA/rac/archivelog/1_16_873551068.dbf RECID=21 STAMP=873615567
Crosschecked 22 objects
RMAN> delete expired archivelog all;

released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=35 instance=RAC2 device type=DISK
List of Archived Log Copies for database with db_unique_name RAC
=========================================================

Key     Thrd Seq     S Low Time 
------- ---- ------- - ---------
3       1    7       X 05-MAR-15
        Name: /u01/archive/1_7_873551068.dbf

2       1    8       X 05-MAR-15
        Name: /u01/archive/1_8_873551068.dbf

4       1    9       X 05-MAR-15
        Name: /u01/archive/1_9_873551068.dbf

5       1    10      X 05-MAR-15
        Name: /u01/archive/1_10_873551068.dbf


Do you really want to delete the above objects (enter YES or NO)? YES
deleted archived log
archived log file name=/u01/archive/1_7_873551068.dbf RECID=3 STAMP=873556504
deleted archived log
archived log file name=/u01/archive/1_8_873551068.dbf RECID=2 STAMP=873556504
deleted archived log
archived log file name=/u01/archive/1_9_873551068.dbf RECID=4 STAMP=873557382
deleted archived log
archived log file name=/u01/archive/1_10_873551068.dbf RECID=5 STAMP=873557389
deleted archived log
Deleted 11 EXPIRED objects

After delete expired backup, re-try the backup then it will successful 
RMAN> run{
2> allocate channel ch1 device type disk format '+DATA/RAC/BACKUP/%T_DB_%U';
3> backup database;
4> backup archivelog all format '+DATA/RAC/BACKUP/%T_Archive_%U';
5> backup current controlfile format '+DATA/RAC/BACKUP/%T_Control_%U';
6> }

allocated channel: ch1
channel ch1: SID=53 instance=RAC2 device type=DISK

Starting backup at 06-MAR-15
channel ch1: starting full datafile backup set
channel ch1: specifying datafile(s) in backup set
input datafile file number=00001 name=+DATA/rac/datafile/system.256.873550825
input datafile file number=00002 name=+DATA/rac/datafile/sysaux.257.873550829
input datafile file number=00003
name=+DATA/rac/datafile/undotbs1.258.873550831
input datafile file number=00005 name=+DATA/rac/datafile/example.264.873551129
input datafile file number=00006
name=+DATA/rac/datafile/undotbs2.265.873551485
input datafile file number=00004 name=+DATA/rac/datafile/users.259.873550831
channel ch1: starting piece 1 at 06-MAR-15
channel ch1: finished piece 1 at 06-MAR-15
piece handle=+DATA/rac/backup/20150306_db_0dq15sbj_1_1 tag=TAG20150306T182451
comment=NONE
channel ch1: backup set complete, elapsed time: 00:01:55
channel ch1: starting full datafile backup set
channel ch1: specifying datafile(s) in backup set
including current control file in backup set
including current SPFILE in backup set
channel ch1: starting piece 1 at 06-MAR-15
channel ch1: finished piece 1 at 06-MAR-15
piece handle=+DATA/rac/backup/20150306_db_0eq15sf6_1_1 tag=TAG20150306T182451
comment=NONE
channel ch1: backup set complete, elapsed time: 00:00:01
Finished backup at 06-MAR-15

Starting backup at 06-MAR-15
current log archived
channel ch1: starting archived log backup set
channel ch1: specifying archived log(s) in backup set
input archived log thread=2 sequence=1 RECID=1 STAMP=873555316
input archived log thread=2 sequence=6 RECID=13 STAMP=873567601
input archived log thread=1 sequence=14 RECID=15 STAMP=873567711
input archived log thread=2 sequence=7 RECID=14 STAMP=873567610
input archived log thread=2 sequence=8 RECID=16 STAMP=873567733
input archived log thread=1 sequence=15 RECID=19 STAMP=873567781
input archived log thread=2 sequence=9 RECID=17 STAMP=873567774
input archived log thread=2 sequence=10 RECID=18 STAMP=873567777
input archived log thread=2 sequence=11 RECID=20 STAMP=873568822
input archived log thread=1 sequence=16 RECID=21 STAMP=873615567
channel ch1: starting piece 1 at 06-MAR-15
channel ch1: finished piece 1 at 06-MAR-15
piece handle=+DATA/rac/backup/20150306_archive_0fq15sfj_1_1
tag=TAG20150306T182658 comment=NONE
channel ch1: backup set complete, elapsed time: 00:00:07
Finished backup at 06-MAR-15

Starting backup at 06-MAR-15
channel ch1: starting full datafile backup set
channel ch1: specifying datafile(s) in backup set
including current control file in backup set
channel ch1: starting piece 1 at 06-MAR-15
channel ch1: finished piece 1 at 06-MAR-15
piece handle=+DATA/rac/backup/20150306_control_0gq15sfs_1_1
tag=TAG20150306T182708 comment=NONE
channel ch1: backup set complete, elapsed time: 00:00:07
Finished backup at 06-MAR-15
released channel: ch1