Když se aplikaci nepodaří ukončit nepoužívané připojení, zobrazí se nízký wait_timeout hodnota vám pomůže vyhnout se překročení povoleného počtu připojení. K nastavení tohoto vakua použijte následující pokyny:
-
Přihlaste se na svůj server pomocí Secure Shell® (SSH).
-
Pomocí příkazu sudo upravte
my.cnf, konfigurační soubor MySQL®.$ sudo vi /etc/my.cnf -
Najděte konfiguraci časového limitu a proveďte úpravy, které odpovídají vašemu serveru.
wait_timeout = 28800 interactive_timeout = 28800-
interactive_timeouthodnota neovlivňuje žádná připojení webových aplikací. Nízkýwait_timeoutje normální osvědčený postup. -
Bezstavová prostředí PHP fungují dobře s časovým limitem 60 sekund nebo méně. Aplikace, které používají fond připojení (Java®, .NET® a tak dále), potřebují upravit
wait_timeouthodnota, aby odpovídala jejich nastavení fondu připojení. Výchozí8 hours = 28800sekund funguje dobře se správně nakonfigurovanými fondy připojení. -
Nakonfigurujte
wait_timeoutbýt o něco delší než očekávaná životnost připojení fondu připojení aplikací jako bezpečnostní kontrola. Zvažte změnu hodnoty online, protože to nevyžaduje restart MySQL a můžete ji upravit za běhu serveru, aniž by došlo k výpadkům. Změňte hodnotu naset global wait_timeout=60a všechny nově vytvořené relace jej zdědí. Nezapomeňte zachovat nastavení vmy.cnf. Všechna existující připojení musí dosáhnout staré hodnotywait_timeoutpokud aplikace opustila připojení. Pokud máte úlohy sestav, které během transakce provádějí delší místní zpracování, můžete zvážit problém s těmito úlohamiset session wait_timeout=3600při připojení.
-
-
Uložte změny a ukončete editor.
-
Pomocí následujícího příkazu restartujte MySQL a v případě potřeby použijte změny:
$ sudo /etc/init.d/mysql restart