Sei sulla pagina 1di 5

How to Change IP, Hostname, Domain and Ports of a single node Oracle E-Business Suite

with one comment Oracle E-Business Suite is not dependent to IP address, so one can easily change the IP address of nodes without any effect on E-Business Suite. What about Hostname, Domain and Ports? Oracle E-Business Suite is dependent to these. So, we couldnt change theme without coordination of E-Business Suite itself. There are two methods for changing Hostname, Domain and Ports of Oracle E-Business Suite. The first method, that will be discussed here, is using autoconfig and another method is by cloning. It is easier to use autoconfig method to change hostname, domain and ports and use cloning method for changing other configurations of Oracle EBusiness Suite. In this document we assume that our E-Business Suite has just one node so that all Tiers and Servers reside on this node. For changing hostname, domain and ports of a multinode Oracle E-Business Suite, refer to the documents listed in the refrences section of this post. 1. DB Tier: Deregister the current database server As the database hostname and domain will be changed, the current database server node needs to be de-registered.
SQL> select NAME, SERVER_TYPE from FND_APP_SERVERS, FND_NODES where FND_APP_SERVERS.NODE_ID = FND_NODES.NODE_ID and SERVER_TYPE='DB' and FND_NODES.NODE_NAME=UPPER('oldhost'); NAME SERVER_TYPE --------------- ----------oldhost_PROD_DB DB # cd $ORACLE_HOME/appsutil # perl ./bin/adgentns.pl appspass=<APPSpwd> contextfile=./PROD_oldhost.xml -removeserver SQL> select NAME, SERVER_TYPE from FND_APP_SERVERS, FND_NODES where FND_APP_SERVERS.NODE_ID = FND_NODES.NODE_ID and SERVER_TYPE='DB' and FND_NODES.NODE_NAME=UPPER('oldhost'); no rows selected

2. DB Tier: Create a new Context file You can create the new context file using whichever of the following methods: a. Manuall Method:
# cd $ORACLE_HOME/appsutil # cp PROD_oldhost.xml PROD_newhost.xml

Edit PROD_newhost.xml manually:

Replace all oldhost with newhost Replace all olddomain with newdomain b. Script Method:
# cd $ORACLE_HOME/appsutil # perl ./bin/adclonectx.pl contextfile=./PROD_oldhost.xml Provide the values required for creation of the new Database Context file. Do you want to use a virtual hostname for the target node (y/n) [n] ?: Target hostname [oldhost]:newhost Target System database name [PROD]: Target instance is a Real Application Cluster (RAC) instance (y/n) [n]: Target system domain name [olddomain]:newdomain Oracle OS User [oraprod]: Oracle OS Group [dba]: Target system RDBMS ORACLE_HOME directory [/gldb/apps/d02/oracle/proddb/9.2.0]: Target system utl_file accessible directories list [/usr/tmp]: Number of DATA_TOP's on the target system [4]:1 Target system DATA_TOP 1:/gldb/apps/d03/oracle/proddata Do you want to preserve the Display set to oldhost:0.0 (y/n) [y] ?:n Target system Display [newhost:0.0]: Target system JAVA_TOP location [null]:/gldb/apps/d01/oracle/prodcomn/java Do you want to preserve the port values from the source system on the target system (y/n) [y] ?: Database port is 1521 New context path and file name [PROD_newhost.xml]: Creating the new Database Context file from : /gldb/apps/d02/oracle/proddb/9.2.0/appsutil/template/adxdbctx.tmp The new database context file has been created : /gldb/apps/d02/oracle/proddb/9.2.0/appsutil/PROD_newhost.xml

Note: The command above will create a new Context file of the format PROD_newhost.xml in the current working directory. 3. APPS Tier: Deregister the current Applications server As the Applications hostname and domain will be changed, the current Applications server node needs to be de-registered.
SQL> select NAME, SERVER_TYPE from FND_APP_SERVERS, FND_NODES where FND_APP_SERVERS.NODE_ID = FND_NODES.NODE_ID and SERVER_TYPE='APPS' and FND_NODES.NODE_NAME=UPPER('oldhost'); NAME SERVER_TYP ----------------- ---------oldhost_PROD_APPS APPS # cd $APPL_TOP/admin # perl $AD_TOP/bin/adgentns.pl appspass=<APPSpwd> contextfile=./PROD_oldhost.xml -removeserver SQL> select NAME, SERVER_TYPE from FND_APP_SERVERS, FND_NODES where FND_APP_SERVERS.NODE_ID = FND_NODES.NODE_ID and SERVER_TYPE='APPS' and FND_NODES.NODE_NAME=UPPER('oldhost'); no rows selected

4. APPS Tier: Create a new Context file You can create the new context file using whichever of the following methods: a. Manuall Method:
# cd $APPL_TOP/admin # cp PROD_oldhost.xml PROD_newhost.xml

Edit PROD_newhost.xml manually: Replace all oldhost with newhost Replace all olddomain with newdomain b. Script Method:
# cd $APPL_TOP/admin # perl $AD_TOP/bin/adclonectx.pl contextfile=./PROD_oldhost.xml Provide the values required for creation of the new APPL_TOP Context file. Do you want to use a virtual hostname for the target node (y/n) [n] ?: Target hostname [oldhost]:newhost Target system database SID [PROD]: Target system domain name [olddomain]:newdomain Username for the applications file system owner [applprod]: Group for the applications file system owner [dba]: Target system database server node [oldhost]:newhost Does the target system have more than one application tier server node (y/n) [n] ?: Is the target system APPL_TOP divided into multiple mount points(y/n)[n]?: Target system APPL_TOP mount point [/gldb/apps/d01/oracle/prodappl]: Target system COMMON_TOP directory [/gldb/apps/d01/oracle/prodcomn]: Target system 8.0.6 ORACLE_HOME directory [/gldb/apps/d01/oracle/prodora/8.0.6]: Target system iAS ORACLE_HOME directory [/gldb/apps/d01/oracle/prodora/iAS]: Do you want to preserve the Display set to oldhost:0.0 (y/n) [y] ?:n Target system Display [newhost:0.0]: Location of JDK 1.3.1 on the target system [/usr/java14]: Do you want to preserve the port values from the source system on the target system (y/n) [y] ?: Web Listener port is 8000 Complete port information available at /gldb/apps/d01/oracle/prodappl/admin/out/PROD_newhost/portpool.lst New context path and file name [PROD_newhost.xml]: Creating the new APPL_TOP Context file from : /gldb/apps/d01/oracle/prodappl/ad/11.5.0/admin/template/adxmlctx.tmp The new APPL_TOP context file has been created : /gldb/apps/d01/oracle/prodappl/admin/PROD_newhost.xml

Note: The command above will create a new Context file of the format PROD_newhost.xml in the current working directory. 5. APPS Tier: Shutdown the Application Tier Services

# $COMMON_TOP/admin/scripts/PROD_oldhost/adstpall.sh apps/<appspasswd>

6. Change the hostname and domain Change the hostname and domain at OS level.
# hostname -s newhost # edit /etc/hosts as follow: OLD: IP-Address oldhost.olddomain NEW: IP-Address newhost.newdomain

oldhost newhost

7. DB Tier: Reseed the Net Services Topology Model


# cd $ORACLE_HOME/appsutil # ./bin/adconfig.sh contextfile=./PROD_newhost.xml

8. APPS Tier: Reseed the Net Services Topology Model The Net Services Topology Model is automatically updated by running AutoConfig.
# $AD_TOP/bin/adconfig.sh contextfile=$APPL_TOP/admin/PROD_newhost.xml appspass=<appspasswd>

9. DB Tier: Shutdown the database and listener


# $ORACLE_HOME/appsutil/scripts/PROD_oldhost/addbctl.sh stop # $ORACLE_HOME/appsutil/scripts/PROD_oldhost/addlnctl.sh stop PROD

10. DB Tier: Start the listener and database


# $ORACLE_HOME/appsutil/scripts/PROD_newhost/addlnctl.sh start PROD # $ORACLE_HOME/appsutil/scripts/PROD_newhost/addbctl.sh start

11. APPS Tier: Start the Application Tier Services


# $COMMON_TOP/admin/scripts/PROD_newhost/adstrtal.sh apps/<appspasswd>

Notes: 1. Q: Do you encounter the following errors when you start the listener?
Error listening on: (ADDRESS=(PROTOCOL=TCP)(Host=newhost)(Port=1521)) TNS-12532: TNS:invalid argument TNS-12560: TNS:protocol adapter error TNS-00502: Invalid argument IBM/AIX RISC System/6000 Error: 515: Error 515 occurred.

A: Check $ORACLE_HOME/network/admin/PROD_newhost/sqlnet.ora to insure it is using new values:


OLD: tcp.invited_nodes=(oldhost.olddomain, newhost.newdomain) NEW: tcp.invited_nodes=(newhost.newdomain)

2. Q: Do you encounter the following errors in Jinitiator console when you try to start form applications?
java.lang.NoClassDefFoundError: org/apache/regexp/RESyntaxException at oracle.ewt.lwAWT.lwText.LWTextField.getText(LWTextField.java:196) at oracle.ewt.lwAWT.lwText.LWTextField._getDisplayString(LWTextField.java :787)

A: Check $OA_HTML/bin/appsweb_PROD_newhost.cfg for the value of archive2. It should be as follow:


archive2=,/OA_JAVA/regexp.jar

3. Q: Do you encounter the following errors in Jinitiator console when you try to start form applications?
java.lang.Error: RE internal error: Corrupt program at org.apache.regexp.RE.internalError(RE.java:820) at org.apache.regexp.RE.matchNodes(RE.java:1414)

A: Made the following change:


# cd $JAVA_TOP # mv org org.back

References: 1. How to change the hostname of an Applications Tier using AutoConfig [Metalink 341322.1] 2. How to change the hostname and/or port of the Database Tier using AutoConfig [Metalink 338003.1]

Potrebbero piacerti anche