• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Fehler beim Start von MariaDB

P6CNAT

Advanced Hacker
Hallo,

ich habe zufällig gesehen, dass beim Start meiner MariaDB Fehlermeldungen auftreten. Die Datenbank funktioniert zwar trotzdem, aber ich halte es für besser die Fehler zu beseitigen:

Code:
130531 16:28:36 mysqld_safe Starting mysqld daemon with databases from /home/georg/MySQL_Data
130531 16:28:36 InnoDB: The InnoDB memory heap is disabled
130531 16:28:36 InnoDB: Mutexes and rw_locks use GCC atomic builtins
130531 16:28:36 InnoDB: Compressed tables use zlib 1.2.7
130531 16:28:36 InnoDB: Initializing buffer pool, size = 128.0M
130531 16:28:36 InnoDB: Completed initialization of buffer pool
130531 16:28:36 InnoDB: highest supported file format is Barracuda.
130531 16:28:36  InnoDB: Waiting for the background threads to start
130531 16:28:37 Percona XtraDB (http://www.percona.com) 1.1.8-29.3 started; log sequence number 1590015
130531 16:28:37 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
130531 16:28:37 [ERROR] Missing system table mysql.proxies_priv; please run mysql_upgrade to create it
130531 16:28:37 [ERROR] Can't open and lock privilege tables: Table 'mysql.servers' doesn't exist
130531 16:28:37 [ERROR] Native table 'performance_schema'.'events_waits_current' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'events_waits_history' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'events_waits_history_long' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'setup_consumers' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'setup_instruments' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'setup_timers' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'performance_timers' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'threads' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'events_waits_summary_by_thread_by_event_name' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'events_waits_summary_by_instance' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'events_waits_summary_global_by_event_name' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'file_summary_by_event_name' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'file_summary_by_instance' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'mutex_instances' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'rwlock_instances' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'cond_instances' has the wrong structure
130531 16:28:37 [ERROR] Native table 'performance_schema'.'file_instances' has the wrong structure
130531 16:28:37 [ERROR] Column count of mysql.db is wrong. Expected 22, found 20. Created with MariaDB 50045, now running 50529. Please use mysql_upgrade to fix this error.
130531 16:28:37 [ERROR] mysql.user has no `Event_priv` column at position 29
130531 16:28:37 [ERROR] Cannot open mysql.event
130531 16:28:37 [ERROR] Event Scheduler: An error occurred when initializing system tables. Disabling the Event Scheduler.
130531 16:28:37 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.5.29-MariaDB'  socket: '/var/run/mysql/mysql.sock'  port: 3306  Source distribution

Ich interpretiere die Fehlermeldungen so, dass die Struktur der Datenbank auf alten Versionsständen von MySQL (2007) stehen geblieben ist.
Deshalb habe ich wie empfohlen das Kommando mysql_upgrade ausgeführt. Mit dem Ergebnis:

Code:
polaris:/etc # mysql_upgrade
Phase 1/3: Fixing table and database names
Failed to ALTER DATABASE `#mysql50#.tmp` UPGRADE DATA DIRECTORY NAME
Error: Incorrect database name '#mysql50#.tmp'
Phase 2/3: Checking and upgrading tables
mysqlcheck: Got error: 1102: Incorrect database name '#mysql50#.tmp' when selecting the databaseProcessing databases
information_schema
#mysql50#.tmp

FATAL ERROR: Upgrade failed

Was könnte ich machen, die DB zu aktualisieren und die Fehler zu beheben?

Grüße
Georg
 

spoensche

Moderator
Teammitglied
P6CNAT schrieb:
Code:
polaris:/etc # mysql_upgrade
Phase 1/3: Fixing table and database names
Failed to ALTER DATABASE `#mysql50#.tmp` UPGRADE DATA DIRECTORY NAME
Error: Incorrect database name '#mysql50#.tmp'
Phase 2/3: Checking and upgrading tables
mysqlcheck: Got error: 1102: Incorrect database name '#mysql50#.tmp' when selecting the databaseProcessing databases
information_schema
#mysql50#.tmp

FATAL ERROR: Upgrade failed

Mach mal eine
Code:
mysqlrepair --fix-db-names --fix-table-names
und führe danach mysql_upgrade erneut aus.
 
OP
P6CNAT

P6CNAT

Advanced Hacker
Hallo,
spoensche schrieb:
Mach mal eine
Code:
mysqlrepair --fix-db-names --fix-table-names
und führe danach mysql_upgrade erneut aus.
Das hat nicht geholfen.
Aber ich habe mir mal das Verzeichnis mit den Datenbanken angeschaut. Darin war eine .tmp von 2009. Die habe ich mal ganz mutig gelöscht und danach mysql_upgrade ausgeführt. Dieses mal hat es geklappt. Die seltsame #mysql50# Datenbank ist jetzt auch verschwunden. Und beim Start von MariaDB kommen keine Fehlermeldungen mehr.

Wünsche eine gute Nacht
Georg
 
OP
P6CNAT

P6CNAT

Advanced Hacker
spoensche schrieb:
Interessant wäre mal noch die Ausgabe von mysqlrepair.
Ohje, es tut mir Leid, aber ich habe das nicht aufgezeichnet.
Aus der Erinnerung:
Bei meinen Datenbanken kam überhaupt keine Meldung.
Bei der Pseudodatenbank #mysql50#.tmp kam das gemoser, dass es keine gültige Datenbank ist und Programmabbruch.
Und die Datenbank performance_schema hatte bei mir komplett gefehlt, daher gab es auch nichts zu reparieren.

Gruß
Georg
 
Oben