|
What Products Are Installed in Applications 11i !!!!! |
Tuesday, January 29, 2008 |
There are are several ways to find out which products are installed, shared or inactive for choosen product family and products. Please use any of the options listed below.
1. Run Licence Manager
2. Run the following script in Sqlplus as apps user:
cd $AD_TOP/sql/adutconf.sql Sqlplus> @adutconf.sql
This creates a text file adutconf.lst in the current working directory.
3. View the file $APPL_TOP/admin/applprod.txt file
4. Run the following queries in Sqlplus as apps user:
a) Find all products and statuses: select application_id, status from fnd_product_installations; b) Find the status of a particular product:
E.g. Application_id: PER (Human Resources) = 800 PAY (Payroll) = 801
select application_id, status from fnd_product_installations; where application_id = '%80%'; Status: I = Installed S = Shared N = Not Installed
OR
1) Download patchsets.sh from ftp://ftp.oracle.com/support/outgoing/PATCHSET_COMPARE_TOOL/patchsets.sh Copy all contents And create file patchsets.sh
2) FTP this file to server the application server.
3) Change the permission of this file.
4) Logon Application User i.e su – applmgr
5) Go to the file location and run patchsets.sh utility. i.e cd /oracle1/patchset/ $ ls –lrt -rwxrwxrwx 1 root root 693509 Jan 29 15:00 patchsets.sh 6) Run the Patchset Comparison Utility - patchsets.sh ./patchsets.sh connect=apps/apps It will proceed like this ……. OUT_DIR set to: /tmp by default (set CUST_TEMP if you want to customize this) Connecting to database with parameters passed using tool version: 4.39 Getting Appsversion Version from the Database ... DETERMINED DB VERSION: 11.5.10.2 Finished: Setup_Env ... Extracting from AD_BUGS & AD_APPLIED_PATCHES into: Patch.csv Running query on ad_patch_driver_minipks adds all patchsets applied. ... FOUND: 2 patchset in AD_PATCH_DRIVER_MINIPKS see: Applied_Ad_Minipks.csv ... Converting Patch Names to Patch Numbers. (using XX_patchsets.txt) ... Running Applied_Patches_Report.sql 11i sql: Applied_Patches_11i.sql ... Created Patches Applied Report: Applied_Patches_11i.txt ... Appending Minipks bug numbers to Patch.csv from ad_patch_driver_minipks table ... FOUND: 88585 records in AD_BUGS & AD_APPLIED_PATCHES ... Generated csv Patch datafile from the ad_xyz tables or Database: applptch=Patch.csv Finished: Get_Version (Next Step is slowest) ... USING DB Patch Information: Patch.csv (From Database) Done matching 980 patchsets(aru) to patchlist(Patch.csv) Finished: Compare_Patches (Report.txt) Starting: Report_11i.txt FAMILY PACK PATCHES Product Baseline Version Running Version Latest Available, Status ------- ----------------- --------------- ----------------------- atg_pf 11i.ATG_PF.H(3438354)11i.ATG_PF.H.6(5903765), Rel- By_Metal bis_pf 11i.BIS_PF.D.1(4054609) 11i.BIS_PF.H(5565583), Rel- By_Metal ………………..
It will take 15-30 minutes to complete.
7) In the current directory path it will create file called Report_11i.txt.
Reference : Note : 146139.1 |
posted by Jaswinder Singh @ 2:08 AM |
|
|
Check Database Performance by these queries !!!! |
Monday, January 28, 2008 |
SELECT * FROM v$log;
SELECT COUNT(*) FROM v$process;
SELECT COUNT(*) FROM v$session WHERE status='ACTIVE'
SELECT COUNT(*) FROM dba_locks WHERE blocking_others='Blocking';
SELECT COUNT(*) FROM dba_objects WHERE status='INVALID' AND owner IN ('ABC','DEF') GROUP BY owner;
SELECT A.Tablespace_Name,TRUNC((SUM(A.Tots)/1024/1024),3) Tot_Size, TRUNC(((SUM(A.Tots)/1024/1024)-(SUM(A.Sumb)/1024/1024)),3) Tot_Used FROM ( SELECT Tablespace_Name,0 Tots,SUM(Bytes) Sumb, MAX(Bytes) Largest,COUNT(*) Chunks FROM Sys.Dba_Free_Space A GROUP BY Tablespace_Name UNION SELECT Tablespace_Name,SUM(Bytes) Tots,0,0,0 FROM Sys.Dba_Data_Files GROUP BY Tablespace_Name) A, V$instance B GROUP BY A.Tablespace_Name ORDER BY A.Tablespace_Name
SELECT (1-(SUM(DECODE(name,'physical reads', value, 0))/ (SUM(DECODE(name,'db block gets', value, 0)) + SUM(DECODE(name,'consistent gets', value, 0))))) * 100 "Read Hit Ratio" FROM v$sysstat
SELECT d.status "Status", d.tablespace_name "Name", d.CONTENTS "Type", d.extent_management "Extent Management", TO_CHAR(NVL(a.bytes / 1024 / 1024, 0),'99G999G990D900') "Size (M)", TO_CHAR(NVL(NVL(f.bytes, 0), 0)/1024/1024 ,'99G999G990D900') "Free (MB)", TO_CHAR(NVL((NVL(f.bytes, 0)) / a.bytes * 100, 0), '990D00') "Free %" FROM sys.dba_tablespaces d, (SELECT tablespace_name, SUM(bytes) bytes FROM dba_data_files GROUP BY tablespace_name) a, (SELECT tablespace_name, SUM(bytes) bytes FROM dba_free_space GROUP BY tablespace_name) f WHERE d.tablespace_name = a.tablespace_name(+) AND d.tablespace_name = f.tablespace_name(+) AND NOT (d.extent_management LIKE 'LOCAL' AND d.CONTENTS LIKE 'TEMPORARY') UNION ALL SELECT d.status "Status", d.tablespace_name "Name", d.CONTENTS "Type", d.extent_management "Extent Management", TO_CHAR(NVL(a.bytes / 1024 / 1024, 0),'99G999G990D900') "Size (M)", TO_CHAR(NVL((a.bytes-t.bytes), a.bytes)/1024/1024,'99G999G990D900') "Free (MB)", TO_CHAR(NVL((a.bytes-t.bytes) / a.bytes * 100, 100), '990D00') "Free %" FROM sys.dba_tablespaces d, (SELECT tablespace_name, SUM(bytes) bytes FROM dba_temp_files GROUP BY tablespace_name) a, (SELECT tablespace_name, SUM(bytes_cached) bytes FROM v$temp_extent_pool GROUP BY tablespace_name) t WHERE d.tablespace_name = a.tablespace_name(+) AND d.tablespace_name = t.tablespace_name(+) AND d.extent_management LIKE 'LOCAL' AND d.CONTENTS LIKE 'TEMPORARY' ORDER BY 7
SELECT COUNT(*) FROM tab |
posted by Jaswinder Singh @ 2:04 AM |
|
|
Some Steps To Do Database Refresh in APPS.... |
Thursday, January 17, 2008 |
Now I do database refresh From Clone System To Source B'coz.
1) Start the database and Applications Tier for testing purpose whether it is working. **** Log on Database user In my Case : su - dbtier check the value of $ORACLE_HOME echo $ORACLE_HOME cd $ORACLE_HOME/appsutil/scripts/clone_apps/ ./addlnctl.sh start clone lsnrctl status clone ./addbctl.sh start sqlplus '/as sysdba' select status from v$instance **** Log on Applications user In my Case su - apptier check the value $COMMON_TOP or $OAD_TOP cd $COMMON_TOP/admin/scripts/clone_apps/ ./adstrtal.sh apps/apps --- This script will start the applications Tier including all the servers. 2) Test the applications http://host_name:port --- Yes It is working Fine Now we need to shutdown the Applications Tier as well as Database Tier.
3) Shutdown **** Firstly Stop the Applications Tier. Log on Applications user In my Case su - apptier check the value $COMMON_TOP or $OAD_TOP cd $COMMON_TOP/admin/scripts/clone_apps/ ./adstpall.sh apps/apps *** Now Shutdown the Database Neatly and cleanly. Log on Database user In my Case : su - dbtier check the value of $ORACLE_HOME echo $ORACLE_HOME cd $ORACLE_HOME/appsutil/scripts/clone_apps/ ./addlnctl.sh stop clone lsnrctl status clone ./addbctl.sh stop sqlplus '/as sysdba' select status from v$instance Note -- Now follow the document 7 steps for database refreshment.......
4) Startup the database in restrict mode. sqlplus '/as sysdba' startup restrict 5) Create a Control file to trace. alter database backup contolfile to trace; check out latest trace file under the $ORACLE_HOME/admin/clone_apps/udump In my Case that is clone_ora_8880.trc nad rename it as .sql format i.e mv clone_ora_8880.trc ctrclone.sql 6) Shutdown the Database. sqlplus '/as sysdba' shutdown immediate; 7) Copy initclone,ctrlclone.sql and datafiles to VIS system. In My Case Copy Initialize parameter file..... cd clone/visdb/9.2.0/dbs/ cp -Rf initclone.ora /u01/oracle/visdb/9.2.0/dbs/ cp -Rf clone_apps_ifile.ora /u01/oracle/visdb/9.2.0/dbs/ Copy Ctrlclone.sql file cd admin/clone_apps/udump/ cp -Rf ctrclone.sql /u01/oracle/visdb/9.2.0/admin/ Copy datafiles cd /u01/clone/ cp -Rf visdata /u01/oracle/ 8) Change the permission at OS level In my case As root user issues these commands.... chmod -Rf 755 9) Now edit the init parameter file change the parameter db_name = vis control_files= /u01/oracle/visdata/cntrl01.dbf,/u01/oracle/visdata/cntrl02.dbf,/u01/oracle/visdata/cntrl03.dbf user_dump_dest = /u01/oracle/visdb/9.2.0/admin/vis_apps/udump background_dump_dest = /u01/oracle/visdb/9.2.0/admin/vis_apps/bdump core_dump_dest = /u01/oracle/visdb/9.2.0/admin/vis_apps/cdump utl_file_dir = /usr/tmp,/usr/tmp,/u01/oracle/visdb/9.2.0/appsutil/outbound/vis_apps,/usr/tmp IFILE=/u01/oracle/visdb/9.2.0/dbs/vis_apps_ifile.ora 10 Make changes in the ctrlclone.sql In my case which is located at /u01/oracle/visdb/9.2.0/admin/ vi ctrlclone.sql STARTUP NOMOUNT pfile=/u01/oracle/visdb/9.2.0/dbs/initVIS.ora CREATE CONTROLFILE set DATABASE "VIS" RESETLOGS NOARCHIVELOG -- SET STANDBY TO MAXIMIZE PERFORMANCE MAXLOGFILES 32 MAXLOGMEMBERS 5 MAXDATAFILES 512 MAXINSTANCES 8 MAXLOGHISTORY 3630 LOGFILE GROUP 1 '/u01/oracle/visdata/log3.dbf' SIZE 50M, GROUP 2 '/u01/oracle/visdata/log2.dbf' SIZE 50M, GROUP 3 '/u01/oracle/visdata/log1.dbf' SIZE 50M -- STANDBY LOGFILE DATAFILE '/u01/oracle/visdata/sys1.dbf', '/u01/oracle/visdata/sys2.dbf', '/u01/oracle/visdata/sys3.dbf', '/u01/oracle/visdata/sys4.dbf', '/u01/oracle/visdata/sys5.dbf', '/u01/oracle/visdata/sys6.dbf', '/u01/oracle/visdata/sys7.dbf', '/u01/oracle/visdata/undo01.dbf', '/u01/oracle/visdata/undo02.dbf', '/u01/oracle/visdata/undo03.dbf', '/u01/oracle/visdata/undo04.dbf', '/u01/oracle/visdata/archive1.dbf', '/u01/oracle/visdata/archive2.dbf', '/u01/oracle/visdata/media1.dbf', '/u01/oracle/visdata/media2.dbf', '/u01/oracle/visdata/media3.dbf', '/u01/oracle/visdata/nologging1.dbf', '/u01/oracle/visdata/queues1.dbf', '/u01/oracle/visdata/queues2.dbf', '/u01/oracle/visdata/reference1.dbf', '/u01/oracle/visdata/reference2.dbf', '/u01/oracle/visdata/summary1.dbf', '/u01/oracle/visdata/summary2.dbf', '/u01/oracle/visdata/summary3.dbf', '/u01/oracle/visdata/summary4.dbf', '/u01/oracle/visdata/summary5.dbf', '/u01/oracle/visdata/tx_data1.dbf', '/u01/oracle/visdata/tx_data2.dbf', '/u01/oracle/visdata/tx_data3.dbf', '/u01/oracle/visdata/tx_data4.dbf', '/u01/oracle/visdata/tx_data5.dbf', '/u01/oracle/visdata/tx_data6.dbf', '/u01/oracle/visdata/tx_data7.dbf', '/u01/oracle/visdata/tx_data8.dbf', '/u01/oracle/visdata/tx_data9.dbf', '/u01/oracle/visdata/tx_data10.dbf', '/u01/oracle/visdata/tx_data11.dbf', '/u01/oracle/visdata/tx_idx1.dbf', '/u01/oracle/visdata/tx_idx2.dbf', '/u01/oracle/visdata/tx_idx3.dbf', '/u01/oracle/visdata/tx_idx4.dbf', '/u01/oracle/visdata/tx_idx5.dbf', '/u01/oracle/visdata/tx_idx6.dbf', '/u01/oracle/visdata/tx_idx7.dbf', '/u01/oracle/visdata/tx_idx8.dbf', '/u01/oracle/visdata/tx_idx9.dbf', '/u01/oracle/visdata/tx_idx10.dbf', '/u01/oracle/visdata/tx_idx11.dbf', '/u01/oracle/visdata/apps_ts_tx_interface.dbf', '/u01/oracle/visdata/ctx1.dbf', '/u01/oracle/visdata/odm.dbf', '/u01/oracle/visdata/olap.dbf', '/u01/oracle/visdata/owa1.dbf', '/u01/oracle/visdata/portal.dbf', '/u01/oracle/visdata/mobile01.dbf' CHARACTER SET UTF8 ;
11) Open the database in resetlog mode. alter database open resetlogs 12) Shutdown the database in normal mode & Take a cold backup as per Oracle recommendation.
13) Startup database and listener.
14 Now login as application user In my Case su - applmgr and run adautocfg.sh Go to $COMMON_TOP/admin/scripts/VIS_apps/ ./adautocfg.sh It will ask you APPS Password give APPS password.Wait for result.In My case it gives error,i checked log file then i come to know listener is not running on database.I started lsnrctl start again it gives error then again i checked logfile i got ORACLE error (ORA-25153: Temporary Tablespace is Empty) then i add datafile in temp tablespace as following. SQL> ALTER TABLESPACE TEMP ADD TEMPFILE '/u01/oracle/visdata/tmp1.dbf' SIZE 2000M REUSE AUTOEXTEND OFF; Tablespace altered. Now again i run adautocfg.sh,it runs successfully. 15) Run AutoConfig on Database tier logon Database tier user su - oracle cd $ORACLE_HOME/appsutil/scripts/VIS_apps/ ./adautocfg.sh It runs successfully. 16) Now start the application Tier logon su - applmgr cd $OAD_TOP/admin/scripts/VIS_apps/ ./adstrtal.sh apps/apps 17) Test the applications. http://host_name:port_no login as sysadmin/sysadmin_password. |
posted by Jaswinder Singh @ 10:06 PM |
|
|
|
|