Редактировать: я нашел длительный запрос, который заблокировал таблицы в вопросе.Фактически это была первая итерация запроса, который я пытаюсь выполнить - тайм-аут и блокировка таблиц.Но запрос продолжает выполняться до истечения времени ожидания и снова блокируется.Что мне делать?
У меня есть две таблицы с одинаковой точной схемой.Единственное отличие состоит в том, что ops_weekly_sla_notes
имеет три поля, заполненные данными, которых нет в некоторых записях в ops_weekly_sla
.
Я попытался использовать объединение, подзапрос, даже просто обновить одну запись,Ничего не хочет работать.Я прочитал, что ошибка связана с ожиданием снятия блокировки - что я недостаточно обучен на MySQL, чтобы знать, как устранить неполадки.Я опубликовал статус INNODB ... любая помощь будет принята с благодарностью.
Джим
UPDATE ops_weekly_sla s
JOIN
ops_weekly_sla_notes n ON s.EMTrackingNumber = n.EMTrackingNumber
SET
s.MetSLA = n.MetSLA
WHERE
ISNULL(s.MetSLA);
-- -----------------------------------------------------
UPDATE ops_weekly_sla s
JOIN
ops_weekly_sla_notes n ON s.EMTrackingNumber = n.EMTrackingNumber
SET
s.MetSLA = n.MetSLA
WHERE
s.EMTrackingNumber = 'DEP-01270116';
-- -----------------------------------------------------
UPDATE ops_weekly_sla s
SET
s.MetSLA = n.MetSLA
WHERE
s.EMTrackingNumber = n.EMTrackingNumber;
-- -----------------------------------------------------
UPDATE ops_weekly_sla s
SET
s.MetSLA = n.MetSLA
WHERE
s.EMTrackingNumber = n.EMTrackingNumber
s.EMTrackingNumber = 'DEP-01270116';
Показать движок Статус INNODB:
=====================================
190924 12:19:47 INNODB MONITOR OUTPUT
=====================================
Per second averages calculated from the last 59 seconds
-----------------
BACKGROUND THREAD
-----------------
srv_master_thread loops: 765 1_second, 765 sleeps, 63 10_second, 157 background, 157 flush
srv_master_thread log flush and writes: 766
----------
SEMAPHORES
----------
OS WAIT ARRAY INFO: reservation count 3603, signal count 3599
Mutex spin waits 7152, rounds 181685, OS waits 3144
RW-shared spins 61, rounds 1830, OS waits 61
RW-excl spins 0, rounds 60, OS waits 2
Spin rounds per wait: 25.40 mutex, 30.00 RW-shared, 60.00 RW-excl
------------
TRANSACTIONS
------------
Trx id counter 345DDC
Purge done for trx's n:o < 345DCC undo n:o < 0
History list length 595
LIST OF TRANSACTIONS FOR EACH SESSION:
---TRANSACTION 345DDB, not started
MySQL thread id 6300, OS thread handle 0xe64, query id 120540 tx1ylt5w2mtn2.global.ds.honeywell.com 129.235.154.202 jconnors
SHOW ENGINE INNODB STATUS
---TRANSACTION 0, not started
MySQL thread id 6190, OS thread handle 0xb1c, query id 119577 tx1ylt5w2mtn2.global.ds.honeywell.com 129.235.154.202 jconnors
---TRANSACTION 0, not started
MySQL thread id 6175, OS thread handle 0xa64, query id 119575 tx1ylt5w2mtn2.global.ds.honeywell.com 129.235.154.202 jconnors
---TRANSACTION 345DCE, ACTIVE 2301 sec fetching rows, thread declared inside InnoDB 204
mysql tables in use 2, locked 2
1298 lock struct(s), heap size 129464, 77053 row lock(s)
MySQL thread id 6191, OS thread handle 0xde8, query id 114065 tx1ylt5w2mtn2.global.ds.honeywell.com 129.235.154.202 jconnors Sending data
UPDATE ops_weekly_sla s
JOIN
ops_weekly_sla_notes n ON s.EMTrackingNumber = n.EMTrackingNumber
SET
s.MetSLA = n.MetSLA
WHERE
ISNULL(s.MetSLA)
--------
FILE I/O
--------
I/O thread 0 state: wait Windows aio (insert buffer thread)
I/O thread 1 state: wait Windows aio (log thread)
I/O thread 2 state: wait Windows aio (read thread)
I/O thread 3 state: wait Windows aio (read thread)
I/O thread 4 state: wait Windows aio (read thread)
I/O thread 5 state: wait Windows aio (read thread)
I/O thread 6 state: wait Windows aio (write thread)
I/O thread 7 state: wait Windows aio (write thread)
I/O thread 8 state: wait Windows aio (write thread)
I/O thread 9 state: wait Windows aio (write thread)
Pending normal aio reads: 0 [0, 0, 0, 0] , aio writes: 0 [0, 0, 0, 0] ,
ibuf aio reads: 0, log i/o's: 0, sync i/o's: 0
Pending flushes (fsync) log: 0; buffer pool: 0
1613 OS file reads, 5257 OS file writes, 444 OS fsyncs
0.00 reads/s, 0 avg bytes/read, 0.00 writes/s, 0.00 fsyncs/s
-------------------------------------
INSERT BUFFER AND ADAPTIVE HASH INDEX
-------------------------------------
Ibuf: size 1, free list len 5, seg size 7, 0 merges
merged operations:
insert 0, delete mark 0, delete 0
discarded operations:
insert 0, delete mark 0, delete 0
Hash table size 222149, node heap has 106 buffer(s)
0.00 hash searches/s, 0.00 non-hash searches/s
---
LOG
---
Log sequence number 22786537962
Log flushed up to 22786537962
Last checkpoint at 22786537962
0 pending log writes, 0 pending chkp writes
243 log i/o's done, 0.00 log i/o's/second
----------------------
BUFFER POOL AND MEMORY
----------------------
Total memory allocated 114835456; in additional pool allocated 0
Dictionary memory allocated 81920
Buffer pool size 6848
Free buffers 1747
Database pages 4988
Old database pages 1821
Modified db pages 0
Pending reads 0
Pending writes: LRU 0, flush list 0, single page 0
Pages made young 0, not young 0
0.00 youngs/s, 0.00 non-youngs/s
Pages read 1602, created 3386, written 4840
0.00 reads/s, 0.00 creates/s, 0.00 writes/s
Buffer pool hit rate 1000 / 1000, young-making rate 0 / 1000 not 0 / 1000
Pages read ahead 0.00/s, evicted without access 0.00/s, Random read ahead 0.00/s
LRU len: 4988, unzip_LRU len: 0
I/O sum[0]:cur[0], unzip sum[0]:cur[0]
--------------
ROW OPERATIONS
--------------
1 queries inside InnoDB, 0 queries in queue
1 read views open inside InnoDB
Main thread id 2232, state: waiting for server activity
Number of rows inserted 249812, updated 22520, deleted 0, read 4107525217
0.00 inserts/s, 0.00 updates/s, 0.00 deletes/s, 492956.15 reads/s
----------------------------
END OF INNODB MONITOR OUTPUT
============================