+ Antworten
Seite 1 von 2 1 2 LetzteLetzte
Ergebnis 1 bis 10 von 16

Thema: MySQl Datenbank - Überhang - Optimize Script

  1. #1
    Neu an Board
    Registriert seit
    15.05.2006
    Beiträge
    43
    Bedankte sich
    29
    Erhielt 6 Danksagungen
    in 6 Beiträgen

    Daumen hoch MySQl Datenbank - Überhang - Optimize Script

    Hallo,
    habe im Netz folgendes PHP-Script gefunden um die Datenbanken bei Überhang etc. zu optimieren.
    Wie gesagt es ist nicht von mir --> DANK dem Autor - mir hat´s geholfen denke ich --> abwarten.
    Was meint Ihr dazu?

    Original Text:
    Optimize DB Tabellen
    Mit diesem Script ist es möglich, per Cronjob oder durch manuellen Aufruf alle Tabellen aller Datenbanken zu optimieren.
    Dadurch entstehen kaum noch Datenbankfehler aufgrund von Datenüberhängen.

    <?php
    $mysqlhost = "localhost"; // MySQL-Host angeben
    $mysqluser = "root"; // MySQL-User angeben
    $mysqlpwd = "**** "; // Passwort angeben

    ###########################################

    $connection = mysql_connect($mysqlhost, $mysqluser, $mysqlpwd);
    if (mysql_error()) {
    echo "Konnte Datenbankserver nicht anwählen, bitte versuchen Sie es später nocheinmal. <!-- ".mysql_error()."//-->";
    }

    $db_list = mysql_list_dbs();
    $i = 0;
    $cnt = mysql_num_rows($db_list);

    echo "<table cellspacing=\"0\" cellpadding=\"0\" width=\"500\" align=\"center\">\n";

    while ($i < $cnt) {

    $db = mysql_db_name($db_list, $i);
    ###########################################

    mysql_select_db($db, $connection);
    $result = mysql_list_tables($db);

    echo "<tr>
    <td colspan=\"2\" style=\"font-weight:bold\"><br />Datenbank: <span style=\"color:blue\">".$db."</span></td>
    </tr>\n";
    echo "<tr>\n
    <td>Tabelle</td>
    <td>Ergebnis</td>\n
    </tr>\n";
    while ($row = mysql_fetch_row($result)) {

    $sql = "OPTIMIZE TABLE `".$row[0]."`";
    $erg = mysql_query($sql, $connection) or die(mysql_error());
    $daten= mysql_fetch_array($erg, MYSQL_ASSOC);

    if($daten){

    switch ($daten['Msg_text']) {
    case "Table is already up to date":
    $color = "#CAF9AE";
    break;

    case "OK":
    $color = "#63EB66";
    break;

    case "The handler for the table doesn't support check/repair":
    $color = "#63EB66";
    break;

    default:
    $color = "#F21C1C";
    break;
    }

    echo "<tr style=\"background-color:".$color."\">
    <td width=\"300\" nowrap>".$row[0]."</td>
    <td width=\"200\" nowrap>".$daten['Msg_text']."</td>
    </tr>\n";
    }
    }
    ###########################################
    $i++;
    }
    echo "</table>\n";
    ?>
    Screenshot nach Ablauf -> im Anhang:
    Angehängte Grafiken

  2. #2
    axel.sauerhoefer
    Gast

    Standard

    Hi,

    das Skript sieht ganz vernüpftig aus, ich würde noch ein paar mehr Fehlerbehandlungen einbauen, aber sonst bestimmt brauchbar bei großen Datenmengen.

    gruss axel

  3. Erhielt Danksagungen von:


  4. #3
    Neu an Board
    Registriert seit
    15.05.2006
    Beiträge
    43
    Bedankte sich
    29
    Erhielt 6 Danksagungen
    in 6 Beiträgen

    Standard

    Hi,

    klar bin auch nicht sooo ganz glücklich damit.
    Dauert auch manchmal recht lange bis es durch ist.
    Bei 1und1 musst du ja ständig optimieren.

    Vielleicht ging’s einfacher hat einer eine Idee?

    Gruß GeoB

  5. #4
    Gesperrt
    Registriert seit
    03.05.2005
    Ort
    joomlers.de
    Beiträge
    4.695
    Bedankte sich
    124
    Erhielt 989 Danksagungen
    in 941 Beiträgen

    Standard

    phpmyadmin -> alle tabellen markieren -> markierte optimieren .

  6. Erhielt Danksagungen von:


  7. #5
    Hat hier eine Zweitwohnung Avatar von AbRaXaS
    Registriert seit
    23.08.2006
    Ort
    Vechta
    Beiträge
    1.176
    Bedankte sich
    34
    Erhielt 152 Danksagungen
    in 148 Beiträgen

    Standard

    Zitat Zitat von amarok Beitrag anzeigen
    phpmyadmin -> alle tabellen markieren -> markierte optimieren .
    Das ist auch das beste was man machen kann, denn dann weiß man definitiv, WAS man gemacht hat. Außerdem ist das mit dem Überhang nicht soooooo wild, zumindest, wenn du nicht gerade Überhang im MB Bereich hast.
    Ich würde eher nach den Skripten schauen, dass deren Ausführungszeit nicht zu lange dauert, dass macht den meisten Hostern nämlich mehr Probs als Tabellenüberhänge.
    Probleme sind da um gelöst zu werden!

    If only you and dead people can read HEX, how many people can read it.

    57006


  8. #6
    Neu an Board
    Registriert seit
    15.05.2006
    Beiträge
    43
    Bedankte sich
    29
    Erhielt 6 Danksagungen
    in 6 Beiträgen

    Standard

    Zitat Zitat von AbRaXaS Beitrag anzeigen
    Das ist auch das beste was man machen kann, denn dann weiß man definitiv, WAS man gemacht hat. Außerdem ist das mit dem Überhang nicht soooooo wild, zumindest, wenn du nicht gerade Überhang im MB Bereich hast.
    Ich würde eher nach den Skripten schauen, dass deren Ausführungszeit nicht zu lange dauert, dass macht den meisten Hostern nämlich mehr Probs als Tabellenüberhänge.
    Hallo,
    ja der "phpmyadmin -> alle tabellen markieren -> markierte optimieren" ist mir natürlich bekannt
    hab ich auch bisher so durchgeführt. Hab ich es ausgeführt läuft alles Super.
    Leider müßte ich das täglich mehrfach ausführen weil der Seitenaufbau so lange dauert,
    was natürlich keiner machen kann deshalb ein Cronjob.

    Was verstehst du genau unter "wenn du nicht gerade Überhang im MB Bereich hast" ?

    Gruß GeoB

  9. #7
    Hat hier eine Zweitwohnung Avatar von AbRaXaS
    Registriert seit
    23.08.2006
    Ort
    Vechta
    Beiträge
    1.176
    Bedankte sich
    34
    Erhielt 152 Danksagungen
    in 148 Beiträgen

    Standard

    wenn du auf die phpmyadmin seite gehst und links auf deine DB klickst, dann werden rechts ja immer die Tabellen angezeigt. Der letzte Wert zeigt den Überhang in bytes (kB, oder halt MB).
    Du müßtest mehrmals täglich die Tabellen optimieren?? Was läuft denn auf deiner Internetseite? Ne große Community? Ein Onlineshop? Wieviele Besucher hast du täglich?
    Ich frage das, um herauszufinden, ob es an der größe deiner Internetseite oder deinen Usern liegt. Wenn du viele DB-Prozesse hast, die auf die DB-Zugreifen, löschen, editieren usw., dann kann es zu großen Überhängen kommen.
    Probleme sind da um gelöst zu werden!

    If only you and dead people can read HEX, how many people can read it.

    57006


  10. #8
    Neu an Board
    Registriert seit
    15.05.2006
    Beiträge
    43
    Bedankte sich
    29
    Erhielt 6 Danksagungen
    in 6 Beiträgen

    Standard

    Zitat Zitat von AbRaXaS Beitrag anzeigen
    wenn du auf die phpmyadmin seite gehst und links auf deine DB klickst, dann werden rechts ja immer die Tabellen angezeigt. Der letzte Wert zeigt den Überhang in bytes (kB, oder halt MB).
    Du müßtest mehrmals täglich die Tabellen optimieren?? Was läuft denn auf deiner Internetseite? Ne große Community? Ein Onlineshop? Wieviele Besucher hast du täglich?
    Ich frage das, um herauszufinden, ob es an der größe deiner Internetseite oder deinen Usern liegt. Wenn du viele DB-Prozesse hast, die auf die DB-Zugreifen, löschen, editieren usw., dann kann es zu großen Überhängen kommen.
    Danke für deine Hilfe,

    die Seite ist nicht groß keine Community, kein Onlineshop und es gibt auch nur
    zwei User wenns hoch kommt 20 Besucher --> dürfte nicht vorkommen.

    Ich hab bei 1und1 angerufen, dort wurde mir gesagt dass
    dieses Problem bekannt sei (WÖRTLICH: die Sache mit Joomla nimmt bei uns stark zu)
    und bis Ende dieser Woche behoben würde.

    Ehrlich gesagt, ich glaubs nicht und würde gern den Befehl:
    "phpmyadmin -> alle tabellen markieren -> markierte optimieren" mit einem Cronjob
    automatisieren denn dann klappts auch --> eine Zeit lang

    Gruß GeoB

  11. #9
    Hat hier eine Zweitwohnung Avatar von AbRaXaS
    Registriert seit
    23.08.2006
    Ort
    Vechta
    Beiträge
    1.176
    Bedankte sich
    34
    Erhielt 152 Danksagungen
    in 148 Beiträgen

    Standard

    stimmt schon.
    Solange der Provider nicht meckert ... aber nicht immer sind die User Schuld. Vielleicht hat 1und1 zuviele User auf einem Server, sodass MySQL nicht mehr ganz so schnell ist, da die meisten Anwendungen DB-basiert laufen ...

    schlecht ist das Skript nicht, aber wenn es an sowas geht, dann mache ich das doch lieber per Hand. Sozusagen "Handarbeit".
    Probleme sind da um gelöst zu werden!

    If only you and dead people can read HEX, how many people can read it.

    57006


  12. Erhielt Danksagungen von:


  13. #10
    Neu an Board
    Registriert seit
    15.05.2006
    Beiträge
    43
    Bedankte sich
    29
    Erhielt 6 Danksagungen
    in 6 Beiträgen

    Daumen hoch

    Zitat Zitat von AbRaXaS Beitrag anzeigen
    stimmt schon.
    Solange der Provider nicht meckert ... aber nicht immer sind die User Schuld. Vielleicht hat 1und1 zuviele User auf einem Server, sodass MySQL nicht mehr ganz so schnell ist, da die meisten Anwendungen DB-basiert laufen ...

    schlecht ist das Skript nicht, aber wenn es an sowas geht, dann mache ich das doch lieber per Hand. Sozusagen "Handarbeit".
    Hallo,
    hab die Datenbank bei 1und1 gelöscht und neu angelegt, bin dadurch auf einem neuen anscheinend nicht so belasteten Datenbankserver gelandet.
    Seit einigen Tagen läuft die Datenbank gut ohne Probleme auch der Seitenaufbau ist wieder schneller geworden.

    Tatsächlich lag das Problem bei 1und1, mal sehn was die Zukunft für Webhosting im Home Tarif bringt.

    Danke an alle für die Hilfe.

+ Antworten
Seite 1 von 2 1 2 LetzteLetzte

Ähnliche Themen

  1. Joomlaboard deutsche Sprachunterstützung aktivieren
    Von willi1 im Forum Joomla Komponenten
    Antworten: 26
    Letzter Beitrag: 19.02.2007, 12:37
  2. 1 Mysql Datenbank / 2 Domains = Ein Zugriff???
    Von heffas im Forum Off Topic
    Antworten: 4
    Letzter Beitrag: 10.10.2006, 21:45
  3. Update von TFSforMAMBO 2.01 auf JoomlaStats 2.1
    Von zandl im Forum Joomla Komponenten
    Antworten: 1
    Letzter Beitrag: 09.05.2006, 14:36
  4. server4you datenbank mysql
    Von leinix im Forum Joomla Installation
    Antworten: 16
    Letzter Beitrag: 17.02.2006, 16:57
  5. MySQL Datenbank anlegen - geht doch auch ohne!
    Von yoso im Forum Mambo Installation
    Antworten: 11
    Letzter Beitrag: 20.03.2005, 08:06

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein