Académique Documents
Professionnel Documents
Culture Documents
Author
Gnanasambandam,
Swaminathan
Ben Wright
Ben Wright
Ben Wright
Comments
Initial Draft
Tidy up and create script out
of instructions
Addition of extra stuff for
configuration
Read through tidy up and
check
Introduction
This document goes through the configuration of an AIX Server for installing Oracle
RAC.
It first goes through the User Requirements for the Oracle Cluster and Oracle User
and then goes through some best practises identified by the RAC Assurance Team
relevant to AIX specific RAC implementations.
The link below provides a base point for the rest of the document.
http://download.oracle.com/docs/cd/B28359_01/install.111/b28258/preaix.htm#BAB
FDGHJ
The server containing these scripts is sinupe02.infra.go2uti.com (10.240.12.103) and
they are located in /data/software/scripts/admin/aix/oracle.
This can be mounted by issuing the commands:
mkdir /tmp/net
mount 10.240.12.103:/data/software /tmp/net
The following software should be installed:
The following software packs should be installed on the server.
bos.adt.base
bos.adt.lib
bos.adt.libm
bos.perf.libperfstat
bos.perf.perfstat
bos.perf.proctools
rsct.basic.rte
rsct.compat.clients.rte
Ben Wright
bwright@go2uti.com
27/01/2015
27/01/2015
the group dba will OSDBA(Database DBA),the group asm will be(asmdba),the group
crs will be crs
The plan is to have separate oracle_base for Clusterware and owned by crs
user.The asm and db will share the same oracle_base but separate oracle_home.
Note: Edit .profile of the oracle, asm and crs users
.profile must be contains the following entries and remaining lines should be
commented before installing softwares
Umask 022
TMP, TMPDIR location and export the same
ORACLE_BASE
AIXTHREAD_SCOPE=S
After installation complete uncomment all the entries and add required entries.
The Groups and Users can be created using the following script:
AIX-Unix-Ora-RAC-User-Create.sh
The scripts should perform all the tasks required by the documentation any
additional changes should be reviewed and added below (preference is to modify the
script for future rollouts).
After the above script has been run the /etc/security/limits file needs to be modified so
that the default is set to:
Ben Wright
bwright@go2uti.com
27/01/2015
default:
fsize = -1
core = -1
cpu = -1
data = 512000
rss = 512000
stack = 512000
nofiles = 2000
To set the Maximum Number of User Processes to 2176 or above
To set the System Block Size Allocation to 128 or above
Then run the script AIX-Set-Limits.sh
Tune Virtual Memory Parameters
The Virtual Memory Parameters can be set by running the script:
AIX-Set-VMM.sh
This will tune the following Virtual Memory Parameters:
minperm%=3
maxperm%=90
maxclient%-90
lru_file_repage=0
strict_maxperm=0
strict_maxclient=1
page_steal_method=1
And set the AIXTHREAD_SCOPE value to S in the /etc/environment file
And to disable the Processor Folding for Oracle Environments (vpm_xvcpus=-1)
Network requirements
Network parameters on the server need to be adjusted to improve the performance of
the Oracle Cluster. Run the script:
AIX-Set-NetworkParam.sh
This will set the following network parameters:
udp_sendspace=65536
udp_recvspace=655360
tcp_sendspace=65536
tcp_recvspace=65536
rfc1323=1
sb_max=2*655360
ipqmaxlen=512
$ ./rda.sh -T hcve
Ben Wright
bwright@go2uti.com
27/01/2015
27/01/2015
IP Address Requirements
Before starting the installation, fill in the table below for the Oracle DBAs (below is
an example from the Test RAC Installation.
Node Name
Sinutn02
Interface
Name
Sinutn02
Ben Wright
bwright@go2uti.com
Type
IP Address
Public
10.240.8.117
Registered
in
DNS
Device
En?
6
27/01/2015
Sinutn02vip
Sinutn02priv
Sinutn03
Sinutn03vip
Sinutn03priv
Sinutn02vip
Sinutn02priv
Sinutn03
Sinutn03vip
Sinutn03priv
Public
10.240.8.201
DNS
En?
Private
10.240.14.117 Hosts
En?
Public
Public
10.240.8.125
10.240.8.202
DNS
DNS
En?
En?
Private
10.240.14.12
5
Hosts
En?
Notes:
Oracle recommends that you use private network IP addresses for these interfaces (for
example: 10.*.*.* or 192.168.*.*). Use the /etc/hosts file on each node to associate
private network names with private IP addresses.
A useful command to see the Network Interfaces and their IP Addresses use:
# netstat -i
Note: /etc/hosts file entries should be like the following example
Cat /etc/hosts
127.0.0.1
10.240.8.130
10.240.8.210
10.240.14.130
10.240.8.131
10.240.8.211
loopback localhost
sinuqn01.qc.go2uti.com
sinuqn01-vip.qc.go2uti.com
sinuqn01-priv.qc.go2uti.com
sinuqn02.qc.go2uti.com
sinuqn02-vip.qc.go2uti.com
Ben Wright
bwright@go2uti.com
sinuqn01
sinuqn01-vip
sinuqn01-priv
sinuqn02
sinuqn02-vip
7
27/01/2015
10.240.14.131
sinuqn02-priv.qc.go2uti.com
sinuqn02-priv
27/01/2015
OCR:
chown root:oinstall /dev/rdsk/ora_ocr_raw
chmod 640 /dev/rdsk/ora_ocr_raw
Oracle Clusterware voting disk:
chown oracle:dba /dev/rdsk/ora_vote_raw
chmod 660 /dev/rdsk/ora_vote_raw
ASM disks:
Chown asm:dba /dev/emcasm00N
Chmod 660 /dev/emcasm00N
Enter a command similar to the following to verify that you have created the new
device file successfully:
ls -alF /dev/rdsk | grep "24,8192"
The output should be similar to the following:
brw------- 1 root system 24,8192 Dec 05 2001 /dev/hdiskn
crw-r----- 1 root oinstall 24,8192 Dec 05 2001 /dev/ora_ocr_raw
crw------- 1 root system 24,8192 Dec 05 2001 /dev/rhdiskn
To enable simultaneous access to a disk device from multiple nodes, you must set the
appropriate Object Data Manager (ODM) attribute, depending on the type of reserve
attribute used by your disks. The following section describes how to perform this task
using hdisk logical names. Refer to your operating system documentation to find
logical device names.
To determine the reserve setting your disks use, enter the following command,
where n is the hdisk device number:
lsattr -E -l hdiskn | grep reserve_
The response is either a reserve_lock setting, or a reserve_policy setting.
If the attribute is reserve_lock, then ensure that the setting is reserve_lock = no.
If the attribute is reserve_policy, then ensure that the setting is reserve_policy =
no_reserve.
If necessary, change the setting with the chdev command using the following syntax,
where n is the hdisk device number:
chdev -l hdiskn -a [ reserve_lock=no | reserve_policy=no_reserve ]
For example, to change a setting for the
device hdisk4 from reserve_lock=yes to reserve_lock=no, enter the following
command:
# chdev -l hdisk4 -a reserve_lock=no
To verify that the setting is correct on all disk devices, enter the following command:
# lsattr -El hdiskn | grep reserve
Ben Wright
bwright@go2uti.com
27/01/2015
Enter commands similar to the following on any node to clear the PVID from
each disk device that you want to use:
# chdev -l hdiskn -a pv=clear
When you are installing Oracle Clusterware, you must enter the paths to the
appropriate device files when prompted for the path of the OCR and Oracle
Clusterware voting disk, for example:
/dev/rdsk/ora_vot_raw
/dev/rdsk/ora_crs_raw
For DATA & LOG Disk group change the ownership of alias that has been created for
this to asm:oinstall
Ourcase
Emcasm001
Emcasm002
Note: Both oracle voting and cluster disks are must have the following owner and
permissions
/dev/ora_vot_raw oracle:dba
/dev/ora_ocr_raw root:dba
And for ASM disk owner should be like asm:dba
Configuring SSH on Cluster Member Nodes
To configure SSH, you must first create RSA or DSA keys on each cluster node, and
then copy all the keys generated on all cluster node members into an authorized keys
file that is identical on each node. Note that the SSH files must be readable only by
root and by the software installation user (oracle, crs, asm), as SSH ignores a private
key file if it is accessible by others. When this is done, then start the SSH agent to
load keys into memory. In the examples that follow, the RSA key is used.
You must configure SSH separately for each Oracle software installation owner that
you intend to use for installation.
To configure SSH, complete the following:
Create .SSH, and Create RSA Keys On Each Node
Complete the following steps on each node:
1. Log in as the software owner (in this example, the crs user).
2. To ensure that you are logged in as the Oracle user, and that the user ID
matches the expected user ID you have assigned to the Oracle user, enter the
commands id and id oracle. Ensure that Oracle user group and user and the
terminal window process group and user IDs are identical. For example:
3. $ id
4. uid=502(crs) gid=501(oinstall) groups=501(oinstall),502(crs)
5. $ id crs
6. uid=502(crs) gid=501(oinstall) groups=501(oinstall),502(crs)
Ben Wright
bwright@go2uti.com
10
27/01/2015
7. If necessary, create the .ssh directory in the crs user's home directory, and set
permissions on it to ensure that only the oracle user has read and write
permissions:
8. $ mkdir ~/.ssh
9. $ chmod 700 ~/.ssh
10. Enter the following command:
11. $ /usr/bin/ssh-keygen -t rsa
12. Important : ssh users home directory permisson must be 750.
At the prompts:
o Accept the default location for the key file (press Enter).
o Enter and confirm a pass phrase unique for this installation user.
This command writes the RSA public key to the ~/.ssh/id_rsa.pub file and the private
key to the ~/.ssh/id_rsa file.
Never distribute the private key to anyone not authorized to perform Oracle software
installations.
13. Repeat steps 1 through 4 on each node that you intend to make a member of
the cluster.
13.Repeat the steps for asm & oracle user.
Add All Keys to a Common authorized_keys File
Complete the following steps:
1. On the local node, change directories to the .ssh directory in the Oracle
Clusterware owner's home directory (typically, either crs or oracle).
Then, add the RSA key to the authorized_keys file using the following commands:
$ cat id_rsa.pub >> authorized_keys
$ ls
In the .ssh directory, you should see the id_rsa.pub keys that you have created, and the
file authorized_keys.
2. On the local node, use SCP (Secure Copy) or SFTP (Secure FTP) to copy
the authorized_keys file to the oracle user .ssh directory on a remote node. The
following example is with SCP, on a node called node2, with the Oracle
Clusterware owner crs, where the crs user path is /home/crs:
3. [crs@node1 .ssh]$ scp authorized_keys node2:/home/crs/.ssh/
You are prompted to accept an RSA key. Enter Yes, and you see that the node you are
copying to is added to the known_hosts file.
When prompted, provide the password for the crs user, which should be the same on
all nodes in the cluster. The authorized_keys file is copied to the remote node.
Your output should be similar to the following, where xxx represents parts of a valid
IP address:
[crs@node1 .ssh]$ scp authorized_keys node2:/home/crs/.ssh/
The authenticity of host 'node2 (xxx.xxx.173.152) can't be established.
RSA key fingerprint is 7e:60:60:ae:40:40:d1:a6:f7:4e:zz:me:a7:48:ae:f6:7e.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'node1,xxx.xxx.173.152' (RSA) to the list
of known hosts
crs@node2's password:
authorized_keys
100%
828
7.5MB/s
00:00
Ben Wright
bwright@go2uti.com
11
27/01/2015
4. Using SSH, log in to the node where you copied the authorized_keys file,
using the pass phrase you created. Then change to the .ssh directory, and using
the cat command, add the RSA keys for the second node to
the authorized_keys file:
5. [crs@node1 .ssh]$ ssh node2
6. The authenticity of host node2 (xxx.xxx.100.102) can't be established. RSA
key fingerprint is z3:z3:33:z3:z3:33:zz:76:z3:z3:z3.
7. Are you sure you want to continue connecting? (yes/no)? yes
8. Enter passphrase for key '/opt/oracle/.ssh/id_rsa':
9. [crs@node2 crs]$ cd .ssh
10. [crs@node2 ssh]$ cat id_rsa.pub >> authorized_keys
11. Make the authorized_keys permission to 600
Repeat steps 2 and 3 from each node to each other member node in the cluster.
When you have added keys from each cluster node member to
the authorized_keys file on the last node you want to have as a cluster node member,
then use scp to copy theauthorized_keys file with the keys from all nodes back to each
cluster node member, overwriting the existing version on the other nodes.
If you want to confirm that you have all nodes in the authorized_keys file, enter the
command more authorized_keys, and check to see that there is an RSA key for each
member node. The file lists the type of key (ssh-rsa), followed by the key, and then
followed by the user and server. For example:
ssh-rsa AAAABBBB . . . = crs@node1
Note:
The crs user's /.ssh/authorized_keys file on every node must contain the contents from
all of the /.ssh/id_rsa.pub files that you generated on all cluster nodes.
After you have copied the authorized_keys file that contains all keys to each node in
the cluster, complete the following procedure, in the order listed. In this example, the
Oracle Clusterware software owner is named crs:
1. On the system where you want to run OUI, log in as the crs user.
2. Use the following command syntax, where hostname1, hostname2, and so on,
are the public hostnames (alias and fully qualified domain name) of nodes in
the cluster to run SSH from the local node to each node, including from the
local node to itself, and from each node to each other node:
3. On each node, enter the following commands to start the SSH agent, and to load
the SSH keys into memory:
$ exec /usr/bin/ssh-agent $SHELL
$ /usr/bin/ssh-add
At the prompt, enter the pass phrase for each key that you generated.
For example:
[crs@node1 .ssh]$ exec /usr/bin/ssh-agent $SHELL
[crs@node1 .ssh]$ ssh-add
Enter passphrase for /home/crs/.ssh/id_rsa
Identity added: /home/crs/.ssh/id_rsa (/home/crs/.ssh/id_rsa)
These commands start the ssh-agent on the node, and load the RSA keys into
memory so that you are not prompted to use pass phrases when issuing SSH
commands
If you have configured SSH correctly, then you can now use the ssh or scp commands
without being prompted for a password or a pass phrase. For example:
Ben Wright
bwright@go2uti.com
12
27/01/2015
13
27/01/2015
Ben Wright
bwright@go2uti.com
14
27/01/2015
export ORACLE_BASE=/opt/app/crs/product
export AIXTHREAD_SCOPE=S #(S for system-wide thread scope)
export TEMP=/tmp//tmpexport
TMP=/tmp
export TMPDIR=/tmp
umask 022
if [ -t 0 ]; then
stty intr ^C
fi
Give the inventory location as /opt/app/crs/product/orainventory
This orainventory directory will be created by oui
export CRS_HOME=/crs/11.1.0
export ORACLE_CRS_HOME=$CRS_HOME
export ORACLE_HOME=$ORA_CRS_HOME
export LD_LIBRARY_PATH=$CRS_HOME/lib:$CRS_HOME/lib32
export LIBPATH=$LD_LIBRARY_PATH
export PATH=$CRS_HOME/bin:$PATH
Notes Specify Home Details
Specify an ORACLE_HOME name and destination directory for the CRS installation.
The destination directory should not be within the $ORACLE_BASE subtree.
Next we will install the Oracle Clusterware layer.
Oracle Clusterware is an essential component of the Oracle RAC database
infrastructure.
Oracle Clusterware does not require any other clustering software.
Oracle Clusterware will be installed in /crs/11.1.0 ($CRS_HOME,
$ORA_CRS_HOME) on each node.
But we have used
/opt/app/crs/product/11.1.0/crs as crs_home
You may install the clusterware where you please with these exceptions.
Do not install the clusterware in a directory which is sub-directory of either the
intended install location
for ASM or the Database.
Ben Wright
bwright@go2uti.com
15
27/01/2015
Failure to observe this rule could well mean that other people when removing an ASM
or Oracle home will
destroy your clusterware installation.
Vipca called maulally and OS bug issue solved by oracle by changing the racgvip
script
Modify the script "racgvip" in <CRS-HOME>/bin to pick up the value of the 6th
column ($6) instead of the 5th column ($5) - replace $5 with $6 Clusterware script
"racgvip" lines #263 and #275;
from
_O1=`$NETSTAT -n -I $_IF | $AWK "{ if (/^$_IF/) {print \\$5; exit}}"`
and
_O2=`$NETSTAT -n -I $_IF | $AWK "{ if (/^$_IF/) {print \\$5; exit}}"`
to
_O1=`$NETSTAT -n -I $_IF | $AWK "{ if (/^$_IF/) {print \\$6; exit}}"`
and
_O2=`$NETSTAT -n -I $_IF | $AWK "{ if (/^$_IF/) {print \\$6; exit}}"`
Install patch 11.1.0.7
/tmp/net/oracle/5L/11G/cluster_11gr1/clusterware/runclufy stage -post crsinst -n
sinutn02
$ exec /usr/bin/ssh-agent $SHELL
$ /usr/bin/ssh-add
6.1. CVU check before creating ASM instance
Verify the cluster is configured correctly for an instance creation,as asm user
/tmp/net/oracle/5L/11G/cluster_11gr1/clusterware/runclufy stage -pre dbinst -n
node1,node2 -r 11gR1 -verbose
Show CVU -pre dbinst output Hide CVU output
6. Oracle ASM Home Software Install
In this chapter we are going to install the asm software (only). Creating the asm
storage is in the next chapter.
The software will be installed in a directory separate from any crs or database home,
preferably in the $ORACLE_BASE tree and not as a subtree in the database home.
Create group Asm for asm user
Create a asm user - primary group is oinstall and secondary group is asm & asmdba
Ben Wright
bwright@go2uti.com
16
27/01/2015
17
27/01/2015
ENV=$HOME/.kshrc
export ENV
#The following line is added by License Use Management installation
export PATH=$PATH:/usr/opt/ifor/ls/os/aix/bin
export PATH=$PATH:/usr/java14/bin
export MANPATH=$MANPATH:/usr/local/man
export ORACLE_BASE=/opt/app/oracle
export AIXTHREAD_SCOPE=S
export TEMP=/tmp
export TMP=/tmp
export TMPDIR=/tmp
umask 022
export CRS_HOME=/opt/app/crs/product/11.1.0/crs
#note for future installation limit the home to 11.1.0
export ORACLE_CRS_HOME=$CRS_HOME
export ORACLE_HOME=$ORACLE_BASE/asm/product/11.1.0/asm
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$CRS_HOME/lib:
$ORACLE_HOME/lib32:$CRS_HOME/export LIBPATH=$LD_LIBRARY_PATH
export PATH=$ORACLE_HOME/bin:$CRS_HOME/bin:$PATH
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORACLE_SID=+ASM1
similarly in other nodes.note change the sid accordinly.
reload profile
8. Oracle RAC Database Listener Creation
The Oracle network listeners traditionally run from the ASM home. Here we are
going to create the listeners
using netca from the ASM home.
8.1. Create Node specific network listeners
As asm user.
Before you start the Oracle Universal Installer you need to execute the following
command in the same session as in which you will start the OUI.
On the system where you want to install the software log in as the user oracle.
Enter the following commands:
$ exec /usr/bin/ssh-agent $SHELL
$ /usr/bin/ssh-add
After the prompt you need to add the passphrase for each key you generated.
As we have not given passphrase during ssh generation you need not enter any thing.
Just press enter you will get the message that identity added.
Ben Wright
bwright@go2uti.com
18
27/01/2015
Now you must be able to create a ssh connection without being prompted for a
password
Test this before you start the OUI.
$ssh nodename date
If you don't get prompted for a password your ssh is working correctly.
cd $ORACLE_HOME/bin asms oracle home
./netca a
Note: Check if both the nodes listeners are up and running fine or not. If not then add
listener which is not running by using srvctl and start the same.
Call dbca from ASMs oracle_home for ASM Instance installation.
As asm user
cd $ORACLE_HOME/bin asms oracle home.
./dbca
Ben Wright
bwright@go2uti.com
19
27/01/2015
export CRS_HOME=/opt/app/crs/product/11.1.0/crs
#note for future installation limit the home to 11.1.0
export ORACLE_CRS_HOME=$CRS_HOME
#export ORACLE_HOME=$ORACLE_BASE/11.1.0/asm
export PATH=$CRS_HOME/bin:$PATH
#export TNS_ADMIN=/opt/app/oracle/product/11.1.0/asm/network/admin
As a oracle user give crs_stat see asm,listener are running
./runcluvfy.sh stage -pre dbinst -n sinutn02 -r 10gR2 -verbose
Run /tmp/net/oracle/5L/10G/extra/p6613550_10203_AIX64-5L/rootpre.sh
/tmp/net/oracle/5L/10G/rmdb_10gr2/Disk./runinstaller
Choose enterprise edition
In the specify home details
20
27/01/2015
We are nearly ready to use the Database Configuration Assistant (dbca) to create the
Oracle RAC instances on
all the nodes.
MANDATORY: Change permissions to allow the rdbms user to write to directories
owned by the asm user,
from node1 execute:
# chmod -R g+w /oracle/asm/11.1.0/network
# chmod -R g+w /oracle/cfgtoollogs
# chmod -R g+w /oracle/admin
# chmod -R g+w /oracle/diag
# rsh node2 chmod -R g+w /oracle/asm/11.1.0/network
# rsh node2 chmod -R g+w /oracle/cfgtoollogs
# rsh node2 chmod -R g+w /oracle/admin
# rsh node2 chmod -R g+w /oracle/diag
For our case use the below.
$ chmod -R g+w /opt/oracle/product/11.1.0/asm/network
$ ssh sinuqn02 chmod -R g+w /opt/oracle/product/11.1.0/asm/network
chmod -R g+w /opt/oracle/product/diag
ssh sinuqn02 chmod -R g+w /opt/oracle/product/diag
chmod -R g+w /opt/oracle/product/admin
ssh sinuqn02 chmod -R g+w /opt/oracle/product/admin
Note: If you executed the CVU -pre dbinst command during the ASM instance
installation, you do
not have the execute the command again.
10.2. Database Software Install
On each node
Run the AIX command "/usr/sbin/slibclean" as "root" to clean all unreferenced
libraries from memory.
{node1:root}/ # /usr/sbin/slibclean
{node2:root}/ # /usr/sbin/slibclean
9.1. Verify ASM instances are online
As rdbms user from node1 :
{node1:rdbms} $CRS_HOME/bin/crs_stat -t
Name Type Target State Host
-----------------------------------------------------------ora....SM1.asm application ONLINE ONLINE node1
ora....E1.lsnr application ONLINE ONLINE node1
ora.node1.gsd application ONLINE ONLINE node1
ora.node1.ons application ONLINE ONLINE node1
ora.node1.vip application ONLINE ONLINE node1
Ben Wright
bwright@go2uti.com
21
27/01/2015
22
27/01/2015
DB Name
1
2
SINOQ01
SINOQ02
Service
Name
SINO_Q01
SINO_Q02
Server Name
IP address
Port Number
sinuqn01-vip
sinuqn02-vip
10.240.8.210
10.240.8.211
1521
1521
How to Connect
a) Using TNS entry:
For to connect SINOQ01 Database
SINO_Q01 =
(DESCRIPTION =
(ADDRESSLIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = sinuqn01-vip)(PORT = 1521)
(ADDRESS = (PROTOCOL = TCP)(HOST = sinuqn02-vip)(PORT = 1521)))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = SINO_Q01.qc.go2uti.com)
(FAILOVER_MODE =
(TYPE = SELECT)
(METHOD = BASIC)
Ben Wright
bwright@go2uti.com
23
27/01/2015
(RETRIES = 180)
(DELAY = 5)
)
)
)
For example
sqlplus DDMYUTIOWNER/xxxx@SINO_Q01
DDMYUTIOWNER/xxxx@sinuqn01-
url="jdbc:oracle:thin:@(description=
(load_balance = off)
(ADDRESSLIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = sinuqn02-vip)(PORT = 1521)
(ADDRESS = (PROTOCOL = TCP)(HOST = sinuqn01-vip)(PORT = 1521)))
(connect_data = (service_name = SINO_Q01.qc.go2uti.com)))"
For to connect SINOQ02 database
sqlplus lportal/xxxx@sinuqn02-vip:1521/SINO_Q02.qc.go2uti.com
Ben Wright
bwright@go2uti.com
24
27/01/2015
url="jdbc:oracle:thin:@(description=
(load_balance = off)
(ADDRESSLIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =sinuqn02-vip)(PORT=1521)
(ADDRESS = (PROTOCOL = TCP)(HOST = sinuqn01-vip)(PORT = 1521)))
(connect_data = (service_name = SINO_Q02.qc.go2uti.com)))"
Ben Wright
bwright@go2uti.com
25