MySQL

[Warning] InnoDB: Table mysql/innodb_index_stats has length mismatch in the column name table_name. Please run mysql_upgrade

Submitted by Gast (nicht überprüft) on Fr, 07/31/2020 - 17:27

Problem:

[Warning] InnoDB: Table mysql/innodb_index_stats has length mismatch in the column name table_name.  Please run mysql_upgrade

Lösung:

mysql_upgrade --user=your_db_user_name --password

This installation of MariaDB is already upgraded to 10.4.13-MariaDB, use --force if you still need to run mysql_upgrade
 

MySQL Query - Delete All Tables from a Database

Submitted by Gast (nicht überprüft) on Mo, 06/01/2020 - 13:58

SQL Query:

 SELECT CONCAT('DROP TABLE ', table_schema, '.', table_name, ';') AS 'command' FROM information_schema.tables WHERE table_schema = 'MyDatabaseName' INTO OUTFILE '/tmp/sql_delete_all_tables'; 
SOURCE  /tmp/sql_delete_all_tables;

No access to "/tmp"?

 SELECT CONCAT('DROP TABLE ', table_schema, '.', table_name, ';') AS 'command' FROM information_schema.tables WHERE table_schema = 'MyDatabaseName' INTO OUTFILE './sql_delete_all_tables'; 
SOURCE  ./sql_delete_all_tables;

 

Mysqldump - Backup Database to .gz with Date / TimeStamp

Submitted by Gast (nicht überprüft) on Sa, 03/07/2020 - 14:00

Wenn man alle Datenbanken sichern möchte (mit  Datum in Dateiname), Befehl könnte so aussehen:

 mysqldump -u myusername -p --all-databases | gzip -c > all-dbs-$(date +%Y-%m-%d-%H%M).sql.gz

Nur ein Datenbank:

 

 mysqldump -u myusername -p myDbName | gzip -c > mydbname-$(date +%Y-%m-%d-%H%M).sql.gz

 

#1452 - Kann Kind-Zeile nicht hinzufügen oder aktualisieren: eine Fremdschlüsselbedingung schlägt fehl

Submitted by Gast (nicht überprüft) on Mo, 10/21/2019 - 14:11

Fehler

SQL-Befehl:

 

ALTER TABLE `dienstzeit` ADD CONSTRAINT `fk_dienstnummer` FOREIGN KEY (`dienstnummer`) REFERENCES `dienstnummer`(`id`) ON DELETE RESTRICT ON UPDATE RESTRICT

 

MySQL meldet:

#1452 - Kann Kind-Zeile nicht hinzufügen oder aktualisieren: eine Fremdschlüsselbedingung schlägt fehl (`mydb2`.`#sql-ede_59b320`, CONSTRAINT `fk_dienstnummer` FOREIGN KEY (`dienstnummer`) REFERENCES `dienstnummer` (`id`))

Wenn InnoDB Import extrem langsam ist

Submitted by Gast (nicht überprüft) on Mo, 09/30/2019 - 02:08

Standardmäßig kann MyISAM gigantische Datenmengen viel schneller importieren als InnoDB. Man kann aber Einstellungen erst anpassen dann Import-in-InnoDB starten. Dann läuft alles viel schneller.

mysql>

SET autocommit=0;
SET unique_checks=0;
SET foreign_key_checks=0;


source meine-grosse-datenbank.sql

COMMIT;
SET unique_checks=1;
SET foreign_key_checks=1;