This section provides detailed information about MySQL server
system variables that are specific to MySQL Cluster and the
NDB storage engine. For system variables not
specific to MySQL Cluster, see
Section 5.1.3, “System Variables”. For general information
on using system variables, see
Section 5.1.5, “Using System Variables”.
| Variable Name | have_ndbcluster |
||
| Variable Scope | Global | ||
| Dynamic Variable | No | ||
| Value Set |
|
YES if mysqld supports
NDB tables. DISABLED if
--skip-ndbcluster is used.
| Option Sets Variable | Yes, multi_range_count
|
||||||
| Variable Name | multi_range_count |
||||||
| Variable Scope | Both | ||||||
| Dynamic Variable | Yes | ||||||
| Value Set |
|
The maximum number of ranges to send to a table handler at
once during range selects. The default value is 256. Sending
multiple ranges to a handler at once can improve the
performance of certain selects dramatically. This is
especially true for the NDB table handler,
which needs to send the range requests to all nodes. Sending a
batch of those requests at once reduces communication costs
significantly.
This variable is deprecated in MySQL 5.1, and is no longer supported in MySQL 6.0, in which arbitrarily long lists of ranges can be processed.
| Option Sets Variable | Yes, ndb_autoincrement_prefetch_sz
|
||||||
| Variable Name | ndb_autoincrement_prefetch_sz |
||||||
| Variable Scope | Both | ||||||
| Dynamic Variable | Yes | ||||||
| Value Set (<= 5.1.22) |
|
||||||
| Value Set (>= 5.1.23) |
|
Determines the probability of gaps in an autoincremented
column. Set it to 1 to minimize this.
Setting it to a high value for optimization — makes
inserts faster, but decreases the likelihood that consecutive
autoincrement numbers will be used in a batch of inserts.
Default value: 32. Minimum value:
1.
Beginning with MySQL Cluster NDB 6.2.10, MySQL Cluster NDB
6.3.7, and MySQL 5.1.23, this variable affects the number of
AUTO_INCREMENT IDs that are fetched between
statements only. Within a statement, at least 32 IDs are now
obtained at a time. The default value for
ndb_autoincrement_prefetch_sz is now
1, to increase the speed of statements
inserting single rows. (Bug#31956)
| Option Sets Variable | Yes, ndb_cache_check_time
|
||||
| Variable Name | ndb_cache_check_time |
||||
| Variable Scope | Global | ||||
| Dynamic Variable | Yes | ||||
| Value Set |
|
The number of milliseconds that elapse between checks of MySQL Cluster SQL nodes by the MySQL query cache. Setting this to 0 (the default and minimum value) means that the query cache checks for validation on every query.
The recommended maximum value for this variable is 1000, which means that the check is performed once per second. A larger value means that the check is performed and possibly invalidated due to updates on different SQL nodes less often. It is generally not desirable to set this to a value greater than 2000.
| Version Introduced | 5.1.6 | ||||
| Variable Name | ndb_extra_logging |
||||
| Variable Scope | Global | ||||
| Dynamic Variable | Yes | ||||
| Value Set |
|
This variable can be used to enable recording in the MySQL
error log of information specific to the
NDB storage engine. It is normally of
interest only when debugging NDB storage
engine code.
The default value is 0, which means that the only
NDB-specific information written to the
MySQL error log relates to transaction handling. If the value
is greater than 0 but less than 10, NDB
table schema and connection events are also logged, as well as
whether or not conflict resolution is in use, and other
NDB errors and information. If the value is
set to 10 or more, information about NDB
internals, such as the progress of data distribution among
cluster nodes, is also written to the MySQL error log.
This variable was added in MySQL 5.1.6.
| Option Sets Variable | Yes, ndb_force_send
|
||||
| Variable Name | ndb_force_send |
||||
| Variable Scope | Both | ||||
| Dynamic Variable | Yes | ||||
| Value Set |
|
Forces sending of buffers to NDB
immediately, without waiting for other threads. Defaults to
ON.
| Value Set |
|
Sets the granularity of the statistics by determining the
number of starting and ending keys to store in the statistics
memory cache. Zero means no caching takes place; in this case,
the data nodes are always queried directly. Default value:
32.
| Value Set |
|
Use NDB index statistics in query
optimization. Defaults to ON.
| Value Set |
|
How often to query data nodes instead of the statistics cache.
For example, a value of 20 (the default)
means to direct every 20th query to
the data nodes.
| Value Set |
|
Causes an SQL node to use a data node on the same host machine
as transaction coordinator. Enabled by default. Set to
0 or OFF to disable, in
which case the SQL node uses each data node in the cluster in
succession. When this option is disabled, or if there is no
data node process running on the same host as the SQL node,
the SQL node attempts to use a given data node 8 times before
proceeding to the next one.
Begiunning with MySQL Cluster NDB 6.3.4, this option takes one
of the integer values 0,
1, 2, or
3, with 1 being the
default. These values affect node selection as follows:
0: Each data node is employed as the
transaction coordinator 8 times before the SQL node
proceeds to the next data node. (This is the same
behavior as caused by setting this option to
0 or OFF in
previous MySQL versions.)
1: If a data node process is running
on the the same host as the SQL node, this data node is
used as the transaction coordinator. (This is the same
behavior as caused by setting this option to
1 or ON in
previous MySQL versions.)
2: The SQL node follows the same
behavior as if this option had been set to
1; however, the setting is global.
3: The data node housing the cluster
partition accessed by the first statement of a given
transaction is used as the transaction coordinator for
the entire transaction. This is effective only if the
first statement of the transaction accesses no more than
one cluster partition; otherwise, the SQL node reverts
to the round-robin behavior seen when this option is set
to 0.
Beginning with MySQL Cluster NDB 6.3.4, it is no longer
possible to set
--ndb_optimized_node_selection to
ON or OFF;
attempting to do so causes mysqld to
abort with an error.
ndb_report_thresh_binlog_epoch_slip
| Value Set |
|
This is a threshold on the number of epochs to be behind
before reporting binlog status. For example, a value of
3 (the default) means that if the
difference between which epoch has been received from the
storage nodes and which epoch has been applied to the binlog
is 3 or more, a status message will be sent to the cluster
log.
ndb_report_thresh_binlog_mem_usage
| Value Set |
|
This is a threshold on the percentage of free memory remaining
before reporting binlog status. For example, a value of
10 (the default) means that if the amount
of available memory for receiving binlog data from the data
nodes falls below 10%, a status message will be sent to the
cluster log.
| Version Introduced | 5.1.12 |
| Variable Name | ndb_use_copying_alter_table |
| Variable Scope | Both |
| Dynamic Variable | No |
Forces NDB to use copying of tables in the
event of problems with online ALTER TABLE
operations. The default value is OFF.
This variable was added in MySQL 5.1.12.
| Variable Name | ndb_use_exact_count |
||||
| Variable Scope | Both | ||||
| Dynamic Variable | Yes | ||||
| Value Set |
|
Forces NDB to use a count of records during
SELECT COUNT(*) query planning to speed up
this type of query. The default value is
ON. For faster queries overall, disable
this feature by setting the value of
ndb_use_exact_count to
OFF.
| Value Set |
|
You can disable NDB transaction support by
setting this variable's values to OFF (not
recommended). The default is ON.
| Version Introduced | 5.1.16-ndb-6.2.0 | ||||
| Option Sets Variable | Yes, ndb_wait_connected
|
||||
| Variable Name | ndb_wait_connected |
||||
| Variable Scope | |||||
| Dynamic Variable | No | ||||
| Value Set |
|
This variable can be used to cause the MySQL server to wait a
given period of time for connections to MySQL Cluster
management and data nodes to be established before accepting
MySQL client connections. The time is specified in seconds.
The default value is 0.

User Comments
Add your own comment.