sql >> Databáze >  >> RDS >> Mysql

Jak mohu zastavit dotaz MySQL, pokud trvá příliš dlouho?

Na CPAN je k tomu pěkný skript v Perlu:http ://search.cpan.org/~rsoliv/mysql-genocide-0.03/mysql-genocide

Stačí pouze naplánovat spuštění se správnými parametry. Vytvořte soubor CRONtab /etc/cron.d/mysql_query_timeout naplánovat spuštění každou minutu:

* * * * * root /path/to/mysql-genocide -t 7200 -s -K

Kde 7200 je maximální povolená doba provedení v sekundách. Přepínač -s odfiltruje všechny dotazy kromě SELECT. Přepínač -K dává skriptu pokyn, aby ukončil odpovídající procesy.

Uživatel root by měl mít možnost spouštět místní nástroje mysql bez ověřování, jinak budete muset zadat přihlašovací údaje na příkazovém řádku.



  1. Vytvořit tabulku, pokud neexistuje, z mysqldump

  2. Převeďte číslo měsíce na název měsíce v PostgreSQL

  3. Vložení DEFAULT hodnoty do sloupce, když je parametr NULL

  4. Změňte heslo pro přihlášení k serveru SQL