Kategorie: Datenbank

MySQL DEFINER hell

Leider schafft es mysqldump nicht die DEFINER weg zu lassen. Dadurch kann man ein Problem mit dem DEFINER bekommen wenn man von einer anderen Maschine einen Dump einspielen will. DEFINER: DEFINER = `skip-grants user`@`skip-grants host` DEFINER = root@localhost Dazu kommen DEFINER mit dem Usernamen des Systems. Außer, im generierten Dump per „suchen & ersetzen“ die […]

MySQL 8 deterministic function

Nicht nur bei der Datenbank Wiederherstellung, auch bei Funktionen die nicht deterministisch sind. Folgende Funktion ist nicht deterministisch: Fehlermeldung bei der Erstellung: Gleiche Funktion – deterministisch: dev.mysql.com – 25.7 Stored Program Binary Logging Helfen würde auch ein: zur Erstellungszeit einer FUNCTION.

MySQL Zeugz

GROUP mit CONCAT, DISDINCT und IF NULL: Ärger mit der MySQL Installation Fehlermeldung könnte sein: This installation of MySQL is already upgraded to 5.7.36, use –force if you still need to run mysql_upgrade mehrere Leerzeichen mit einem ersetzen …seit MySQL 8

MySQL 8 root Passwort

MySQL mit skip-grant-tables starten In der /etc/my.cnf folgendes rein packen: Anschließend MySQL restarten. Ohne Passwort rein und root Passwort setzen dev.mysql.com/doc/resetting-permissions dev.mysql.com/doc/privilege-changes (FLUSH PRIVILEGES) MySQL neu starten und Passwort testen ZUERST: Das in der /etc/my.cnf auskommentieren! mysql_secure_installation dev.mysql.com/doc/mysql-secure-installation Seit MySQL 8 kann man nicht mit dem User ‚root‘ arbeiten. Darum muss ein neuer User erstellt […]

phpMyAdmin database export file name template

Meist möchte man den Dateinamen, der exportierten Datenbank, mit der aktuellen Zeit und wahrscheinlich mit dem Datenbanknamen bestücken. Default ist nur der Datenbankname mittels @DATABASE@ (auch zu ersetzen mit __DB__). Zusätzlich zu @DATABASE@ gibt es noch @TABLE@ und @SERVER@. Man kann alles verwenden was die PHP Funktion strftime() verwendet, plus beliebige andere Zeichen. Für ein […]

sql_mode = only_full_group_by on Ubuntu 16.04 MySQL

By einer Default-Installation von MySQL kann es zu folgender Fehlermeldung bei bestimmten GROUP BY geben: SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #8 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‚dbname.short.long_column_name‘ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by In […]

VARCHAR to FLOAT or INT

Benutzen INT: Benutzen FLOAT: Das schlägt fehl wenn preis z.B. 3.0 ist. oder Weiß man, dass nur das Komma (statt dem Punkt) das Problem ist, kann man mit LIKE ‚%,%‘ die Kommas umwandeln: Oder mit Regex: Anschließend mit aus den VARCHARs FLOATs machen. Bei größeren Zahlen, wie z.B. Unixtime: Um ein DE Datum (01.01.1970) in […]

PostGIS

Installation von PostGIS \r\nPostGIS 2.0 Ubuntu 12.04 Installation\r\nBei mir (Xubuntu 12.04) half:\r\n\r\nAnschließend sollte im pgAdmin III die neue Extension PostGIS folgendermaßen zu aktivieren sein:\r\nServerGruppen/Server/derIndiName/Datenbanken/postgres/Extensions einen Rechtsklick und „Neue Extension“ wählen. In der Auswahlliste sollte postgis vorhanden sein.\r\n\r\nalternativ soll funktionieren:\r\nNach der Installation mit psql in PostgreSQL einloggen und\r\n\r\num die Extension zu aktivieren (Semikolon nicht vergessen).\r\n\r\n——-\r\n\r\nUm die […]

osm2pgsql

\r\nsollte die Datei HagenZentrum-map.osm in die DB schreiben.\r\nLeider gibt es einen Fehler:\r\n\r\n\r\nUm diesen Fehler zu beheben: in /etc/postgresql//main/pg_hba.conf\r\naus dem „peer“ bei „postgres“ „trust“ machen.\r\n\r\n\r\nDann ist man einen Schritt weiter und es kommt der nächste Fehler:\r\n\r\nDieser Fehler ist bekannt: lists.openstreetmap.org\r\nAlso kopiere ich die Datei /usr/share/osm2pgsql/default.style\r\nnach: /usr/share/default.style\r\n\r\nWieder einen Schritt weiter.\r\nnächster Fehler:\r\n\r\n\r\n…der ERROR muß weg.\r\n\r\nlegacy_faq\r\npostgis_installation\r\n\r\nXubuntu 12.04 legacy.sql\r\n/usr/share/postgresql/9.1/contrib/postgis-2.0/legacy.sql\r\n\r\n\r\nOK, das […]

PostgreSQL Zeugz

Erste Schritte in Postgesql PostgreSQL docs In die PostgreSQL Console einloggen Zu User postgres werden Ausführungspfad und PGDATA setzen In die /etc/profile folgendes rein schreiben: /var/lib/postgresql/11/main ist laut /etc/postgresql/11/main/postgresql.conf das richtige Verzeichnis. Passwort für den Datenbankuser postgres ändern In die PostgreSQL Console einloggen: Kommando um das Passwort zu ändern: Dann muss man zwei mal ein […]