GNU/Linux >> Znalost Linux >  >> Cent OS

Jak najít a ukončit / zabít proces MySQL

Úvod

Zbytečné procesy MySQL mohou způsobit problémy s výkonem ve vašem systému. V průběhu času se aktivní vlákna hromadí a zastavují váš server, což uživatelům brání v přístupu k tabulkám a provádění požadavků.

Když je využití zdrojů extrémně vysoké, možná budete muset zabít procesy MySQL. Tato příručka vám ukáže, jak identifikovat procesy MySQL a ukončit proces.

Předpoklady

  • Přístup k příkazovému řádku/oknu terminálu
  • Nainstalováno MySQL nebo MariaDB
  • Uživatel s sudo nebo root privilegia

Jak najít seznam procesů MySQL

Než budete moci najít proces a zabít jej, musíte se přihlásit k místnímu nebo vzdálenému serveru MySQL. Chcete-li se přihlásit ke svému místnímu účtu MySQL jako root, otevřete terminál a zadejte:

mysql -u root -p

Po zobrazení výzvy zadejte heslo. Když se načte shell MySQL, výzva zobrazí mysql> .

Chcete-li najít proces, který chcete ukončit nebo ukončit, načtěte seznam se všemi aktivními relacemi.
V prostředí MySQL použijte tento dotaz:

SHOW PROCESSLIST;

Výstup zobrazuje následující informace:

V seznamu můžete mít více položek. Poznamenejte si Id procesu, který chcete zabít. Time vám pomůže určit nejdéle běžící procesy. To jsou obvykle ty, které chcete ukončit jako první.

Jak zabít proces MySQL

Chcete-li ukončit relaci MySQL ze seznamu, použijte KILL dotaz následovaný Id vlákna jste si všimli dříve.

KILL 14;

Shell zobrazuje stav dotazu a počet ovlivněných řádků:„Dotaz je v pořádku, 0 ovlivněných řádků (0,06 s) . Tento dotaz ukončí připojení k databázi, včetně všech operací spojených s připojením.

Pamatujte, že uživatel musí mít správná oprávnění, aby mohl proces ukončit.

Jak zabít všechny procesy MySQL pro konkrétního uživatele

MySQL nemá jedinečný příkaz pro ukončení všech procesů.

Chcete-li ukončit všechny procesy pro konkrétního uživatele, použijte CONCAT vytvořit soubor se seznamem vláken a příkazů. V našem případě jsme zadali root jako uživatel. Chcete-li určit jiného uživatele, nahraďte root s požadovaným uživatelským jménem.

SELECT CONCAT('KILL ',id,';') FROM information_schema.processlist WHERE user='root' INTO OUTFILE '/tmp/process_list.txt';

Tento dotaz vytvořil soubor s názvem process_list.txt . Název si můžete upravit podle svého. Otevřete soubor a zkontrolujte, zda se jedná o procesy, které chcete ukončit. Až budete připraveni, zadejte:

SOURCE /tmp/process_list.txt;

Do dotazu můžete přidat podmínky a zúžit tak seznam procesů ve výstupním souboru. Přidejte například time > 1000 do příkazu zahrnout pouze procesy s hodnotou času vyšší než 1000.

SELECT CONCAT('KILL ',id,';') FROM information_schema.processlist WHERE user='root' and time>1000 INTO OUTFILE '/tmp/process_list.txt';

Cent OS
  1. Jak najít konfigurační soubory MySQL, PHP a Apache

  2. Jak najít a zabít zombie proces v Linuxu

  3. Jak zjistit ID procesu (pid) běžícího terminálového programu?

  1. Co jsou zombie procesy a jak najít a zabít zombie procesy?

  2. Jak najdu a ukončím proces v Ubuntu

  3. Linux:Najděte a zabijte zombie procesy

  1. Jak zabít proces zombie na Linuxu

  2. Jak zabít proces v Linuxu? Příkazy k ukončení

  3. Jak zabít proces v Linuxu