Hur man optimerar en MySQL-databas med SSH?

Förbättra din webbplats prestanda genom att optimera MySQL-databastabeller. Optimeringsprocessen innebär att omorganisera tabell- och indexdata, vilket resulterar i utrymmesbesparingar och förbättrad I/O-effektivitet. Denna guide visar hur du optimerar dina tabeller med hjälp av SSH, vilket säkerställer optimal funktionalitet för din webbplats.

Bakgrund

Att optimera din MySQL-databas via SSH är viktigt för att förbättra prestandan, särskilt när phpMyAdmin stöter på problem med stora databaser, vilket leder till timeouts. SSH tillhandahåller en pålitlig metod för optimering som fungerar även för stora databaser.

Så här gör du

  1. Steg 1: Optimera databastabeller via SSH

    Kör följande kommando för att optimera alla tabeller i din databas:

    mysql -u användarnamn -ppassword -h värdnamn databasnamn -e "show tables" | grep -v Tables_in | grep -v "+" | gawk '{print "optimize table " $1 ";"}' | mysql -u användarnamn -ppassword -h värdnamn databasnamn

    Ersätt platshållarna med din faktiska databasinformation:

    • användarnamn: Ditt databas användarnamn
    • lösenord: Användarens lösenord
    • värdnamn: Aktivt databasvärdnamn
    • databasnamn: Namnet på databasen där du kör kommandot

    Detta kommando utför samma optimeringsfunktion som phpMyAdmin. Valfritt kan du fånga kommandots logg genom att lägga till >> results.txt för att granska resultaten senare.

  2. Steg 2: Automatisera med cron-jobb (valfritt)

    För att automatisera optimeringen månatligt kan du skapa ett skal-skript med mysqlcheck:

    #!/bin/sh
    /usr/bin/mysqlcheck -o -v -u ANVÄNDARE -p LÖSENORD -h MYSQL.EXAMPLE.COM DATABASNAMN;

    Ersätt de versala platshållarna (ANVÄNDARE, LÖSENORD, MYSQL.EXAMPLE.COM och DATABASNAMN) med dina specifika databasuppgifter. Detta skript, när det schemaläggs som ett månatligt cron-jobb, säkerställer det rutinmässiga underhållet och optimeringen av dina MySQL-tabeller.

  3. Steg 3: Reparera tabeller vid behov

    För att reparera en tabell istället för att optimera den via SSH, kör följande kommando:

    mysql -u användarnamn -ppassword -h värdnamn databasnamn -e "show tables" | grep -v Tables_in | grep -v "+" | gawk '{print "repair table " $1 ";"}' | mysql -u användarnamn -ppassword -h värdnamn databasnamn

    Ersätt platshållarna med din riktiga databasinformation.


Was this article helpful?

mood_bad Dislike 0
mood Like 0
visibility Views: 8737