content_image/717750.jpg content_image/717751.jpg content_image/717759.jpg content_image/717752.jpg content_image/717753.jpg
<img src='content_image/717750.jpg'>

Enable external locking (system locking), which is disabled by default. If you use this option on a system on which lockd  does not fully work (such as Linux), it is easy for mysqld  to deadlock. 

To disable external locking explicitly, use --skip-external-locking . 

External locking affects only MyISAM  table access. For more information, including conditions under which it can and cannot be used, see Section 8.11.5, “External Locking” . 

• --flush 

<img src='content_image/717751.jpg'>

Flush (synchronize) all changes to disk after each SQL statement. Normally, MySQL does a write of all changes to disk only after each SQL statement and lets the operating system handle the synchronizing to disk. See Section B.3.3.3, “What to Do If MySQL Keeps Crashing” . 

<img src='content_image/717759.jpg'>

• --gdb 

## Note 

If --flush  is specified, the value of flush_time  does not matter and changes to flush_time  have no effect on flush behavior. 

<img src='content_image/717752.jpg'>

Install an interrupt handler for SIGINT  (needed to stop mysqld  with ^C  to set breakpoints) and disable stack tracing and core file handling. See Section 5.9.1.4, “Debugging mysqld under gdb” . 

On Windows, this option also suppresses the forking that is used to implement the RESTART  statement: Forking enables one process to act as a monitor to the other, which acts as the server. However, forking makes determining the server process to attach to for debugging more difficult, so starting the server with --gdb  suppresses forking. For a server started with this option, RESTART  simply exits and does not restart. 

In non-debug settings, --no-monitor  may be used to suppress forking the monitor process. 

• --initialize , -I 

<img src='content_image/717753.jpg'>

