MYSQL

NAVIGATION
CATEGORIES
REFERRENCE
LINKS
  • MySQL-Reorganisation

    9 answers - 640 bytes - related search similar search Add To My Delicious Add To My Stumble Upon Add To My Google Mark Add To My Facebook Add To My Digg Add To My Reddit

    Hi,
    MySQL Datenbank unter Linux.
    Wenn ich eine neue Schema anlege wird ein Verzeichnis angelegt, indem die Struktur der Tabellen abgelegt werden.
    Beim entfernen der Schema wird dieses Verzeichnis ebenfalls entfernt.
    Was mich interessiert ist, wo die Daten abegelgt werden, da nachdem ich die Schema entferne wird der Festplattenplatz nur um etwas verkleinert obwohlt ich in der Schema eine Menge von Daten gehabt habe. Langsam bekomme ich Platzproblem.
    Gibt es einen Tool, mit dem ich auch die abgelgten Daten (zu den Schema entfernt wurde) entfernen kann und mit dem ich Platz optimisieren kann.
    mfg,
    Stasa
  • No.1 | | 759 bytes | |

    Stasa Jerinic schrieb:
    Hi,

    MySQL Datenbank unter Linux.
    Wenn ich eine neue Schema anlege wird ein Verzeichnis angelegt, indem die Struktur der Tabellen abgelegt werden.
    Beim entfernen der Schema wird dieses Verzeichnis ebenfalls entfernt.

    Was mich interessiert ist, wo die Daten abegelgt werden, da nachdem ich die Schema entferne wird der Festplattenplatz nur um etwas verkleinert obwohlt ich in der Schema eine Menge von Daten gehabt habe. Langsam bekomme ich Platzproblem.
    Gibt es einen Tool, mit dem ich auch die abgelgten Daten (zu den Schema entfernt wurde) entfernen kann und mit dem ich Platz optimisieren kann.

    die Daten des Schemas liegen in dem Verzeichnis.

    InnoDB sich da etwas anders, verwendest du InnoDB?
  • No.2 | | 1342 bytes | |

    Hallo Stasa Jerinic,

    am Freitag, 8. September 2006 14:15 schriebst du:
    Hi,

    MySQL Datenbank uft unter Linux.
    Wenn ich eine neue Schema anlege wird ein Verzeichnis angelegt,
    indem die Struktur der Tabellen abgelegt werden. Beim entfernen der
    Schema wird dieses Verzeichnis ebenfalls entfernt.

    Was mich interessiert ist, wo die Daten abegelgt werden, da nachdem
    ich die Schema entferne wird der Festplattenplatz nur um etwas
    verkleinert obwohlt ich in der Schema eine Menge von Daten gehabt
    habe. Langsam bekomme ich Platzproblem. Gibt es einen Tool, mit dem
    ich auch die abgelgten Daten (zu den Schema entfernt wurde)
    entfernen kann und mit dem ich Platz optimisieren kann.

    Wie entfernst du denn die Datenbank?
    Nicht mit drop database?
    Bei mir sind die Daten sowohl unter Debian als auch unter SuSE in
    einen Verzeichnis, dass den gleichen Namen gt wie die Datenbank.
    Wenn ich die Datenbank mit drop database sche wird das gesamte
    Verzeichnis mit Inhalt scht.
    Wenn du Platzprobleme bekommst rde ich auf eher was anderes vermuten
    als auf Datenbanken.
    Wenn du dein System updatetest, sst du dann die Archive auf den
    System oder scht du sie?

    Mit freundlichen Gen
    Stefan Bckmann

    http://www.dr-brueckmann.com
    <!-- <tags>, scripts; & more
  • No.3 | | 1561 bytes | |

    Fri, Sep 08, 2006 at 03:03:19PM +0200, Sebastian Mendel wrote:
    Stasa Jerinic schrieb:
    Hi,

    MySQL Datenbank unter Linux.
    Wenn ich eine neue Schema anlege wird ein Verzeichnis angelegt, indem die Struktur der Tabellen abgelegt werden.
    Beim entfernen der Schema wird dieses Verzeichnis ebenfalls entfernt.

    Was mich interessiert ist, wo die Daten abegelgt werden, da nachdem ich die Schema entferne wird der Festplattenplatz nur um etwas verkleinert obwohlt ich in der Schema eine Menge von Daten gehabt habe. Langsam bekomme ich Platzproblem.
    Gibt es einen Tool, mit dem ich auch die abgelgten Daten (zu den Schema entfernt wurde) entfernen kann und mit dem ich Platz optimisieren kann.

    die Daten des Schemas liegen in dem Verzeichnis.

    InnoDB sich da etwas anders, verwendest du InnoDB?

    Z, oder?

    Wenn der Platz weiterhin belegt bleibt, dann kann es eigentlich nur
    innodb sein, hier bleibt der Platz im ibdata file leider vorhanden
    und tools die Defragmentierung dieses Monsters kenne ich auch
    keine.

    Als ich das letzte Mal danach gefragt habe, war die Antwort analog zu
    dumpen, , neu anlegen

    Ich war Montag allerdings auf dem usergroup treffen in Hamburg und da
    hat der Entwickler von Primebase XT seine Storage Engine vorgestellt,
    das klang ganz interessant, wird aber wohl leider erst mit der Version
    5.1 von mysql wohl stable werden.

    Aber die Engine werde ich mal im Auge behalten, um vielleicht innodb
    irgendwann doch noch mal los zu werden ;-)

    Marcus
  • No.4 | | 981 bytes | |

    Wenn der Platz weiterhin belegt bleibt, dann kann es eigentlich nur
    innodb sein,

    Vielleicht auch bin-log Dateien. Die liegen im
    var-Verzeichnis und enden mit einer 6-stelligen Zahl.
    Diese kann man mit dem SQL-Kommando "purge master logs to 'dateiname'"
    entfernen. Bevor du das machst, lies aber bitte, was das ist und sei dir
    sicher, dass du das willst.

    hier bleibt der Platz im ibdata file leider vorhanden
    und tools die Defragmentierung dieses Monsters kenne ich auch
    keine.

    optimize table

    Aber das defragmentiert innodb nur, es gibt keinen Speicherplatz frei.
    Anders als dump, drop, neu anlegen kann man bei innodb keinen
    Speicherplatz freigeben.
    Eine weitere (die dem Fragesteller jetzt aber nicht mehr hilft)
    ist "innodb_one_file_per_table" (lautet evtl. anders). Damit
    wird pro Tabelle eine innodb-Datei angelegt. Wenn diese Tabelle
    wird, wird auch die Datei , was insgesamt vielleicht sparen kann.
  • No.5 | | 333 bytes | |

    Stasa Jerinic:
    >Beim entfernen der Schema wird dieses Verzeichnis ebenfalls entfernt.


    Am Freitag, 8. September 2006 15:15 schrieb Stefan Brueckmann:
    Wie entfernst du denn die Datenbank?
    Nicht mit drop database?

    Gegenfrage. Wie entfernt man denn ein Schema noch, wenn nicht mit DRP?
  • No.6 | | 968 bytes | |

    Fri, Sep 08, 2006 at 03:27:43PM +0200, Dominik Klein wrote:
    >Wenn der Platz weiterhin belegt bleibt, dann kann es eigentlich nur
    >innodb sein,


    Vielleicht auch bin-log Dateien. Die liegen im
    var-Verzeichnis und enden mit einer 6-stelligen Zahl.
    Diese kann man mit dem SQL-Kommando "purge master logs to 'dateiname'"
    entfernen. Bevor du das machst, lies aber bitte, was das ist und sei dir
    sicher, dass du das willst.

    Und ob er das binlog aktiv hat.

    Aber Logfiles sind auch ein Thema, die Teile richtig gross
    werden, wenn sie nicht gepurged werden.

    Aber was soll die ganze Raterei, guck doch einfach in dein mysql
    Verzeichnis rein und schau nach, wo die Dateien sich verstecken!
    Im Zweifel einfach den eines ls -lah in /var/lib/mysql/ hier
    posten, irgendjemand wird schon wissen woher die grossen Dateien kommen
    und was man dagegen eventuell tun kann.

    Marcus
  • No.7 | | 1566 bytes | |

    Hallo Martin Fernau,

    am Freitag, 8. September 2006 15:39 schriebst du:
    Stasa Jerinic:
    >Beim entfernen der Schema wird dieses Verzeichnis ebenfalls
    >entfernt.
    >

    Am Freitag, 8. September 2006 15:15 schrieb Stefan Brueckmann:
    Wie entfernst du denn die Datenbank?
    Nicht mit drop database?

    Gegenfrage. Wie entfernt man denn ein Schema noch, wenn nicht mit
    DRP?

    Die Frage ist so nicht ganz korrekt, denn ich sste eigentlich
    antworten: Gar nicht.
    Aber ich denke du willst wissen, wie man es noch machen nnte.
    Allerdings sollte man es nicht so machen, deshalb re es auf obige
    Frage nicht die richtige Antwort ;-)

    MySQL 5 legt ig eine Datenbank mit dem Namen
    information_schema an. Dort gibt es unter anderem eine Tabelle mit dem
    Namen `SCHEMATA` in der alle Datenbanken verzeichnet sind und eine
    mit dem Namen `TABLES` in der alle Tabellen der jeweiligen
    Datenbanken verzeichnet sind.
    Nun nnte ja jemand auf die nicht so gute Idee gekommen sein, da
    einfach seine Datenbank aus diesen Tabellen zu schen.
    Dann rde es mich auch nicht wundern, das auf der Festplatte kaum
    Platz frei wird.
    Weiterhin kann man auch einfach im Filesystem die entsprechenden
    der Datenbanken schen.
    Ich ja nicht was die Leute so den ganzen Tag machen ;-)
    Ich rde aber davon abraten.

    Ich fragte lieber noch einmal nach, lich war die Frage ja,
    warum nach dem Lschen nicht entsprechend Speicherplatz frei wird.

    Mit freundlichen Gen
    Stefan Bckmann
  • No.8 | | 616 bytes | |

    Hallo!

    Am Freitag, 8. September 2006 16:42 schrieb Stefan Brueckmann:

    Ich fragte lieber noch einmal nach, lich war die Frage ja,
    warum nach dem Lschen nicht entsprechend Speicherplatz frei wird.
    danke! Hatte mich einfach nur mal so interessiert, ob es noch einen
    anderen Weg gibt. Mir war nur das DRP bekannt (naja, das Lschen des
    Verzeichnisses re mir auch noch eingefallen) und eigentlich ist es ja auch
    das "normale" Vorgehen beim entfernen einer DB das DRP-Kommando zu
    verwenden.
    Aber sicherlich hast Du recht, dass man erstmal genauer fragen sollte

    Viele Ge,
    Martin
  • No.9 | | 1103 bytes | |

    Hi

    In dem Punkt hab ich ja noch etwas Hoffnung das es irgendwann etwas
    besser wird. Sobald man in InnoDB die glichkeit mehrere Tablespaces
    hat und man die Tabellen manuell zuordnen kann man nur bei Bedarf
    einen neuen Tablespace erstellen, alle Tabellen berschieben und dann
    den alten Tablespace schen. Dr man dann wenigstens nicht die
    ganze DB offline nehmen.

    Daniel

    Martin Fernau schrieb:
    Hallo!

    Am Freitag, 8. September 2006 16:42 schrieb Stefan Brueckmann:

    >Ich fragte lieber noch einmal nach, lich war die Frage ja,
    >warum nach dem Lschen nicht entsprechend Speicherplatz frei wird.
    >

    danke! Hatte mich einfach nur mal so interessiert, ob es noch einen
    anderen Weg gibt. Mir war nur das DRP bekannt (naja, das Lschen des
    Verzeichnisses re mir auch noch eingefallen) und eigentlich ist es ja auch
    das "normale" Vorgehen beim entfernen einer DB das DRP-Kommando zu
    verwenden.
    Aber sicherlich hast Du recht, dass man erstmal genauer fragen sollte

    Viele Ge,
    Martin
    --

Re: MySQL-Reorganisation


max 4000 letters.
Your nickname that display:
In order to stop the spam: 7 + 7 =
QUESTION ON "MYSQL"

EMSDN.COM