von Nudge am 01.04.2009 um 21:34

MySQL Sequence oder integer-Timestamp

in MySQL | Tags: Datenbank, MSSQL, MySQL, Postgresql, Replikation, Routine, Sequenz, Synchronisation, Timestamp, Trigger, Update

Ich suche seit einiger Zeit nach einer bequemen Möglichkeit, einen MSSQL-ähnlichen Timestamp in MySQL zu integrieren. Im Unterschied zu MySQL benutzt MSSQL nämlich nicht das aktuelle Datum, sondern einen (binär codierten) integer-Wert. Dieser wird kontinuierlich im Laufe des MSSQL-Lebenszyklus hochgezählt. Das sieht erst einmal nicht so schön aus – man weiß also nicht, wann der [...]

von Nudge am 23.03.2009 um 23:06

phpmyadmin-Update und alte Features

in MySQL, PHP, Tipp | Tags: Editor, Konfiguration, MySQL, PHP, phpmyadmin, Problem, Query, Update

Nach einem Update von phpmyadmin von 2.11.6 auf die neue 3.1.3 waren mir vertraute Features plötzlich nicht mehr sichtbar. Falls es einigen von Euch genauso ging, hier ein kleiner Tipp, wie man die alte Ansicht wiederbekommt. Man öffne die Datei config.inc.php und füge nach der Server-Konfiguration die folgenden Zeilen ein: $cfg['DefaultTabTable'] = ‘tbl_structure.php’; $cfg['LeftDefaultTabTable'] = [...]

von Nudge am 23.01.2009 um 12:21

MySQL Performance Quiz

in MySQL, Witziges | Tags: Index, MySQL, Performance, phpmyadmin

Eine kleine Quiz-Frage zum Thema MySQL-Performance auf Indizes. Es gilt abzuschätzen, ob ein zahlenmäßig fragmentierte Index langsamer ist als einer, in dem die Zahlen lückenlos aufsteigend enthalten sind. Jeder kann mitmachen, in dem er (ohne Test natürlich!) sein Bauchgefühl verkündet.

von Nudge am 23.09.2008 um 21:09

MySQL vs Postgres mal ganz ohne Technik

in MySQL | Tags: Benutzer, MySQL, Navigation, Postgresql, Rechte, SQL, Vergleich

Wenn man den ganzen Kladderadatsch von Performance und Features weglässt, so gibt es immer noch einen ganz gewaltigen Punkt für die Beurteilung einer Datenbank: Wie sie sich dem Benutzer gegenüber präsentiert. Und dies möchte ich heute ganz ohne Ausschweifungen zusammenfassen.

von Nudge am 13.09.2008 um 10:21

Bug in MySQL bei LEFT JOIN

in Linux, MySQL | Tags: Bug, Left Join, MSSQL, MySQL, NULL

Also da habe ich echt gesucht, was der Fehler in meinem SQL-Statement war, bis sich herausstellte, dass es sich um einen waschechten MySQL-Bug in Version 5.0.24a handelte. Aber keine Sorge, dieser wurde bereits erkannt und wohl spätestens in Version 5.0.32 behoben. Gefahr erkannt – Gefahr gebannt. Worum gings denn da?

von Nudge am 31.07.2008 um 15:22

SQL im Webshop: Suche nach Modified

in MySQL, PHP, Web | Tags: Cache, MySQL, Performance, Query, SQL, Webshop

Größere Netzwerke, Suchmaschinen oder auch mal eben der kleine Statusbalken arbeiten viel besser, wenn man einen Zeitstempel zur Verfügung stellen kann à la “Dieser Artikel oder dieses Produkt wurde zuletzt geändert am …”. Das ist allerdings nicht ganz so easy, wenn sich die Daten des Satzes in verschiedenen Tabellen befinden. Also muss man die sich [...]

von Nudge am 27.07.2008 um 10:57

MySQL vs. Postgres – never ending story?

in Linux, MySQL | Tags: Cache, Chemitzer Linux-Tage, DBMS, MySQL, Performance, PHP, Postgresql, Query, Tuning

Ich habe mal wieder darüber nachgedacht, ob es nicht Zeit wäre, von MySQL auf Postgres umzusteigen. Bei den diesjährigen Chemnitzer Linux-Tagen habe ich ein interessantes Gespräch mit einem der Postgres-Leute gehabt. Seitdem laufen beide Datenbanken auf meinem Laptop und warten darauf, eingehend verglichen zu werden.

von Nudge am 11.05.2007 um 09:20

Mysqldump

in Linux, MySQL | Tags: Backup, MySQL, mysqldump, Query

Was ich heute kurz festgestellt habe: Im Gegensatz zu früheren Versionen speichern relativ junge Ausgaben von mysqldump eine komplette Tabelle in einem Insert. Das Ergebnis sieht dann etwa so aus: INSERT INTO tabelle (Feld1, Feld2, Feld3) VALUES ((val1-1, val1-2, val1-3),(val2-1, val2-2, val2-3)); Soweit so gut. Doch bei 500,000 Einträgen in einer vielleicht nicht ganz so [...]

von Nudge am 27.03.2007 um 09:25

MySQL Mustersuche, nur andersherum

in Linux, MySQL | Tags: MySQL, Query, Rechteverwaltung, Regular Expression

Gestern habe ich mich mit folgender kleiner Aufgabe beschäftigt: Lese- und “Ausführungs”-Berechtigung von Intranet-Seiten für die Mitarbeiter. Die 08/15-Lösung: Eine Tabelle, die ungefähr so aussieht: CREATE TABLE IntraBerechtigungen ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, Mitarbeiter varchar(255) NOT NULL, Seite varchar(255) NOT NULL, Lesen char(1) DEFAULT ‘N’, Ausfuehren char(1) DEFAULT ‘N’, Timestamp timestamp ); [...]

von Nudge am 23.03.2007 um 15:51

MySQL 5: Functions oder Views vs. Indizes

in HTML, MySQL, PHP | Tags: Cache, Indizes, MySQL, Performance, Profiling, Sortierung, Stored Procedure, View

Mein Chef meinte zu unserem neuen Server, der sei “irgendwie lahm” . Ich hatte nach dem ersten Hochspielen unseres neuen Onlineshops eigentlich genau das Gegenteil als Erfahrung gemacht. Tatsächlich, die Seite war lahm. Vielleicht nur in seinem neuen IE7? Naja, im ewigen Streben nach mehr Geschwindigkeit habe ich mich diese Woche also ein wenig mit [...]