Samuel Vogel: MySQL: Alle Datenbanken und Tabellen auflisten

Hallo Forum,

Ich suche im Moment nach einer Moeglichkeit, alle Datenbanken des MySQL Servers aufzulisten, inklusive der Anzahl der Tabellen die sie enthalten.
Ich vermute mal dies geht nur in Verbindung mit PHP.

Mir fehlen jedoch jegliche Anhaltspunkte wie ich das Anstellen soll... Wie z.B. kann ich alle Datenbanken ausgeben lassen???

Hat jemand eine Starthilfe fuer mich?

so long,
Samy

  1. Hi,

    Ich suche im Moment nach einer Moeglichkeit, alle Datenbanken des MySQL Servers aufzulisten, inklusive der Anzahl der Tabellen die sie enthalten.
    Ich vermute mal dies geht nur in Verbindung mit PHP.

    Nein, natürlich nicht aber es geht "auch" mit PHP

    Hat jemand eine Starthilfe fuer mich?

    http://de.php.net/manual/de/ref.mysql.php
    *scroll mal ganz nach unten

    carpe diem
    Pia

    1. Obwohl ich schon vor 2 Stunden auf die von dir genannte Seite ging, liegt die geschaetze Zeit sie sich mit allen MySQL-Funktions Beschreibungen komplett durchzulesen bei ca. 20 Stunden. ;)

      Kann mir jemand eine Abkuerzung zeigen?

      1. Obwohl ich schon vor 2 Stunden auf die von dir genannte Seite ging, liegt die geschaetze Zeit sie sich mit allen MySQL-Funktions Beschreibungen komplett durchzulesen bei ca. 20 Stunden. ;)

        Kann mir jemand eine Abkuerzung zeigen?

        Dann hast du eine sonderbare Leseform.
        Ich habe dir sogar beschrieben, dass du scrollen sollst.
        Und auf dieser einen einzigen Seite HIER findest du alles was du brauchst
        sehr sehr sehr schön tabellarisch.

        Unter dem Begriff Inhaltsverzeichnis.
         Also mit den 2 Stunden glaube ich dir somit nicht.

        zb. http://de.php.net/manual/de/function.mysql-list-dbs.php

        Weiter helfe ich dir aber nicht, wenn Du dir keine Mühe geben willst.

        Pia

  2. Hallo!

    So weit bin ich mitlerweile gekommen:

    <?php  
    $link = mysql_connect('localhost', 'root', 'ZGy4PA63');  
      
    $query = "SHOW DATABASES;";  
    $result = mysql_query($query);  
      
    $i = 0;  
      
    while ($line = mysql_fetch_array($result)) {  
        $i++;  
        #Da es ueber 5000 Dantenbanken gibt...  
        if($i == 20) exit();  
      
        $db = $line[0];  
        echo "<br><br><b>".$db.":</b><br>";  
      
        mysql_select_db($db);  
      
        $query2 = "SHOW TABLES;";  
        $result2 = mysql_query($query);  
      
        $count = 0;  
      
        while ($line2 = mysql_fetch_array($result2)) {  
            $count++;  
        }  
      
        echo $count;  
    }  
    ?>  
    
    

    Das Problem ist, ich bekomme zwar die Namen der ersten 20 Datenbanken ausgegeben, jedoch haben alle die gleich Anzahl an Tabellen!
    Sieht jemand den Fehler?

    so long,
    Samy

    1. echo $begrüßung;

      Das Problem ist, ich bekomme zwar die Namen der ersten 20 Datenbanken ausgegeben, jedoch haben alle die gleich Anzahl an Tabellen!
      Sieht jemand den Fehler?

      Ja. Du kannst aber nicht jedes Mal jemanden fragen, wo dein Fehler steckt. Zur Kür des Programmierens gehört auch die Pflicht, einen Fehler zu suchen. Deshlb solltest du auch Fehlersuche üben. Wenn dir der Fehler nicht durch Betrachten deines Quelltextes auffällt, solltest du die Inhalte der Variablen zur Kontrolle ausgeben lassen. Geeignete Mittel sind echo, print, print_r() und var_dump(). Vielleicht fällt dir dabei auf, dass das Ergebnis der zweiten Abfrage irgendwie dem der ersten gleicht ...

      echo "$verabschiedung $name";