mysql的线程处于System lock状态下
时间:2021-07-01 10:21:17
帮助过:192人阅读
the thread state has
not been updated since. This
is a very general state that can occur
for many reasons.
For example, the thread
is going
to request
or is waiting
for an internal
or external system lock
for the
table. This can occur
when InnoDB waits
for a
table-level lock during execution
of LOCK TABLES.
If this state
is being caused
by requests
for external locks
and you are
not using multiple mysqld servers
that are accessing the same MyISAM tables, you can disable external system locks
with the
--skip-external-locking option. However, external locking is
disabled by default, so it is likely that this option will have no effect. For SHOW PROFILE, this state means the thread is requesting the lock (not waiting
for it).
System lock
这个线程是被mysql_lock_tables()调用的。这种状态可能是很多种原因造成的。
例如,一个线程想请求或者正在等一个表的内部或者外部的system lock;
也可能是InnoDB在执行lock tables的时候,等表级锁;
也可能是请求内部锁,比如访问相同MyISM表没有用多个mysqld服务;
遇到这种情况,可以用--skip-external-locking选项,禁用内部的system locks。然而,内部锁如果默认禁用的话,那个选项就会没用了。
如果是在show profile的时候遇到这种状态,就说明这个线程正在请求锁(不是等)。
来源:https://dev.mysql.com/doc/refman/5.7/en/general-thread-states.html
mysql的线程处于System lock状态下
标签:default 5.7 disabled any lock server color 禁用 服务