
Kapitel 2: Vorb emerkungen zum deutschen Handbuch 51
• Portierung von MySQL-Clients auf LynxOS.
• Hinzuf¨ugen eines tempor¨aren Schl¨ussel-Puffer-Caches w¨ahrend INSERT/DELETE/UPDATE,
um den vorherigen Zustand elegant wiederherstellen zu k¨onnen, wenn der Index voll
wird.
• Wenn ein ALTER TABLE auf eine Tabelle durchgef¨uhrt wird, die per Symlink auf einer
anderen Festplatte ist, tempor¨are Tabellen auf dieser Festplatte erzeugen.
• Implementierung eines DATE/DATETIME-Typs, der Zeitzonen-Informationen sauber
handhabt, damit der Umgang mit Datumswerten in verschiedenen Zeitzonen leichter
wird.
• FreeBSD- und MIT-pThreads; nehmen schlafende Threads CPU in Anspruch?
• Pr¨ufen, ob gesperrte Threads CPU beanspruchen.
• Configure reparieren, so dass man alle Bibliotheken (wie MyISAM) ohne Threads kom-
pilieren kann.
• Hinzuf¨ugen einer Option, um regelm¨aßig die Schl¨usselseiten (Key Pages) f¨ur Tabellen
mit verz¨ogerten Schl¨usseln (Delayed Keys) zu l¨oschen (flush), wenn Sie eine Weile nicht
in Gebrauch waren.
• Verkn¨upfungen (Join) auf Teile des Schl¨ussels zulassen (Optimierungsthema).
• INSERT SQL_CONCURRENT und mysqld --concurrent-insert sollen ein konkurrieren-
des Insert am Ende der Datei machen, falls die Datei lese-gesperrt ist.
• FOREIGN-Key-Festlegungen in der ‘.frm’-Datei speichern.
• Kaskadierendes L¨oschen (DELETE)
• Serverseitige Cursor.
• Pr¨ufen, ob lockd mit modernen Linux-Kernels funktioniert; wenn nicht, m¨ussen wir
lockd ¨uberarbeiten! Um das zu testen, startet man mysqld mit --enable-locking
und l¨aßt die verschiedenen fork* test suits laufen. Sie sollten keine Fehler produzieren,
wenn lockd funktioniert.
• SQL-Variablen in LIMIT zulassen, wie LIMIT @a,@b.
• Aktualisierung von Variablen in UPDATE-Statements zulassen, zum Beispiel: UPDATE
TABLE foo SET @a=a+b,a=@a, b=@a+c
• Wenn Benutzervariablen aktualisiert werden, so ¨andern, dass man sie mit GROUP BY be-
nutzen kann wie in folgendem Beispiel: SELECT id, @a:=count(*), sum(sum_col)/@a
FROM tabelle GROUP BY id.
• Keine automatischen DEFAULT-Werte zu Spalten hinzuf¨ugen. Fehler ausgeb en, wenn
ein INSERT benutzt wird, dass keine Spalte enth¨alt, die keinen DEFAULT-Wert hat.
• Caching von Anfragen und Ergebnissen. Das sollte als separates Modul gemacht
werden, das jede Anfrage pr¨uft. Falls diese Anfrage im Cache ist, soll das Cache-
Ergebnis zur¨uckgegeben werden. Wenn man eine Tabelle aktualisiert, sollte man
so wenige Anfragen wie m¨oglich aus dem Cache entfernen. Das sollte eine große
Geschwindigkeitssteigerung auf Maschinen geben, die viel RAM haben und wo An-
fragen of wiederholt werden (wie WWW-Applikationen). Eine Idee w¨are, nur Anfrage
des Typs SELECT CACHED ... zu cachen.
• ‘libmysql.c’ ¨uberarbeiten, damit zwei mysql_query()-Befehle in einer Zeile stehen
k¨onnen, ohne dass Ergebnisse gelesen werden oder man eine nette Fehlermeldung erh¨alt,
wenn man das tut.
Comentários a estes Manuais