März 2011 Archive


Gegeben:

root@localhost [test]> select version();
+------------+
| version()  |
+------------+
| 5.5.10-log |
+------------+
1 row in set (0.00 sec)

Doing:

root@localhost > create table a (id int) engine=myisam;
Query OK, 0 rows affected (0.01 sec)

Ok das ist nichts ungewöhnliches.

root@localhost > create table aa (id int) engine=innodb;
ERROR 1173 (42000): This table type requires a primary key


Hups das ist aber gar nicht usus einen PK zu fordern.

root@localhost > create table aa (id int primary key) engine=innodb;
Query OK, 0 rows affected (0.00 sec)

Und nein es handelt sich hier nicht um eine inkompatible Änderung seitens MySQL, sondern meinereiner hat riesige Mengen von Code umgeschrieben :)

# diff mysql-5.5.10/storage/innobase/handler/ha_innodb.cc mysql-5.5.10/storage/innobase/handler/ha_innodb.cc.old
1635d1634
<                 HA_REQUIRE_PRIMARY_KEY |

Mir kam die Idee, da ich spätestens bei Row-Based-Replication nicht Tabellen replizieren will, die keinen PK haben. Das wäre ja an sich wieder einen Blog wert:) Die Änderung geht selbstredend für jede andere StorageEngine auch.

Viel Spaß


Auf dem diesjährigen Frühjahrsfachgespräch hielten  Lenz und ich Vorträge zu MySQL. Lenz hielt seinen Vortrag über Replikationstechniken und entfachte eine nette Diskussion zur Semisynchronous Replication. Mein Vortrag mit dem Titel Baukasten MySQL lies leider keinen Raum für Diskussionen:/

Was ich an der GUUG so mag, ist der akademische Habitus. Die Workshops sind immer wieder ein Genuß. Nicht unbedingt, weil der Vortragende/Leitende zwangsläufig ein Spezialist seines Faches ist, sondern weil es immer eine handvoll erschreckend fitter Teilnehmer gibt, die durch ihre Anregungen, Einwände, Erläuterungen etc. dem Workshop(Vortrag) seine Tiefe geben :D

Hier gibt es die Vortragsfolien zum Vortrag LXC: Des Vanilla Kernels Container.
Viel Spaß:)