• Due to some reason, cluster interconnect is using TCP/IP protocol. How can I change the interconnect protocol to UDP protocol?
    Post By: admin

To change the interconnect protocol you need to shut down all Oracle databases and relink the binaries using the following command:

make -f ins_rdbms.mk rac_on ipc_udp ioracl

The alert log can be verified to check whether the right interconnect is used. The following is reported in the alert log if the UDP is used as interconnect protocol

cluster interconnect IPC version:Oracle UDP/IPIPC Vendor 1 proto 2 Version 1.0 

 

  • I have 2 node Oracle RAC 10.2.0.3 on Solaris 10. Each node is running VIPs. Is there a way to fail over the VIP to certain node in case of failure? For instance if Node 1 goes down can I specify that the VIP will always fail to node2 next?
    Post By: admin

It is not suggested and supported to change the properties and behavior of cluster resources starting with ora* in Oracle Real Application Cluster environment. But if you want to try this on application VIP then follow the steps given below:

  • Get the name of the application VIP resource you want to update. eg ebr_vip and stop the resource.
  • create the profile using command

crs_stat -p ebr_vip > $HOME/ebr_vip.ca

  • Update the value of HOSTING_MEMBERS parameter in the .cap file. Most probably it will have node1 in the value.
  • Include node2 in the HOSTING_MEMBERS parameter separated by , eg. HOSTIMG_MEMBERS=node1,node2
  • Update parameter PLACEMENT=favored in the .cap file.
  • Execute command
crs_register ebr_vip -dir -u

The above command will update the resource and next time VIP will failover to the node you have configured in HOSTING_MEMBERS.

 

  • How failover/failback happens when configuring CLUSTER_INTERCONNECTS parameter with multiple network interfaces in Oracle Real Application Cluster without binding the multiple network interfaces? What is the suggested approach to use the multiple network
    Post By: admin

The best approach to use redundant NICs for interconnect is to bind them using available technology such as IPMP, teaming etc. You can configure failover using these technologies as well. Configure one private IP on these redundant NIC and define that IP in CLUSTER_INTERCONNETS parameter. This approach will allow to utilize the bandwidth of both physical interfaces as well as survive the failure of one physical interface also. If you are setting CLUSTER_INTERCONNECTS parameter without binding the physical interfaces then CLUSTER_INTERCONNECTS initialization parameter requires the IP address . It enables you to specify multiple IP addresses, separated by colons. Oracle RAC network traffic is distributed between the specified IP addresses. In this case no failover or failback is available. It only distribute the traffic among interconnects listed in CLUSTER_INTERCONNECTS.

  • What are the pros/cons of using separate software owners for different components of Oracle Grid Computing environment such as ASM, Oracle Clusterware and RDBMS?
    Post By: admin

The objective of having separate software owner is to separate and restrict the privileges based on the job role. For example in big organizations, sysadmin looks after the CRS (because ideally it is a clustering solution rather than a database solution) and should not have access to the Oracle database or Oracle ASM software. Same theory with Oracle ASM software, if you want to separate the duties and privileges of Oracle DBA and storage administrator (managing the storage (ASM) of the database as well), you should create a separate group and software owner for Oracle ASM. By default 'dba' is the OSASM group and Oracle database software owner 'oracle' will have all the privileges to ASM instance, which storage administrator may not like to share because he is responsible for this role. By using separate software owner or groups, you will have liberty to add Oracle database software owner as a member for other groups such as asmdba any time in future and Oracle DBA can access the other components as well.

  • What is difference between Oracle 10g Grid Computing and Oracle 10g EM Grid Control?
    Post By: admin

Grid Computing is a concept that can be implemented using the technology framework provided by Oracle Real Application Cluster 10g, Oracle 10g Services and Oracle ASM. It depends how you implement this to achieve the maximum benefits of the Oracle Grid Computing environment. If you have configured a cluster database with at least two instances running on servers 'A' and 'B' then you can configure Oracle 10g services for different scenarios as given below:

  1. You can manually relocate the service to server 'B' if service is configured to run on 'B' as well
  2. You can configure server side threshold on the services. This is called workload management. Read Oracle Net Service Administrator guide available on OTN for detail information on Oracle 10g services.

If you are keen to learn more about Oracle Grid Computing then read articles about Project MegaGrid at http://www.dell.com/content/topics/global.aspx/alliances/en/megagrid?c=u...

 

  • How does Oracle Clusterware 10g determine which database instance to run on which cluster node?
    Post By: admin

Mapping of the database instance to a particular cluster node is defined in the Oracle cluster resource of instance type. Depending upon the preferred node for the resource, CRS start that resource on that respective node. To extract detailed definition of crs resource, you can use

crs_stat -p resource name > $HOME/resourcename.profile

You can list the resources defined by using crs_stat command and resources having 'inst' in their name are the database instance type resources. Below is sample of ORCL1 cluster database instance resource from node1:

NAME=ora.ORCL.ORCL1.inst 
TYPE=application 
ACTION_SCRIPT=/u01/app/oracle/product/10.2.0/db_1/bin/racgwrap 
ACTIVE_PLACEMENT=0 
AUTO_START=1 
CHECK_INTERVAL=600
 DESCRIPTION=CRS application for Instance 
FAILOVER_DELAY=0
 FAILURE_INTERVAL=0 
FAILURE_THRESHOLD=0
 HOSTING_MEMBERS=node1 ....................truncated rest of the text

In above sample output, ORCL1 database instance is meant to run on the node listed in HOSTING_MEMBERS hence mapped to node1. You can also use the SRVCTL to update the Oracle Cluster Registry (OCR) file to tell Oracle Clusterware about the location of Oracle database instance and the ORACLE_HOME for the database instance as shown below.

srvctl add instance -d -i -n

When you modify the location of the Oracle database instances within the cluster, you use the SRVCTL to update the Oracle Cluster Registry hence the underlying Oracle Cluster Resource.

 

  • How to identify the specification of the Oracle interconnect in the configured Oracle Real Application environment?
    Post By: admin

There are mainly two hardware components involved while talking about Oracle cluster private interconnect. One is Network Interface Card on the cluster node and the Network Switch (Typically Gigabit Switch) connecting all the cluster nodes within the cluster. You can identify the private network interface card on the machine by running the

oifcfg iflist

command. Once you know the private interconnect interface, ethtool command on linux can extract detail information about interface such as speed, duplex mode etc. On Solaris, you can use any of the following command.

netstat -k 
ndd -get link_speed 
ndd -get link_mode

As I said above that there are two hardware components involved in cluster interconnect. To know the specification of Network Switch, you may need to contact your network administrator.

 

  • How to check if whither jumbo frames are enabled or not for private network interface?
    Post By: admin

As a super user run the 'ifconfig -a' command on the machine where the network interface card is installed and look at the output of the above command. if you see MTU as 9000 then interface is jumbo frame enabled. In the sample output given below, NIC eth6 is jumbo frame enabled because MTU is set at 9000.

eth6 Link encap:Ethernet HWaddr 00:18:FE:2E:70:05 UP BROADCAST  RUNNING NOARP SLAVE MULTICAST MTU:9000 Metric:1 RX packets:5596 errors:0  dropped:0 overruns:0 frame:0 TX packets:26 errors:0 dropped:0  overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:360280 (351.8  Kb) TX bytes:3296 (3.2 Kb) Base address:0x7000 Memory:fdee0000-fdf00000

 

  • How to recrate the Oacle database in Oracle Real Application cluster 10g onward?
    Post By: admin

The best way to recreate the database is using the DBCA. In case you are doing it manually then it depends on situation:

Case 1: The ORACLE_HOME and name of the database being created is same as of the database being dropped

  1. Drop the database (don't delete the init.ora file as you can reuse this if everything is going to be same for the new database)
  2. Recreate the database or contolfile for the new database.

Case 2: The ORACLE_HOME and name of the database being created is different as of the database being dropped

  1. Drop the database
  2. Remove the database from the Oracle Cluster Registry using SRVCTL command.
  3. Recreate the database or contolfile for the new database.
  4. Register the database in Oracle Cluster Registry using SRVCTL

 

  • Does Oracle 9i RAC provide functionality to use Virtual IP (VIP) for the database listener?
    Post By: admin

Oracle introduced Oracle managed VIP in Oracle Clusterware in Oracle 10g onwards but there has not been any limitation in Oracle 9i RAC to use VIP managed by third party cluster software on UNIX based platforms. Please refer to Oracle 9i Real Application Cluster - How to avoid database users waiting for TCP timeout error when TCP/IP network goes down? article.