MySQL optimize & repair cron script

  • Hier ein nützliches Script zum reparieren und optimieren aller Datenbanken
    Es arbeitet alle Tabellen der Datenbanken ab


    mkdir /root/scripts
    nano /root/scripts/mysql_repair.sh


    bitte das Root Passwort anpassen

    Code
    1. ### MySQL Setup ###MUSER="root"MPASS="mysql password"MHOST="localhost"# No need to change below this, unless your mysql_repair_db.sh script isn't on /root/scripts/mysql_repair_db.shMYSQL="$(which mysql)"DBS="$($MYSQL -u $MUSER -h $MHOST -p$MPASS -Bse 'show databases')"for db in $DBSdo if [ "$db" != "information_schema" ]; then RES="$(/root/scripts/mysql_repair_db.sh --optimize --credentials "-u${MUSER} -p${MPASS}" $db)" #echo $RES >> /root/scripts/log_mysql_optimize RES="$(/root/scripts/mysql_repair_db.sh --repair --credentials "-u${MUSER} -p${MPASS}" $db)" #echo $RES >> /root/scripts/log_mysql_repair fidone


    nano /root/scripts/mysql_repair_db.sh


    hier gibt es nichts zu ändern nur einfügen und speichern


    chmod 700 /root/scripts/mysql_repair.sh
    chmod 700 /root/scripts/mysql_repair_db.sh


    einen neuen cronjob erstellen (ich lasse es täglich um 17:15 laufen)
    /root/scripts/mysql_repair.sh

    Edited once, last by fulltilt ().

  • Wird es noch ins Deutsche übersetzt? Ansonsten verschiebe ichs ins englische HowTo-Forum :)


    PS: Wenn du willst, kannst ja 2 Threads öffnen, eines im German Corner auf Deutsch und die englische Version im HowTo-Forum http://forum.i-mscp.net/Forum-Howtos


  • mir ist vor 3 Tagen eine DB gecrashed währrend mysqlcheck
    ich musste alle Datenbanken löschen und über einen Dump wiederherstellen


    dürfte aber eigentlich doch nie passieren, oder? Evt. wärs super, wenn du das den mysql-Entwicklern meldest..

  • Was hast denn für ne MySql version drauf ?


    Ich verwende zwar noch in älteren Projekten MyIsam, aber ehrlich gesagt hatte ich seit Mysql 5 auch sogut wie keine Probleme mehr damit, die Probleme sind vermehrt bei der vierer aufgetreten....


    Kleiner Tipp übrigens mal am Rande: InnoDB ist meist deutlich performanter, Transaktionssicher und braucht weder optimierungen noch repairs :P Gibt eigentlich kaum Datenbank Anwendungen, in denen MyIsam spürbar performanter ist meiner Erfahrung nach...
    Jedoch gibt es einen FETTEN Nachteil(wenn du das brauchst): Kein Fulltext index, zudem wirds nicht bei jedem Hoster unterstützt und ich würde es < Mysql 5 nicht empfehlen.