Versiffen einer Datenbank?

Der MySQL Datenbank-Server für Internet- und Intranet-Lösungen.

Versiffen einer Datenbank?

Beitragvon AgnethaFältskog » Sa 04 Mär, 2006 19:14

Hi!
Ich habe da eine bzw. 2 Fragen. Ich habe einen Freund der sich sehr gut mit PHP/MySQL auskennt, und der hat mir gesagt, wenn man eine MySQL DB nicht regelmäßig händisch wartet, dann versifft sie und man kann sie vergessen.
1.) Wieso ist das bitte so?
2.) Ist das auch bei einer Forum Datenbank so die von einer Software verwaltet wird? (SMF)

Lg.
Christina
AgnethaFältskog
Board-Mitglied
Board-Mitglied
 
Beiträge: 161
Registriert: So 16 Okt, 2005 13:42
Wohnort: Traun

Beitragvon FTH » So 05 Mär, 2006 12:20

Hallo

Du solltest vielleicht etwas genauer beschreiben was du mit versifft meinst.
Meinst du, dass nach einer gewissen Zeit die Datendatein (z.B. *.frm, *.MYD) kaputt gehen? Oder meinst du, dass die Inhalte inkonsistent werden.
Ersteres kann ich sicher nicht bestätigen, und selbst wenn, es gibt Programme, die die meisten Probelme beheben können (z.B. myisamchk ).
FĂĽr die Inkonsistenz von Daten ist meist der Programmierer der Anwendung, die mit der Datenbank in Verbindung steht, verantwortlich.

Also, bitte eine genauer Fragestellung, dann kann ich eine präzisere Antwort geben.

lg
FTH
FTH
Junior Board-Mitglied
Junior Board-Mitglied
 
Beiträge: 35
Registriert: Mi 25 Jan, 2006 10:10
Wohnort: Weiz

Beitragvon medice » So 05 Mär, 2006 14:33

was ist mit "Händisch warten" gemeint?
dass man jeden Datensatz durchgeht und gegebenenfalls frisiert?
das kanns ja wohl nicht sein - schon bei nicht allzu groĂźen Projekten is da ziemlich schnell Ende der Fahnenstange ;)
Mfg
Medice

Wir in Bayern brauchen keine Opposition, weil wir sind schon Demokraten. (c) Gerhard Polt
medice
Advanced Power-User
Advanced Power-User
 
Beiträge: 3288
Registriert: Fr 13 Mai, 2005 10:32
Wohnort: Graz

Beitragvon superracer » So 05 Mär, 2006 17:11

is ganz klar, wenn eine DB länger rumliegt und nicht gewartet wird, fangen die elektronen auf der festplatte zu rosten an, und irgendwann verklumpen sie dann und können nicht mehr gelesen werden. deswegen muß man in regelmäßigen abständen die elektronen putzen, polieren, ab und zu sogar mal frisch lackieren!
superracer
Board-User Level 3
Board-User Level 3
 
Beiträge: 1073
Registriert: So 04 Jul, 2004 11:18

Beitragvon ANOther » So 05 Mär, 2006 17:34

@racer
vorbeugend müssen die platten geölt und die lästigen neutronen entfernt werden, dann kommts gar nicht erst zu verklumpungen
Sex is like hacking. You get in, you get out, and you hope you didnt leave something behind that can be traced back to you.
ANOther
Board-Guru
Board-Guru
 
Beiträge: 5940
Registriert: Di 16 Aug, 2005 15:35

Beitragvon pc_net » Di 07 Mär, 2006 14:43

bei datenbanken is es wie bei festplatten ... durch schreiben/ändern/löschen von daten fragmentieren sie und sollten daher von zeit zu zeit reorganisiert (bei festplatten nennt man das defragmentieren) bzw. indizes neu analysiert bzw. angelegt werden - ansonsten leiden die zugriffszeiten darunter ...

wenns natürlich nur eine kleine relativ statische DB ist, dann merkt man das nicht ... aber umso umfangreicher der datenbestand und die änderungen, umso häufiger ist ein reorganisieren sinnvoll ...

http://dev.mysql.com/doc/refman/4.0/de/table-info.html
No hace falta ser un genio para saber quién dijo eso.

Magenta Gigakraft 250/50
pc_net
Profi-User
Profi-User
 
Beiträge: 1574
Registriert: Fr 29 Aug, 2003 21:21

Beitragvon Neptunus » Mi 08 Mär, 2006 09:42

Das Ganze ist auch SQL-mäßig möglich.

Ich denke der Befehl lautet optimize table oder so ähnlich.

Mit myisamchk wird man bei Innodb's nicht weit kommen, obwohl man dort die Fragmentierung am deutlichsten spĂĽrt :-)

Ich hatte mal mit einer Innodb-Datenbank in MySQL zu tun, die ca. 1 GB an Nutzdaten beinhaltete.

Das Datenbank-File im Dateisystem war aber ca. 15 GB groß. Aufgrund dauernder inserts und deletes ist es immer nur gewachsen. Die Nutzdaten der Datenbank lagen irgendwo verstreut innerhalb dieses Files herum. Inzwischen waren "Löcher" mit gelöschten Daten.

Bei den Operationen auf diese DB konnte sich MySQL die gewĂĽnschten Daten quer aus dieser groĂźen Daten von den verschiedensten Stellen zusammenkratzen.

Performant war das nicht mehr gerade, seltsamerweise vor allem, wenn man viele Datensätze mit einem Statement löschte.
Neptunus
Board-User Level 1
Board-User Level 1
 
Beiträge: 691
Registriert: Do 26 Jun, 2003 16:43

Beitragvon AgnethaFältskog » Mi 08 Mär, 2006 15:40

Danke fĂĽr die bisherigen Antworten ;)
AgnethaFältskog
Board-Mitglied
Board-Mitglied
 
Beiträge: 161
Registriert: So 16 Okt, 2005 13:42
Wohnort: Traun


ZurĂĽck zu MySQL

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste