简体   繁体   中英

MySQL - what does skip-locking in my.cnf do?

I'm using MySQL 5.0.67 on RHEL5 and basing my configuration on my-huge.cnf.

I can't find anything in the MySQL manual for the row 'skip-locking' which appears in the config file.

Should this be replaced with 'skip_external_locking' or should I just remove the row entirely as that is now a default.

MySQL Manual for skip-external-locking

Thanks.

see http://dev.mysql.com/doc/refman/5.0/en/external-locking.html

quote:

If you run multiple servers that use the same database directory (not recommended), each server must have external locking enabled.

It really just has to do with the dangers presented by multiple processes accessing the same data. In many DBMS situations you want to lock the table/row before performing an operation, and unlocking afterwards. This is to prevent possible data corruption.

Edit: see http://dev.mysql.com/doc/refman/4.1/en/news-4-0-3.html Quote

Renamed --skip-locking to --skip-external-locking.

An additional note for anyone who doesn't follow the link provided by @Jonathan Fingland :
8.7.4. External Locking

This option only applies to MyISAM tables.

As Richard indicated, external locking is disabled by default. You need to enable external locking if you use myisamchk for write operations or if you use myisampack to pack tables.

From the docs:

If you use myisamchk to perform table maintenance operations on MyISAM tables, you must either ensure that the server is not running, or that the server has external locking enabled so that it locks table files as necessary to coordinate with myisamchk for access to the tables. The same is true for use of myisampack to pack MyISAM tables.

If you use myisamchk for write operations such as repairing or optimizing tables, or if you use myisampack to pack tables, you must always ensure that the mysqld server is not using the table. If you don't stop mysqld, you should at least do a mysqladmin flush-tables before you run myisamchk. Your tables may become corrupted if the server and myisamchk access the tables simultaneously.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM