09.12.2015 19:35, shawn l.green пишет:
On 12/9/2015 9:59 AM, Artem Kuchin wrote:
Hello!
|THREAD_ID LOCK_MODE LOCK_DURATION LOCK_TYPE
TABLE_SCHEMA TABLE_NAME
268871 MDL_INTENTION_EXCLUSIVE MDL_EXPLICIT Global read lock
270022 MDL_INTENTION_EXCLUSIVE MDL_STATEMENT Global read lock
268871 MDL_SHARED_NO_READ_WRITE MDL_EXPLICIT Table metadata
lock spru searchsobjects
268871 MDL_SHARED_NO_READ_WRITE MDL_EXPLICIT Table metadata
lock spru searches
268871 MDL_INTENTION_EXCLUSIVE MDL_EXPLICIT Schema metadata lock
spru
270022 MDL_INTENTION_EXCLUSIVE MDL_TRANSACTION Schema metadata lock
spru
You gave the answer in your last statement: "All tables are myisam" .
The MyISAM storage engine is not transactional and it does not do
row-level locking. All UPDATE and DELETE operations require a full
table lock to perform and those must wait for all earlier readers or
writers to exit the table before they can start. INSERT operations
are special as you can enable a mode to allow INSERTs to happen only
at the end of the file and not be blocked while one of the other two
operations are in progress.
TABLE LOCK is okay, i understand that. But i see GLOBAL READ LOCK - not
table lock, but GLOBAL.
As i understand that it means ALL TABLES IN ALL DATABASES. Why?
Artem
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/mysql