Kategorie: Datenbanken
ERROR 1005 (HY000) at line 3698: Can't create table `xxxxxxxx` (errno: 140 "Wrong create options")
Solution: Remove the option "ROW_FORMAT=FIXED" in the "CREATE TABLE" statement.
mysqldump: Couldn't execute 'SET OPTION SQL_QUOTE_SHOW_CREATE=1
Falls Sie diese Fehlermeldung erhalten, passt ihr mysql client nicht zur Datenbankversion. Aktualisieren Sie diesen und dann wird es funktionieren. mysqldump: Couldn't execute 'SET OPTION SQL_QUOTE_SHOW_CREATE=1': You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'OPTION SQL_QUOTE_SHOW_CREATE=1' at line 1 (1064)
Replace non-UTF8 in dump file with sed
#!/bin/sh sed -i s/ß/ß/g $1 sed -i s/ä/ä/g $1 sed -i s/ü/ü/g $1 sed -i s/ö/ö/g $1 sed -i s/‘/\"/g $1 sed -i s/’/\"/g $1 sed -i s/§/§/g $1 sed -i s/–/–/g $1 sed -i s/©/©/g $1 sed -i s/„/„/g $1 sed -i s/“/“/g $1 sed -i s/Ü/Ü/g $1 sed -i s/Ö/Ö/g $1 sed -i s/Ä/Ä/g $1 sed -i s/·/·/g $1
How to change the default mysql/mariadb 3306 port
Open the my.cnf file Add a [client-server] section if it doesn't exist And then write in this section: port = XXXXX Restart server. Done.
MySQL Workbench: Remove default schema at export
Currently it is not possible to export a database in MySQL Workbench without default schema. This is a problem if you want to import the sql file into another database. Editing very large sql files is not even possible. For Linux the following commands may be useful. It replaces all schema names in all sql files in the current directory. find . -name "*.sql" -print | xargs sed -i 's/NOT EXISTS `olddatabase`/NOT EXISTS `newdatabase`/g' find . -name "*.sql" -print ...
MySQL Server benötigt zu viel Platz
Der MySQL Server legt in der Standard-Konfiguration fleißig mysql-bin.xxxx. Dateien unter /var/lib/mysql die mitunter bei sehr vielen Transaktionen sehr groß werden können. In meinem Fall benötigten diese über 60 GB. Da diese nach einer gewissen Zeit nicht mehr gebraucht werden, musste ich folgende Einstellung in die my.cnf eintragen und sie wurden automatisch gelöscht. Ich habe die Grenze auf 100 Tage gesetzt: expire_logs_days = 100
OpenSuse: MySQL Server unter bestimmten User laufen lassen
Für die Entwicklung ist es manchmal praktisch, den MySQL Server unter den eigenen Rechten laufen zu lassen. Hierzu in/etc/init.d/mysql mysql_daemon_user=<benutzername> mysql_daemon_group=users anpassen. Nach einem Update der Servers muss diese Datei leider erneut angepasst werden.
Zeichensatzprobleme mit MySQL dumps: Latin1 nach utf8 konvertieren
Bei der Übertragung von Datenbanken von einem MySQL-Server auf einen anderen, kam es des öfteren zu Zeichensatzproblemen. Diese konnte man mit folgenden Konsolenbefehlen beheben: mysqldump -u root -p --default-character-set=latin1 --databases \ datenbankname > datenbankname.sql iconv -c -t utf-8 datenbankname.sql > datenbankname2.sql sed 's/latin1/utf8/g' datenbankname2.sql > datenbankname3.sql SQL-Dump auf den anderen Server kopieren und dort wieder importieren: mysql --default-char...