MySQL 在线增加表注释、行注释是否会锁表
今天给线上一个一百多万的表加注释的时候,表锁住了半小时,最后 kill 解决了。 由于用的是 Navicat,我想知道,在命令行里 alter comment 会不会也会锁表? (我知道改字段类型等是会锁的,但是加个注释而已,不至于吧?)
今天给线上一个一百多万的表加注释的时候,表锁住了半小时,最后 kill 解决了。 由于用的是 Navicat,我想知道,在命令行里 alter comment 会不会也会锁表? (我知道改字段类型等是会锁的,但是加个注释而已,不至于吧?)
COPY: Operations are performed on a copy of the original table, and table data is copied from the original table to the new table row by row. Concurrent DML is not permitted.
不可以并发
INPLACE: Operations avoid copying table data but may rebuild the table in place. An exclusive metadata lock on the table may be taken briefly during preparation and execution phases of the operation. Typically, concurrent DML is supported.
可能加锁,一般可以并发
INSTANT: Operations only modify metadata in the data dictionary. No exclusive metadata locks are taken on the table during preparation and execution, and table data is unaffected, making operations instantaneous. Concurrent DML is permitted. (Introduced in MySQL 8.0.12)
允许并发
https://dev.mysql.com/doc/refman/8.0/en/alter-table.html