Mailinglisten-Archive |
Hallo Markus, Sunday, March 03, 2002, 11:08:29 AM, you wrote: > Hallo, > ich habe in letzter Zeit ein grosses Problem mit einer stark frequentierten > MySQL-Tabelle. Hier empfiehlt es sich ab und zu ein Optimize table durchtuführen, um die Tabelle zu defragmentieren. > In der Tabelle gibt es eine Autowert-Spalte für die ID, da > ist mir in letzter Zeit aufgefallen, dass diese plötzlich auf einem Wert von > 4294967295 steht und somit sich keine neuen Werte mehr einfügen lassen. Der > letzte Eintrag vor diesem ist so bei 7000. Das ist sehr unangenehm und ich > kann mir keinen Reim darauf machen, daher meine 3 Fragen > - wie kann ich einen Autowert zurücksetzen, zb auf 8000 Wenn ich mich recht erinnere, bietet myisamcheck die Option an den Wert des nächsten autoincrement-Wertes zu setzen: myismachk -A ? > - wie kann das überhaupt passieren Lass mich raten, in der Tabelle werden häufig Eintragungen gelöscht und neue hinzugefügt. Einmal vergebene autincrement-Werte werden nach dem Löschen nicht wiederverwendet. Abhängig vom Typ der Spalte (du verwendest offensichtlich unsigned int, dessen Maxwert bei 4294967295 liegt) geht das natürlich nicht unendlich gut. Du hast wahrscheinlich viele Datensätze eingefügt und wieder gelöscht und hat autoincrement den Wert 4294967295 erreicht ist halt Schluss. > wenn ich einen insert auf einen doppelten schlüssel mache, wird ja der > Wert nicht eingetragen und es kommt die Meldung dup...entry... das ist sehr > gut, denn dann muss ich die Werte nicht erst prüfen, bevor ich sie in die DB > schreibe, aber hat das vielleicht auswirkungen auf den Auto-Wert? Nein. > Fragen über Fragen, aber ich habe im Netz (selbst zu ersten Frage) keine > vernünftigen Einsichten gewinnen können. Hilft dir hoffentlich ein Stückchen weiter... Gruesse Friedhelm --- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive