Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak ograniczyć czas wykonywania sql

Aby automatycznie zabić zapytanie w MySQL po długim czasie wykonania:

  1. Utwórz procedurę składowaną jako:

    DECLARE CURSOR cur1 FOR SELECT ID 
                        FROM INFORMATION_SCHEMA.PROCESSLIST 
                        WHERE COMMAND = 'Query' AND TIME > 120;
    

    następnie w pętli kursora wykonaj:

    FETCH ID INTO @var_kill_id;
    KILL QUERY @var_kill_id;
    
  2. Utwórz EVENT FOR EVERY 5 SECONDS i po prostu CALL powyższa procedura w nim.

Uwaga:KILL QUERY po prostu zabija zapytanie, a połączenie MySQL nie jest zerwane. zobacz tutaj .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. int na string w MySQL

  2. Czy ten diagram ER powinien zamiast tego używać relacji trójskładnikowej?

  3. mysql - po wstawieniu zignoruj ​​pobierz klucz podstawowy

  4. Usuń wiele wierszy, zaznaczając pola wyboru za pomocą PHP

  5. Czy w MySQL istnieje indeks FIND_IN_SET?