<< DeploymentOptions - TOC - Administering And Monitoring Replication >>
This chapter discusses the various operational restrictions, capacity requirements, and
system changes you need to make based on the Replication system you select.
Replication imposes the following operational Restrictions:
Once you have defined a table to Replication, you cannot execute any operation that changes the table and its schema definitions. You cannot use below SQL statement against the table.
The following additional restrictions also apply to tables defined for replication:
The following SQL statements are permitted:
The database server configuration file (csql.conf) under CSQL root directory includes eleven configuration parameters that affect the behavior of Replication.
The above parameters could be divides in two parts one for Replication and another for Network.
Replication Configuration parameters:
Network Configuration Parameters:
CSQL requires some system parameters that need to be set before starting CSQL server. These configuration variables are defined in a file called csql.conf. Some of the parameters mentioned in this file may have to be tweaked based on the requirements. The lines starting with # are ignored as comments and the rest are treated as configuration variables. These variable values are read from this file during server start up. These configuration variables are divided logically into following classes.
It is very important to note that for Server section parameters, the value should be the same for the server process and all the CSQL client processes, which connects to it. Otherwise, behavior is undefined. For Server and Client section variables and additional information about configuration parameters refer to the, Section 3.5.2.2 in CSQL User’s Manual.
The configuration file, csql.conf has eleven parameters that need to be set up for replication. Some of the parameters are present in Cache Section and most are present in SQL Network Server Section in csql.conf file.
[ REPLICATION = true ]
This is a Boolean parameter and should be set to true to enable replication across site.
[ SITE_ID=1 ]
This is an integer parameter and it identifies a CSQL instance in a quorum. Set this to a unique value for all the nodes in the quroum. In example, this parameter will be set to 1 for CSQL Instance-1 and will be set to 2 for CSQL Instance-2 and so on.
[ CACHE_SQL_SERVER=true ]
This is a Boolean parameter and should be set to true when replication is turned on.
[ PORT = 5678 ]
This is an integer parameter to set the port for network access, by default it is set to the number 5678.
[ REPLICATION_SITES = 16 ]
This is an integer parameter to specify the maximum no of sites present in the quorum. Default value is 16.
[ NETWORK_CONFIG_FILE=/tmp/csql/csqlnw.conf ]
This is a string parameter, which contains the complete path to the file, which holds the complete information about the peer site information in the quorum.
[ CONFL_RESO_FILE=/tmp/csql/conflResoFile.txt ]
This is a string parameter, which contains the complete path to the file and also holds the complete information about the transactional conflicts that have been generated because of execution failures at the destination site in case of asynchronous updates.
[ MSG_KEY = 2525 ] [ ID_SHM_KEY = 1947 ]
These are integer parameters and are used for creating message queue for MsgQueue server. It is used when your replication mode is Async only. This is an internal parameter and user need not modify this value.
[ ASYNC_MSGMAX = 8192 ]
This parameter should be set when asynchronous cache updates or asynchronous replication feature is required. By default this parameter is 8192 bytes(8kb). This corresponds to kernel parameter of message queue ‘kernel.msgmax’, which is the maximum size of a message in a message queue. By default Linux has 8192 bytes for this parameter and it is suggested to verify for the same in the user environment. Privileged user can modify this parameter using sysctl tool as follows
\#/sbin/sysctl –w kernel.msgmax=<SIZE_TO_SET>
[ MAX_QUEUE_LOGS = 100 ]
This parameter is set for maximum number of messages that CSQL Message Queue hold it internally incase of peer site goes down. If this queue gets full, then all updates for down site are removed from the queue and it is expected to re subscribe all the replicated tables when it comes back. After setting up the environment variables we can set our sites to replicate data from one site to another.
<< DeploymentOptions - TOC - Administering And Monitoring Replication >>