~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to plugin/innobase/docs/index.rst

  • Committer: Mark Atwood
  • Date: 2011-09-13 19:54:55 UTC
  • mfrom: (2397.1.3 plugin-docs)
  • Revision ID: me@mark.atwood.name-20110913195455-3bk3locm85m4jimp
mergeĀ lp:~daniel-nichter/drizzle/plugin-docs

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
Innobase
2
 
========
3
 
 
4
 
The Innobase plugin provides the InnoDB storage engine. It is almost identical
5
 
to the innodb_plugin, but adapted to Drizzle. We plan to move to having InnoDB
6
 
provided by the HailDB plugin, which will allow for easier maintenance and
7
 
upgrades.
8
 
 
9
 
InnoDB is the default storage engine for Drizzle. It is a fully transactional
10
 
MVCC storage engine.
11
 
 
12
 
innodb_plugin origins
13
 
---------------------
14
 
 
15
 
We maintain the Innobase plugin in Drizzle as a downstream project of the
16
 
innodb_plugin for MySQL. We try and keep it up to date with innodb_plugin
17
 
releases.
18
 
 
19
 
Differences from innodb_plugin
20
 
------------------------------
21
 
 
22
 
 * AUTO_INCREMENT behaves the standard way (as in MyISAM)
23
 
 * Supports four byte UTF-8 with the same index size
24
 
 
25
 
AIO support
26
 
-----------
 
1
InnoDB Storage Engine
 
2
=====================
 
3
 
 
4
The :program:`innodb` plugin provides the InnoDB storage engine,
 
5
a fully transactional MVCC storage engine developed by
 
6
`Innobase Oy <http://www.innodb.com/>`_.  InnoDB is the default
 
7
storage engine for Drizzle. 
 
8
 
 
9
 
 
10
.. _innodb_compatibility_with_mysql:
 
11
 
 
12
Compatibility with MySQL
 
13
------------------------
 
14
 
 
15
The :program:`innodb` plugin is maintained in Drizzle as a downstream
 
16
project of the :program:`innodb_plugin` for MySQL.  The two are nearly
 
17
identical, and the Drizzle plugin is usually kept up-to-date with the MySQL
 
18
plugin, but there are some notable differences:
 
19
 
 
20
  * The on disk formats are slightly incompatible (to allow for the same
 
21
    index length for the four byte UTF-8 that Drizzle supports)
 
22
  * The table definitions (.from for MySQL, .dfe for Drizzle) are completely
 
23
    different. This means that you cannot directly share InnoDB tablespaces
 
24
    between MySQL and Drizzle. Use the drizzledump tool to migrate data from
 
25
    MySQL to Drizzle.
 
26
 
 
27
There are also some notable compatibilies:
 
28
 
 
29
  * AUTO_INCREMENT behaves the standard way (as in MyISAM)
 
30
  * Supports four byte UTF-8 with the same index size
 
31
 
 
32
.. _innodb_native_aio_support:
 
33
 
 
34
Native AIO Support
 
35
------------------
27
36
 
28
37
InnoDB supports Linux native AIO when compiled on platforms that have the
29
38
libaio development files installed (typically a package called libaio-dev or
30
39
libaio-devel).  For more information on the advantages of this please see
31
40
http://blogs.innodb.com/wp/2010/04/innodb-performance-aio-linux/
32
41
 
33
 
To confirm that Linux native AIO is enabled execute this command:
 
42
To confirm that Linux native AIO is enabled, execute:
34
43
 
35
44
.. code-block:: mysql
36
45
 
37
 
  show global variables like 'innodb_use_native_aio';
38
 
 
39
 
Compatibility with MySQL
40
 
------------------------
41
 
 
42
 
Although the innobase plugin is near identical to the innodb_plugin in MySQL,
43
 
the on disk formats are slightly incompatible (to allow for the same index
44
 
length for the four byte UTF-8 that Drizzle supports) and the table definitions
45
 
(FRM for MySQL, .dfe for Drizzle) are completely different. This means that you
46
 
cannot directly share InnoDB tablespaces between MySQL and Drizzle. Use the
47
 
drizzledump tool to migrate data from MySQL to Drizzle.
 
46
  SHOW GLOBAL VARIABLES LIKE 'innodb_use_native_aio';
48
47
 
49
48
.. _innodb_transaction_log:
50
49
 
51
50
InnoDB Transaction Log
52
51
----------------------
53
52
 
54
 
The Innobase plugin provides a mechanism to store replication events in an
55
 
InnoDB table. When enabled, this transaction log can be accessed through
56
 
the SYS_REPLICATION_LOG and INNODB_REPLICATION_LOG tables in the DATA_DICTIONARY
57
 
schema.
58
 
 
59
 
To enable this transaction log, you must start the server with:
 
53
The :program:`innodb` plugin provides a mechanism to store replication
 
54
events in an InnoDB table. When enabled, this transaction log can be accessed
 
55
through the SYS_REPLICATION_LOG and INNODB_REPLICATION_LOG tables in the
 
56
DATA_DICTIONARY schema.
 
57
 
 
58
To enable this transaction log, start the server with the
 
59
:option:`--innodb.replication-log`.
 
60
 
 
61
Loading
 
62
-------
 
63
 
 
64
This plugin is loaded by default, but it may need to be configured.  See
 
65
the plugin's :ref:`innodb_configuration` and
 
66
:ref:`innodb_variables`.
 
67
 
 
68
To stop the plugin from loading by default, start :program:`drizzled`
 
69
with::
 
70
 
 
71
   --plugin-remove=innodb
 
72
 
 
73
.. seealso:: :doc:`/options` for more information about adding and removing plugins.
 
74
 
 
75
.. _innodb_configuration:
 
76
 
 
77
Configuration
 
78
-------------
 
79
 
 
80
These command line options configure the plugin when :program:`drizzled`
 
81
is started.  See :doc:`/configuration` for more information about specifying
 
82
command line options.
60
83
 
61
84
.. program:: drizzled
62
85
 
63
 
.. option::  --innodb.replication-log
64
 
 
65
 
It is not enabled by default.
 
86
.. option:: --innodb.adaptive-flushing-method ARG
 
87
 
 
88
   :Default: estimate
 
89
   :Variable: :ref:`innodb_adaptive_flushing_method <innodb_adaptive_flushing_method>`
 
90
 
 
91
   Adaptive flushing method.  Possible values are:
 
92
 
 
93
   * native
 
94
   * estimate
 
95
   * keep_average
 
96
 
 
97
.. option:: --innodb.additional-mem-pool-size ARG
 
98
 
 
99
   :Default: 8388608 (8M)
 
100
   :Variable: :ref:`innodb_additional_mem_pool_size <innodb_additional_mem_pool_size>`
 
101
 
 
102
   Size of a memory pool InnoDB uses to store data dictionary information and other internal data structures.
 
103
 
 
104
.. option:: --innodb.auto-lru-dump 
 
105
 
 
106
   :Default: 0
 
107
   :Variable: :ref:`innodb_auto_lru_dump <innodb_auto_lru_dump>`
 
108
 
 
109
   Time in seconds between automatic buffer pool dumps. 
 
110
 
 
111
.. option:: --innodb.autoextend-increment ARG
 
112
 
 
113
   :Default: 64
 
114
   :Variable: :ref:`innodb_autoextend_increment <innodb_autoextend_increment>`
 
115
 
 
116
   Data file autoextend increment in megabytes.
 
117
 
 
118
.. option:: --innodb.buffer-pool-instances ARG
 
119
 
 
120
   :Default: 1
 
121
   :Variable:
 
122
 
 
123
   Number of buffer pool instances.
 
124
 
 
125
.. option:: --innodb.buffer-pool-size ARG
 
126
 
 
127
   :Default: 134217728 (128M)
 
128
   :Variable: :ref:`innodb_buffer_pool_size <innodb_buffer_pool_size>`
 
129
 
 
130
   The size of the memory buffer InnoDB uses to cache data and indexes of its tables.
 
131
 
 
132
.. option:: --innodb.change-buffering 
 
133
 
 
134
   :Default: all
 
135
   :Variable: :ref:`innodb_change_buffering <innodb_change_buffering>`
 
136
 
 
137
   Buffer changes to reduce random access.  Possible values:
 
138
 
 
139
   * none
 
140
   * inserts
 
141
   * deletes
 
142
   * changes
 
143
   * purges
 
144
   * all
 
145
 
 
146
.. option:: --innodb.checkpoint-age-target 
 
147
 
 
148
   :Default: 0
 
149
   :Variable: :ref:`innodb_checkpoint_age_target <innodb_checkpoint_age_target>`
 
150
 
 
151
   Control soft limit of checkpoint age. (0 = no control)
 
152
 
 
153
.. option:: --innodb.commit-concurrency 
 
154
 
 
155
   :Default: 0
 
156
   :Variable: :ref:`innodb_commit_concurrency <innodb_commit_concurrency>`
 
157
 
 
158
   Helps in performance tuning in heavily concurrent environments.
 
159
 
 
160
.. option:: --innodb.concurrency-tickets ARG
 
161
 
 
162
   :Default: 500
 
163
   :Variable: :ref:`innodb_concurrency_tickets <innodb_concurrency_tickets>`
 
164
 
 
165
   Number of times a thread is allowed to enter InnoDB within the same SQL query after it has once got the ticket.
 
166
 
 
167
.. option:: --innodb.data-file-path 
 
168
 
 
169
   :Default: ibdata1:10M:autoextend
 
170
   :Variable: :ref:`innodb_data_file_path <innodb_data_file_path>`
 
171
 
 
172
   Path to individual files and their sizes.
 
173
 
 
174
.. option:: --innodb.data-home-dir 
 
175
 
 
176
   :Default: 
 
177
   :Variable: :ref:`innodb_data_home_dir <innodb_data_home_dir>`
 
178
 
 
179
   Directory for InnoDB data.
 
180
 
 
181
.. option:: --innodb.disable-adaptive-flushing 
 
182
 
 
183
   :Default: 
 
184
   :Variable: :ref:`innodb_adaptive_flushing <innodb_adaptive_flushing>`
 
185
 
 
186
   Do not attempt flushing dirty pages to avoid IO bursts at checkpoints.
 
187
 
 
188
.. option:: --innodb.disable-adaptive-hash-index 
 
189
 
 
190
   :Default: 
 
191
   :Variable: :ref:`innodb_adaptive_hash_index <innodb_adaptive_hash_index>`
 
192
 
 
193
   Enable InnoDB adaptive hash index (enabled by default)
 
194
 
 
195
.. option:: --innodb.disable-checksums 
 
196
 
 
197
   :Default: false
 
198
   :Variable: :ref:`innodb_checksums <innodb_checksums>`
 
199
 
 
200
   Disable InnoDB checksums validation.
 
201
 
 
202
.. option:: --innodb.disable-doublewrite 
 
203
 
 
204
   :Default: 
 
205
   :Variable: :ref:`innodb_doublewrite <innodb_doublewrite>`
 
206
 
 
207
   Disable InnoDB doublewrite buffer.
 
208
 
 
209
.. option:: --innodb.disable-native-aio 
 
210
 
 
211
   :Default: 
 
212
   :Variable:
 
213
 
 
214
   Do not use Native AIO library for IO, even if available.
 
215
   See :ref:`innodb_native_aio_support`.
 
216
 
 
217
.. option:: --innodb.disable-stats-on-metadata 
 
218
 
 
219
   :Default: 
 
220
   :Variable:
 
221
 
 
222
   Disable statistics gathering for metadata commands such as SHOW TABLE STATUS (on by default).
 
223
 
 
224
.. option:: --innodb.disable-table-locks 
 
225
 
 
226
   :Default: 
 
227
   :Variable:
 
228
 
 
229
   Disable InnoDB locking in LOCK TABLES.
 
230
 
 
231
.. option:: --innodb.disable-xa 
 
232
 
 
233
   :Default: 
 
234
   :Variable: :ref:`innodb_support_xa <innodb_support_xa>`
 
235
 
 
236
   Disable InnoDB support for the XA two-phase commit.
 
237
 
 
238
.. option:: --innodb.fast-shutdown ARG
 
239
 
 
240
   :Default: 1
 
241
   :Variable: :ref:`innodb_fast_shutdown <innodb_fast_shutdown>`
 
242
 
 
243
   Speeds up the shutdown process of the InnoDB storage engine. Possible values are:
 
244
 
 
245
   * 0 (off)
 
246
   * 1 (faster)
 
247
   * 2 (fastest, crash-like)
 
248
 
 
249
.. option:: --innodb.file-format ARG
 
250
 
 
251
   :Default: Antelope
 
252
   :Variable: :ref:`innodb_file_format <innodb_file_format>`
 
253
 
 
254
   File format to use for new tables in .ibd files.
 
255
 
 
256
.. option:: --innodb.file-format-check 
 
257
 
 
258
   :Default: true
 
259
   :Variable: :ref:`innodb_file_format_check <innodb_file_format_check>`
 
260
 
 
261
   Whether to perform system file format check.
 
262
 
 
263
.. option:: --innodb.file-format-max ARG
 
264
 
 
265
   :Default: Antelope
 
266
   :Variable: :ref:`innodb_file_format_max <innodb_file_format_max>`
 
267
 
 
268
   The highest file format in the tablespace.
 
269
 
 
270
.. option:: --innodb.file-per-table 
 
271
 
 
272
   :Default: false
 
273
   :Variable: :ref:`innodb_file_per_table <innodb_file_per_table>`
 
274
 
 
275
   Stores each InnoDB table to an .ibd file in the database dir.
 
276
 
 
277
.. option:: --innodb.flush-log-at-trx-commit ARG
 
278
 
 
279
   :Default: 1
 
280
   :Variable: :ref:`innodb_flush_log_at_trx_commit <innodb_flush_log_at_trx_commit>`
 
281
 
 
282
   Flush lot at transaction commit.  Possible values are:
 
283
 
 
284
   * 0 (write and flush once per second)
 
285
   * 1 (write and flush at each commit)
 
286
   * 2 (write at commit, flush once per second)
 
287
 
 
288
.. option:: --innodb.flush-method 
 
289
 
 
290
   :Default: 
 
291
   :Variable: :ref:`innodb_flush_method <innodb_flush_method>`
 
292
 
 
293
   Data flush method.
 
294
 
 
295
.. option:: --innodb.flush-neighbor-pages ARG
 
296
 
 
297
   :Default: 1
 
298
   :Variable: :ref:`innodb_flush_neighbor_pages <innodb_flush_neighbor_pages>`
 
299
 
 
300
   Enable/Disable flushing also neighbor pages. 0:disable 1:enable
 
301
 
 
302
.. option:: --innodb.force-recovery 
 
303
 
 
304
   :Default: 0
 
305
   :Variable: :ref:`innodb_force_recovery <innodb_force_recovery>`
 
306
 
 
307
   Helps to save your data in case the disk image of the database becomes corrupt.
 
308
 
 
309
.. option:: --innodb.ibuf-accel-rate ARG
 
310
 
 
311
   :Default: 100
 
312
   :Variable: :ref:`innodb_ibuf_accel_rate <innodb_ibuf_accel_rate>`
 
313
 
 
314
   Tunes amount of insert buffer processing of background, in addition to innodb_io_capacity. (in percentage)
 
315
 
 
316
.. option:: --innodb.ibuf-active-contract ARG
 
317
 
 
318
   :Default: 1
 
319
   :Variable: :ref:`innodb_ibuf_active_contract <innodb_ibuf_active_contract>`
 
320
 
 
321
   Enable/Disable active_contract of insert buffer. 0:disable 1:enable
 
322
 
 
323
.. option:: --innodb.ibuf-max-size ARG
 
324
 
 
325
   :Default: UINT64_MAX
 
326
   :Variable: :ref:`innodb_ibuf_max_size <innodb_ibuf_max_size>`
 
327
 
 
328
   The maximum size of the insert buffer (in bytes).
 
329
 
 
330
.. option:: --innodb.io-capacity ARG
 
331
 
 
332
   :Default: 200
 
333
   :Variable: :ref:`innodb_io_capacity <innodb_io_capacity>`
 
334
 
 
335
   Number of IOPs the server can do. Tunes the background IO rate.
 
336
 
 
337
.. option:: --innodb.lock-wait-timeout ARG
 
338
 
 
339
   :Default: 50
 
340
   :Variable: :ref:`innodb_lock_wait_timeout <innodb_lock_wait_timeout>`
 
341
 
 
342
   Timeout in seconds an InnoDB transaction may wait for a lock before being rolled back. Values above 100000000 disable the timeout.
 
343
 
 
344
.. option:: --innodb.log-buffer-size ARG
 
345
 
 
346
   :Default: 8,388,608 (8M)
 
347
   :Variable: :ref:`innodb_log_buffer_size <innodb_log_buffer_size>`
 
348
 
 
349
   The size of the buffer which InnoDB uses to write log to the log files on disk.
 
350
 
 
351
.. option:: --innodb.log-file-size ARG
 
352
 
 
353
   :Default: 20971520 (20M)
 
354
   :Variable: :ref:`innodb_log_file_size <innodb_log_file_size>`
 
355
 
 
356
   The size of the buffer which InnoDB uses to write log to the log files on disk.
 
357
 
 
358
.. option:: --innodb.log-files-in-group ARG
 
359
 
 
360
   :Default: 2
 
361
   :Variable: :ref:`innodb_log_files_in_group <innodb_log_files_in_group>`
 
362
 
 
363
   Number of log files in the log group. InnoDB writes to the files in a circular fashion.
 
364
 
 
365
.. option:: --innodb.log-group-home-dir 
 
366
 
 
367
   :Default: 
 
368
   :Variable: :ref:`innodb_log_group_home_dir <innodb_log_group_home_dir>`
 
369
 
 
370
   Path to InnoDB log files.
 
371
 
 
372
.. option:: --innodb.max-dirty-pages-pct ARG
 
373
 
 
374
   :Default: 75
 
375
   :Variable: :ref:`innodb_max_dirty_pages_pct <innodb_max_dirty_pages_pct>`
 
376
 
 
377
   Percentage of dirty pages allowed in bufferpool.
 
378
 
 
379
.. option:: --innodb.max-purge-lag 
 
380
 
 
381
   :Default: 0
 
382
   :Variable: :ref:`innodb_max_purge_lag <innodb_max_purge_lag>`
 
383
 
 
384
   Desired maximum length of the purge queue (0 = no limit)
 
385
 
 
386
.. option:: --innodb.mirrored-log-groups ARG
 
387
 
 
388
   :Default: 1
 
389
   :Variable: :ref:`innodb_mirrored_log_groups <innodb_mirrored_log_groups>`
 
390
 
 
391
   Number of identical copies of log groups we keep for the database. Currently this should be set to 1.
 
392
 
 
393
.. option:: --innodb.old-blocks-pct ARG
 
394
 
 
395
   :Default: 37
 
396
   :Variable: :ref:`innodb_old_blocks_pct <innodb_old_blocks_pct>`
 
397
 
 
398
   Percentage of the buffer pool to reserve for 'old' blocks.
 
399
 
 
400
.. option:: --innodb.old-blocks-time 
 
401
 
 
402
   :Default: 0
 
403
   :Variable: :ref:`innodb_old_blocks_time <innodb_old_blocks_time>`
 
404
 
 
405
   Move blocks to the 'new' end of the buffer pool if the first access
 
406
   was at least this many milliseconds ago.
 
407
 
 
408
.. option:: --innodb.open-files ARG
 
409
 
 
410
   :Default: 300
 
411
   :Variable: :ref:`innodb_open_files <innodb_open_files>`
 
412
 
 
413
   How many files at the maximum InnoDB keeps open at the same time.
 
414
 
 
415
.. option:: --innodb.purge-batch-size ARG
 
416
 
 
417
   :Default: 20
 
418
   :Variable: :ref:`innodb_purge_batch_size <innodb_purge_batch_size>`
 
419
 
 
420
   Number of UNDO logs to purge in one batch from the history list. 
 
421
 
 
422
.. option:: --innodb.purge-threads ARG
 
423
 
 
424
   :Default: 1
 
425
   :Variable: :ref:`innodb_purge_threads <innodb_purge_threads>`
 
426
 
 
427
   Purge threads can be either 0 or 1.
 
428
 
 
429
.. option:: --innodb.read-ahead ARG
 
430
 
 
431
   :Default: linear
 
432
   :Variable: :ref:`innodb_read_ahead <innodb_read_ahead>`
 
433
 
 
434
   Control read ahead activity.  Possible values are:
 
435
 
 
436
   * none
 
437
   * random
 
438
   * linear
 
439
   * both
 
440
 
 
441
.. option:: --innodb.read-ahead-threshold ARG
 
442
 
 
443
   :Default: 56
 
444
   :Variable: :ref:`innodb_read_ahead_threshold <innodb_read_ahead_threshold>`
 
445
 
 
446
   Number of pages that must be accessed sequentially for InnoDB to trigger a readahead.
 
447
 
 
448
.. option:: --innodb.read-io-threads ARG
 
449
 
 
450
   :Default: 4
 
451
   :Variable: :ref:`innodb_read_io_threads <innodb_read_io_threads>`
 
452
 
 
453
   Number of background read I/O threads in InnoDB.
 
454
 
 
455
.. option:: --innodb.replication-delay 
 
456
 
 
457
   :Default: 0
 
458
   :Variable: :ref:`innodb_replication_delay <innodb_replication_delay>`
 
459
 
 
460
   Replication thread delay (ms) on the slave server if innodb_thread_concurrency is reached (0 by default)
 
461
 
 
462
.. option:: --innodb.replication-log 
 
463
 
 
464
   :Default: false
 
465
   :Variable: :ref:`innodb_replication_log <innodb_replication_log>`
 
466
 
 
467
   Enable :ref:`innodb_transaction_log`.
 
468
 
 
469
.. option:: --innodb.spin-wait-delay ARG
 
470
 
 
471
   :Default: 6
 
472
   :Variable: :ref:`innodb_spin_wait_delay <innodb_spin_wait_delay>`
 
473
 
 
474
   Maximum delay between polling for a spin lock.
 
475
 
 
476
.. option:: --innodb.stats-sample-pages ARG
 
477
 
 
478
   :Default: 8
 
479
   :Variable: :ref:`innodb_stats_sample_pages <innodb_stats_sample_pages>`
 
480
 
 
481
   The number of index pages to sample when calculating statistics.
 
482
 
 
483
.. option:: --innodb.status-file 
 
484
 
 
485
   :Default: false
 
486
   :Variable: :ref:`innodb_status_file <innodb_status_file>`
 
487
 
 
488
   Enable SHOW INNODB STATUS output in the innodb_status.<pid> file.
 
489
 
 
490
.. option:: --innodb.strict-mode 
 
491
 
 
492
   :Default: false
 
493
   :Variable: :ref:`innodb_strict_mode <innodb_strict_mode>`
 
494
 
 
495
   Use strict mode when evaluating create options.
 
496
 
 
497
.. option:: --innodb.sync-spin-loops ARG
 
498
 
 
499
   :Default: 30
 
500
   :Variable: :ref:`innodb_sync_spin_loops <innodb_sync_spin_loops>`
 
501
 
 
502
   Count of spin-loop rounds in InnoDB mutexes.
 
503
 
 
504
.. option:: --innodb.thread-concurrency 
 
505
 
 
506
   :Default: 0
 
507
   :Variable: :ref:`innodb_thread_concurrency <innodb_thread_concurrency>`
 
508
 
 
509
   Helps in performance tuning in heavily concurrent environments. Sets the maximum number of threads allowed inside InnoDB. Value 0 will disable the thread throttling.
 
510
 
 
511
.. option:: --innodb.thread-sleep-delay ARG
 
512
 
 
513
   :Default: 10000
 
514
   :Variable: :ref:`innodb_thread_sleep_delay <innodb_thread_sleep_delay>`
 
515
 
 
516
   Time of innodb thread sleeping before joining InnoDB queue (usec). Value 0 disable a sleep.
 
517
 
 
518
.. option:: --innodb.use-internal-malloc 
 
519
 
 
520
   :Default: false
 
521
   :Variable: `innodb_use_sys_malloc <innodb_use_sys_malloc>`
 
522
 
 
523
   Use InnoDB's internal memory allocator instead of the system's malloc.
 
524
 
 
525
.. option:: --innodb.version ARG
 
526
 
 
527
   :Default:
 
528
   :Variable: :ref:`innodb_version_var <innodb_version_var>`
 
529
 
 
530
   InnoDB version.
 
531
 
 
532
.. option:: --innodb.write-io-threads ARG
 
533
 
 
534
   :Default: 4
 
535
   :Variable: :ref:`innodb_write_io_threads <innodb_write_io_threads>`
 
536
 
 
537
   Number of background write I/O threads in InnoDB.
 
538
 
 
539
.. _innodb_variables:
 
540
 
 
541
Variables
 
542
---------
 
543
 
 
544
These variables show the running configuration of the plugin.
 
545
See `variables` for more information about querying and setting variables.
 
546
 
 
547
.. _innodb_adaptive_flushing:
 
548
 
 
549
* ``innodb_adaptive_flushing``
 
550
 
 
551
   :Scope: Global
 
552
   :Dynamic: No
 
553
   :Option: :option:`--innodb.disable-adaptive-flushing`
 
554
 
 
555
   If adaptive flushing is enabled or not.
 
556
 
 
557
.. _innodb_adaptive_flushing_method:
 
558
 
 
559
* ``innodb_adaptive_flushing_method``
 
560
 
 
561
   :Scope: Global
 
562
   :Dynamic: No
 
563
   :Option: :option:`--innodb.adaptive-flushing-method`
 
564
 
 
565
   Adaptive flushing method.  Possible values are:
 
566
 
 
567
   * native
 
568
   * estimate
 
569
   * keep_average
 
570
 
 
571
.. _innodb_adaptive_hash_index:
 
572
 
 
573
* ``innodb_adaptive_hash_index``
 
574
 
 
575
   :Scope: Global
 
576
   :Dynamic: No
 
577
   :Option: :option:`--innodb.disable-adaptive-hash-index`
 
578
 
 
579
   If the adapative hash index is enabled or not.
 
580
 
 
581
.. _innodb_additional_mem_pool_size:
 
582
 
 
583
* ``innodb_additional_mem_pool_size``
 
584
 
 
585
   :Scope: Global
 
586
   :Dynamic: No
 
587
   :Option: :option:`--innodb.additional-mem-pool-size`
 
588
 
 
589
   Size of a memory pool InnoDB uses to store data dictionary information and other internal data structures.
 
590
 
 
591
.. _innodb_auto_lru_dump:
 
592
 
 
593
* ``innodb_auto_lru_dump``
 
594
 
 
595
   :Scope: Global
 
596
   :Dynamic: No
 
597
   :Option: :option:`--innodb.auto-lru-dump`
 
598
 
 
599
   Time in seconds between automatic buffer pool dumps. 
 
600
 
 
601
.. _innodb_autoextend_increment:
 
602
 
 
603
* ``innodb_autoextend_increment``
 
604
 
 
605
   :Scope: Global
 
606
   :Dynamic: No
 
607
   :Option: :option:`--innodb.autoextend-increment`
 
608
 
 
609
   Data file autoextend increment in megabytes
 
610
 
 
611
.. _innodb_buffer_pool_size:
 
612
 
 
613
* ``innodb_buffer_pool_size``
 
614
 
 
615
   :Scope: Global
 
616
   :Dynamic: No
 
617
   :Option: :option:`--innodb.buffer-pool-size`
 
618
 
 
619
   The size of the memory buffer InnoDB uses to cache data and indexes of its tables.
 
620
 
 
621
.. _innodb_change_buffering:
 
622
 
 
623
* ``innodb_change_buffering``
 
624
 
 
625
   :Scope: Global
 
626
   :Dynamic: No
 
627
   :Option: :option:`--innodb.change-buffering`
 
628
 
 
629
   Buffer changes to reduce random access: OFF
 
630
 
 
631
.. _innodb_checkpoint_age_target:
 
632
 
 
633
* ``innodb_checkpoint_age_target``
 
634
 
 
635
   :Scope: Global
 
636
   :Dynamic: No
 
637
   :Option: :option:`--innodb.checkpoint-age-target`
 
638
 
 
639
   Control soft limit of checkpoint age. (0 : not control)
 
640
 
 
641
.. _innodb_checksums:
 
642
 
 
643
* ``innodb_checksums``
 
644
 
 
645
   :Scope: Global
 
646
   :Dynamic: No
 
647
   :Option: :option:`--innodb.disable-checksums`
 
648
 
 
649
   If checksums are enabled or not.
 
650
 
 
651
.. _innodb_commit_concurrency:
 
652
 
 
653
* ``innodb_commit_concurrency``
 
654
 
 
655
   :Scope: Global
 
656
   :Dynamic: No
 
657
   :Option: :option:`--innodb.commit-concurrency`
 
658
 
 
659
   Helps in performance tuning in heavily concurrent environments.
 
660
 
 
661
.. _innodb_concurrency_tickets:
 
662
 
 
663
* ``innodb_concurrency_tickets``
 
664
 
 
665
   :Scope: Global
 
666
   :Dynamic: No
 
667
   :Option: :option:`--innodb.concurrency-tickets`
 
668
 
 
669
   Number of times a thread is allowed to enter InnoDB within the same SQL query after it has once got the ticket
 
670
 
 
671
.. _innodb_data_file_path:
 
672
 
 
673
* ``innodb_data_file_path``
 
674
 
 
675
   :Scope: Global
 
676
   :Dynamic: No
 
677
   :Option: :option:`--innodb.data-file-path`
 
678
 
 
679
   Path to individual files and their sizes.
 
680
 
 
681
.. _innodb_data_home_dir:
 
682
 
 
683
* ``innodb_data_home_dir``
 
684
 
 
685
   :Scope: Global
 
686
   :Dynamic: No
 
687
   :Option: :option:`--innodb.data-home-dir`
 
688
 
 
689
   Directory for InnoDB data.
 
690
 
 
691
.. _innodb_doublewrite:
 
692
 
 
693
* ``innodb_doublewrite``
 
694
 
 
695
   :Scope: Global
 
696
   :Dynamic: No
 
697
   :Option: :option:`--innodb.disable-doublewrite`
 
698
 
 
699
   If doublewrite buffer is enabled or not.
 
700
 
 
701
.. _innodb_fast_shutdown:
 
702
 
 
703
* ``innodb_fast_shutdown``
 
704
 
 
705
   :Scope: Global
 
706
   :Dynamic: No
 
707
   :Option: :option:`--innodb.fast-shutdown`
 
708
 
 
709
   Fast shutdown method.
 
710
 
 
711
.. _innodb_file_format_check:
 
712
 
 
713
* ``innodb_file_format_check``
 
714
 
 
715
   :Scope: Global
 
716
   :Dynamic: No
 
717
   :Option: :option:`--innodb.file-format-check`
 
718
 
 
719
   Whether to perform system file format check.
 
720
 
 
721
.. _innodb_file_per_table:
 
722
 
 
723
* ``innodb_file_per_table``
 
724
 
 
725
   :Scope: Global
 
726
   :Dynamic: No
 
727
   :Option: :option:`--innodb.file-per-table`
 
728
 
 
729
   Stores each InnoDB table to an .ibd file in the database dir.
 
730
 
 
731
.. _innodb_file_format:
 
732
 
 
733
* ``innodb_file_format``
 
734
 
 
735
   :Scope: Global
 
736
   :Dynamic: No
 
737
   :Option: :option:`--innodb.file-format`
 
738
 
 
739
   File format to use for new tables in .ibd files.
 
740
 
 
741
.. _innodb_file_format_max:
 
742
 
 
743
* ``innodb_file_format_max``
 
744
 
 
745
   :Scope: Global
 
746
   :Dynamic: No
 
747
   :Option: :option:`--innodb.file-format-max`
 
748
 
 
749
   The highest file format in the tablespace.
 
750
 
 
751
.. _innodb_flush_method:
 
752
 
 
753
* ``innodb_flush_method``
 
754
 
 
755
   :Scope: Global
 
756
   :Dynamic: No
 
757
   :Option: :option:`--innodb.flush-method`
 
758
 
 
759
   Data flush method.
 
760
 
 
761
.. _innodb_flush_log_at_trx_commit:
 
762
 
 
763
* ``innodb_flush_log_at_trx_commit``
 
764
 
 
765
   :Scope: Global
 
766
   :Dynamic: No
 
767
   :Option: :option:`--innodb.flush-log-at-trx-commit`
 
768
 
 
769
   Set to 0 (write and flush once per second)
 
770
 
 
771
.. _innodb_flush_neighbor_pages:
 
772
 
 
773
* ``innodb_flush_neighbor_pages``
 
774
 
 
775
   :Scope: Global
 
776
   :Dynamic: No
 
777
   :Option: :option:`--innodb.flush-neighbor-pages`
 
778
 
 
779
   Enable/Disable flushing also neighbor pages. 0:disable 1:enable
 
780
 
 
781
.. _innodb_force_recovery:
 
782
 
 
783
* ``innodb_force_recovery``
 
784
 
 
785
   :Scope: Global
 
786
   :Dynamic: No
 
787
   :Option: :option:`--innodb.force-recovery`
 
788
 
 
789
   Helps to save your data in case the disk image of the database becomes corrupt.
 
790
 
 
791
.. _innodb_ibuf_accel_rate:
 
792
 
 
793
* ``innodb_ibuf_accel_rate``
 
794
 
 
795
   :Scope: Global
 
796
   :Dynamic: No
 
797
   :Option: :option:`--innodb.ibuf-accel-rate`
 
798
 
 
799
   Tunes amount of insert buffer processing of background
 
800
 
 
801
.. _innodb_ibuf_active_contract:
 
802
 
 
803
* ``innodb_ibuf_active_contract``
 
804
 
 
805
   :Scope: Global
 
806
   :Dynamic: No
 
807
   :Option: :option:`--innodb.ibuf-active-contract`
 
808
 
 
809
   Enable/Disable active_contract of insert buffer. 0:disable 1:enable
 
810
 
 
811
.. _innodb_ibuf_max_size:
 
812
 
 
813
* ``innodb_ibuf_max_size``
 
814
 
 
815
   :Scope: Global
 
816
   :Dynamic: No
 
817
   :Option: :option:`--innodb.ibuf-max-size`
 
818
 
 
819
   The maximum size of the insert buffer (in bytes).
 
820
 
 
821
.. _innodb_io_capacity:
 
822
 
 
823
* ``innodb_io_capacity``
 
824
 
 
825
   :Scope: Global
 
826
   :Dynamic: No
 
827
   :Option: :option:`--innodb.io-capacity`
 
828
 
 
829
   Number of IOPs the server can do. Tunes the background IO rate
 
830
 
 
831
.. _innodb_lock_wait_timeout:
 
832
 
 
833
* ``innodb_lock_wait_timeout``
 
834
 
 
835
   :Scope: Global
 
836
   :Dynamic: No
 
837
   :Option: :option:`--innodb.lock-wait-timeout`
 
838
 
 
839
   Timeout in seconds an InnoDB transaction may wait for a lock before being rolled back. Values above 100000000 disable the timeout.
 
840
 
 
841
.. _innodb_log_group_home_dir:
 
842
 
 
843
* ``innodb_log_group_home_dir``
 
844
 
 
845
   :Scope: Global
 
846
   :Dynamic: No
 
847
   :Option: :option:`--innodb.log-group-home-dir`
 
848
 
 
849
   Path to InnoDB log files.
 
850
 
 
851
.. _innodb_log_buffer_size:
 
852
 
 
853
* ``innodb_log_buffer_size``
 
854
 
 
855
   :Scope: Global
 
856
   :Dynamic: No
 
857
   :Option: :option:`--innodb.log-buffer-size`
 
858
 
 
859
   The size of the buffer which InnoDB uses to write log to the log files on disk.
 
860
 
 
861
.. _innodb_log_file_size:
 
862
 
 
863
* ``innodb_log_file_size``
 
864
 
 
865
   :Scope: Global
 
866
   :Dynamic: No
 
867
   :Option: :option:`--innodb.log-file-size`
 
868
 
 
869
   The size of the buffer which InnoDB uses to write log to the log files on disk.
 
870
 
 
871
.. _innodb_log_files_in_group:
 
872
 
 
873
* ``innodb_log_files_in_group``
 
874
 
 
875
   :Scope: Global
 
876
   :Dynamic: No
 
877
   :Option: :option:`--innodb.log-files-in-group`
 
878
 
 
879
   Number of log files in the log group. InnoDB writes to the files in a circular fashion.
 
880
 
 
881
.. _innodb_max_dirty_pages_pct:
 
882
 
 
883
* ``innodb_max_dirty_pages_pct``
 
884
 
 
885
   :Scope: Global
 
886
   :Dynamic: No
 
887
   :Option: :option:`--innodb.max-dirty-pages-pct`
 
888
 
 
889
   Percentage of dirty pages allowed in bufferpool.
 
890
 
 
891
.. _innodb_max_purge_lag:
 
892
 
 
893
* ``innodb_max_purge_lag``
 
894
 
 
895
   :Scope: Global
 
896
   :Dynamic: No
 
897
   :Option: :option:`--innodb.max-purge-lag`
 
898
 
 
899
   Desired maximum length of the purge queue (0 = no limit)
 
900
 
 
901
.. _innodb_mirrored_log_groups:
 
902
 
 
903
* ``innodb_mirrored_log_groups``
 
904
 
 
905
   :Scope: Global
 
906
   :Dynamic: No
 
907
   :Option: :option:`--innodb.mirrored-log-groups`
 
908
 
 
909
   Number of identical copies of log groups we keep for the database. Currently this should be set to 1.
 
910
 
 
911
.. _innodb_old_blocks_pct:
 
912
 
 
913
* ``innodb_old_blocks_pct``
 
914
 
 
915
   :Scope: Global
 
916
   :Dynamic: No
 
917
   :Option: :option:`--innodb.old-blocks-pct`
 
918
 
 
919
   Percentage of the buffer pool to reserve for 'old' blocks.
 
920
 
 
921
.. _innodb_old_blocks_time:
 
922
 
 
923
* ``innodb_old_blocks_time``
 
924
 
 
925
   :Scope: Global
 
926
   :Dynamic: No
 
927
   :Option: :option:`--innodb.old-blocks-time`
 
928
 
 
929
   ove blocks to the 'new' end of the buffer pool if the first access
 
930
 
 
931
.. _innodb_open_files:
 
932
 
 
933
* ``innodb_open_files``
 
934
 
 
935
   :Scope: Global
 
936
   :Dynamic: No
 
937
   :Option: :option:`--innodb.open-files`
 
938
 
 
939
   How many files at the maximum InnoDB keeps open at the same time.
 
940
 
 
941
.. _innodb_purge_batch_size:
 
942
 
 
943
* ``innodb_purge_batch_size``
 
944
 
 
945
   :Scope: Global
 
946
   :Dynamic: No
 
947
   :Option: :option:`--innodb.purge-batch-size`
 
948
 
 
949
   Number of UNDO logs to purge in one batch from the history list. 
 
950
 
 
951
.. _innodb_purge_threads:
 
952
 
 
953
* ``innodb_purge_threads``
 
954
 
 
955
   :Scope: Global
 
956
   :Dynamic: No
 
957
   :Option: :option:`--innodb.purge-threads`
 
958
 
 
959
   Purge threads can be either 0 or 1. Default is 1.
 
960
 
 
961
.. _innodb_read_ahead:
 
962
 
 
963
* ``innodb_read_ahead``
 
964
 
 
965
   :Scope: Global
 
966
   :Dynamic: No
 
967
   :Option: :option:`--innodb.read-ahead`
 
968
 
 
969
   Readahead method.
 
970
 
 
971
.. _innodb_read_ahead_threshold:
 
972
 
 
973
* ``innodb_read_ahead_threshold``
 
974
 
 
975
   :Scope: Global
 
976
   :Dynamic: No
 
977
   :Option: :option:`--innodb.read-ahead-threshold`
 
978
 
 
979
   Number of pages that must be accessed sequentially for InnoDB to trigger a readahead.
 
980
 
 
981
.. _innodb_read_io_threads:
 
982
 
 
983
* ``innodb_read_io_threads``
 
984
 
 
985
   :Scope: Global
 
986
   :Dynamic: No
 
987
   :Option: :option:`--innodb.read-io-threads`
 
988
 
 
989
   Number of background read I/O threads in InnoDB.
 
990
 
 
991
.. _innodb_replication_delay:
 
992
 
 
993
* ``innodb_replication_delay``
 
994
 
 
995
   :Scope: Global
 
996
   :Dynamic: No
 
997
   :Option: :option:`--innodb.replication-delay`
 
998
 
 
999
   Replication thread delay (ms) on the slave server if innodb_thread_concurrency is reached (0 by default)
 
1000
 
 
1001
.. _innodb_replication_log:
 
1002
 
 
1003
* ``innodb_replication_log``
 
1004
 
 
1005
   :Scope: Global
 
1006
   :Dynamic: No
 
1007
   :Option: :option:`--innodb.replication-log`
 
1008
 
 
1009
   If the :ref:`innodb_transaction_log` is enabled or not.
 
1010
 
 
1011
.. _innodb_spin_wait_delay:
 
1012
 
 
1013
* ``innodb_spin_wait_delay``
 
1014
 
 
1015
   :Scope: Global
 
1016
   :Dynamic: No
 
1017
   :Option: :option:`--innodb.spin-wait-delay`
 
1018
 
 
1019
   Maximum delay between polling for a spin lock (6 by default)
 
1020
 
 
1021
.. _innodb_stats_sample_pages:
 
1022
 
 
1023
* ``innodb_stats_sample_pages``
 
1024
 
 
1025
   :Scope: Global
 
1026
   :Dynamic: No
 
1027
   :Option: :option:`--innodb.stats-sample-pages`
 
1028
 
 
1029
   The number of index pages to sample when calculating statistics (default 8)
 
1030
 
 
1031
.. _innodb_status_file:
 
1032
 
 
1033
* ``innodb_status_file``
 
1034
 
 
1035
   :Scope: Global
 
1036
   :Dynamic: No
 
1037
   :Option: :option:`--innodb.status-file`
 
1038
 
 
1039
   Enable SHOW INNODB STATUS output in the innodb_status.<pid> file
 
1040
 
 
1041
.. _innodb_strict_mode:
 
1042
 
 
1043
* ``innodb_strict_mode``
 
1044
 
 
1045
   :Scope: Global
 
1046
   :Dynamic: No
 
1047
   :Option: :option:`--innodb.strict-mode`
 
1048
 
 
1049
   Use strict mode when evaluating create options.
 
1050
 
 
1051
.. _innodb_support_xa:
 
1052
 
 
1053
* ``innodb_support_xa``
 
1054
 
 
1055
   :Scope: Global
 
1056
   :Dynamic: No
 
1057
   :Option: :option:`--innodb.disable-xa`
 
1058
 
 
1059
   If two-phase XA commit it enabled or not.
 
1060
 
 
1061
.. _innodb_sync_spin_loops:
 
1062
 
 
1063
* ``innodb_sync_spin_loops``
 
1064
 
 
1065
   :Scope: Global
 
1066
   :Dynamic: No
 
1067
   :Option: :option:`--innodb.sync-spin-loops`
 
1068
 
 
1069
   Count of spin-loop rounds in InnoDB mutexes (30 by default)
 
1070
 
 
1071
.. _innodb_thread_concurrency:
 
1072
 
 
1073
* ``innodb_thread_concurrency``
 
1074
 
 
1075
   :Scope: Global
 
1076
   :Dynamic: No
 
1077
   :Option: :option:`--innodb.thread-concurrency`
 
1078
 
 
1079
   Helps in performance tuning in heavily concurrent environments. Sets the maximum number of threads allowed inside InnoDB. Value 0 will disable the thread throttling.
 
1080
 
 
1081
.. _innodb_thread_sleep_delay:
 
1082
 
 
1083
* ``innodb_thread_sleep_delay``
 
1084
 
 
1085
   :Scope: Global
 
1086
   :Dynamic: No
 
1087
   :Option: :option:`--innodb.thread-sleep-delay`
 
1088
 
 
1089
   Time of innodb thread sleeping before joining InnoDB queue (usec). Value 0 disable a sleep
 
1090
 
 
1091
.. _innodb_use_native_aio:
 
1092
 
 
1093
* ``innodb_use_native_aio``
 
1094
 
 
1095
   :Scope: Global
 
1096
   :Dynamic: No
 
1097
   :Option: :option:`--innodb.diable-native-aio`
 
1098
 
 
1099
   If :ref:`innodb_native_aio_support` enabled or not.
 
1100
 
 
1101
.. _innodb_use_sys_malloc:
 
1102
 
 
1103
* ``innodb_use_sys_malloc``
 
1104
 
 
1105
   :Scope: Global
 
1106
   :Dynamic: No
 
1107
   :Option: :option:`--innodb.use-interal-malloc`
 
1108
 
 
1109
   If system or internal malloc() is being used.
 
1110
 
 
1111
.. _innodb_version_var:
 
1112
 
 
1113
* ``innodb_version``
 
1114
 
 
1115
   :Scope: Global
 
1116
   :Dynamic: No
 
1117
   :Option: :option:`--innodb.version`
 
1118
 
 
1119
   InnoDB version
 
1120
 
 
1121
.. _innodb_write_io_threads:
 
1122
 
 
1123
* ``innodb_write_io_threads``
 
1124
 
 
1125
   :Scope: Global
 
1126
   :Dynamic: No
 
1127
   :Option: :option:`--innodb.write-io-threads`
 
1128
 
 
1129
   Number of background write I/O threads in InnoDB.
 
1130
 
 
1131
.. _innodb_authors:
 
1132
 
 
1133
Authors
 
1134
-------
 
1135
 
 
1136
`Innobase Oy <http://www.innodb.com/>`_
 
1137
 
 
1138
.. _innodb_version:
 
1139
 
 
1140
Version
 
1141
-------
 
1142
 
 
1143
This documentation applies to **innodb 1.1.4**.
 
1144
 
 
1145
To see which version of the plugin a Drizzle server is running, execute:
 
1146
 
 
1147
.. code-block:: mysql
 
1148
 
 
1149
   SELECT MODULE_VERSION FROM DATA_DICTIONARY.MODULES WHERE MODULE_NAME='innodb'
 
1150
 
 
1151
Changelog
 
1152
---------
 
1153
 
 
1154
v1.1.4
 
1155
^^^^^^
 
1156
* First Drizzle version.