DBAtlas · Veritabanı operasyon atlası

3024: Query execution was interrupted, maximum statement execution time exceeded

MySQL

Ne demek?

Bir SELECT sorgusu, kendisi için tanımlanan azami çalışma süresini (max_execution_time / MAX_EXECUTION_TIME hint) aştığı için MySQL tarafından kesildi. Bu, uzun süren sorguların kaynakları tıkamasını önleyen bir zaman aşımı korumasıdır.

Neden olur?

Sorgu, oturum/genel max_execution_time değerinden ya da SELECT üzerindeki MAX_EXECUTION_TIME(N) optimizer hint'inden daha uzun sürdü. Genellikle verimsiz plan, eksik index, büyük tarama ya da yoğun eşzamanlılık altında yavaşlama nedeniyle olur. (Yalnızca salt-okunur SELECT'lere uygulanır.)

Nasıl çözülür?

Sorguyu EXPLAIN ile inceleyip optimize edin (uygun index'ler, daha seçici koşullar, tam tablo taramalarını azaltma). Sorgunun meşru olarak uzun sürmesi gerekiyorsa ilgili SELECT için MAX_EXECUTION_TIME hint değerini ya da oturum max_execution_time değerini artırın. Ağır analitik sorguları offline bir ortamda/replika üzerinde çalıştırın.

DBAtlas'ta aç →

Aynı motorda diğer kayıtlar