Habe Kubuntu Karmic neu installiert, leider gibt es mit Akonadi ein Problem: Akonadi startet nicht automatisch beim Rechnerstart, wenn ich es manuell starte, geht ein Fenster auf mit der Fehlermeldung:
Unknown error. (Could not create collection)
Im KDE-Kontrollmodul Akonadi-Einrichtung lässt sich Akonadi dann manuell starten, im Log steht folgende Fehlermeldung:
MYSQL-Serverprotokoll fehlerhaft
Im Link findet sich folgendes Log:
091109 21:53:43 [Note] Plugin 'FEDERATED' is disabled. 091109 21:53:43 InnoDB: Started; log sequence number 0 1551700 091109 21:53:43 [Warning] Can't open and lock time zone table: Table 'mysql.time_zone_leap_second' doesn't exist trying to live without them 091109 21:53:43 [ERROR] Can't open and lock privilege tables: Table 'mysql.servers' doesn't exist 091109 21:53:43 [ERROR] Cannot open mysql.db 091109 21:53:43 [ERROR] Cannot open mysql.user 091109 21:53:43 [ERROR] Cannot open mysql.event 091109 21:53:43 [ERROR] Event Scheduler: An error occurred when initializing system tables. 091109 21:53:43 [Note] /usr/sbin/mysqld-akonadi: ready for connections. Version: '5.1.37-1ubuntu5-log' socket: '/home/user/.local/share/akonadi/db_misc/mysql.socket'
Die gleiche Fehlerbeschreibung habe ich gefunden, jedoch hat bei mir der Lösungsvorschlag nichts genützt: http://forum.kde.org/viewtopic.php?f=20&t=83092 Wenn ich den Befehl eingebe:
mysql_install_db --datadir=$HOME/.local/share/akonadi/db_data/
erhalte ich die Ausgabe:
Installing MySQL system tables... 091110 8:23:11 [Warning] Can't create test file /home/mpiroth/.local/share/akonadi/db_data/den-ws154.lower-test 091110 8:23:11 [Warning] Can't create test file /home/mpiroth/.local/share/akonadi/db_data/den-ws154.lower-test ERROR: 1005 Can't create table 'db' (errno: 13) 091110 8:23:11 [ERROR] Aborting 091110 8:23:11 [Warning] Forcing shutdown of 2 plugins 091110 8:23:11 [Note] /usr/sbin/mysqld: Shutdown complete Installation of system tables failed! Examine the logs in /home/mpiroth/.local/share/akonadi/db_data/ for more information. You can try to start the mysqld daemon with: shell> /usr/sbin/mysqld --skip-grant & and use the command line tool /usr/bin/mysql to connect to the mysql database and look at the grant tables: shell> /usr/bin/mysql -u root mysql mysql> show tables Try 'mysqld --help' if you have problems with paths. Using --log gives you a log in /home/mpiroth/.local/share/akonadi/db_data/ that may be helpful. The latest information about MySQL is available on the web at http://www.mysql.com/. Please consult the MySQL manual section 'Problems running mysql_install_db', and the manual section that describes problems on your OS. Another information source are the MySQL email archives available at http://lists.mysql.com/. Please check all of the above before mailing us! And remember, if you do mail us, you MUST use the /usr/scripts/mysqlbug script!
Das Log von Akonadi beim Start ist nun etwas umfangreicher geworden:
Akonadi Server Self-Test Report =============================== Test 1: SUCCESS -------- Database driver found. Details: The QtSQL driver 'QMYSQL' is required by your current Akonadi server configuration. The following drivers are installed: QSQLITE, QMYSQL3, QMYSQL. Make sure the required driver is installed. File content of '/home/mpiroth/.config/akonadi/akonadiserverrc': [%General] Driver=QMYSQL SizeThreshold=4096 ExternalPayload=false [QMYSQL] Name=akonadi User= Password= Options="UNIX_SOCKET=/home/mpiroth/.local/share/akonadi/db_misc/mysql.socket" ServerPath=/usr/sbin/mysqld-akonadi StartServer=true Host= [Debug] Tracer=null Test 2: SUCCESS -------- MySQL server found. Details: You currently have configured Akonadi to use the MySQL server '/usr/sbin/mysqld-akonadi'. Make sure you have the MySQL server installed, set the correct path and ensure you have the necessary read and execution rights on the server executable. The server executable is typically called 'mysqld', its locations varies depending on the distribution. Test 3: SUCCESS -------- MySQL server is executable. Details: MySQL server found: /usr/sbin/mysqld-akonadi Ver 5.1.37-1ubuntu5 for debian-linux-gnu on i486 ((Ubuntu)) Test 4: ERROR -------- MySQL server log contains errors. Details: The MySQL server error log file '<a href='/home/mpiroth/.local/share/akonadi/db_data/mysql.err'>/home/mpiroth/.local/share/akonadi/db_data/mysql.err</a>' contains errors. File content of '/home/mpiroth/.local/share/akonadi/db_data/mysql.err': 091110 8:03:02 [Note] Plugin 'FEDERATED' is disabled. 091110 8:03:02 InnoDB: Started; log sequence number 0 2686970 091110 8:03:02 [Warning] Can't open and lock time zone table: Table 'mysql.time_zone_leap_second' doesn't exist trying to live without them 091110 8:03:02 [ERROR] Can't open and lock privilege tables: Table 'mysql.servers' doesn't exist 091110 8:03:02 [ERROR] Cannot open mysql.db 091110 8:03:02 [ERROR] Cannot open mysql.user 091110 8:03:02 [ERROR] Cannot open mysql.event 091110 8:03:02 [ERROR] Event Scheduler: An error occurred when initializing system tables. 091110 8:03:02 [Note] /usr/sbin/mysqld-akonadi: ready for connections. Version: '5.1.37-1ubuntu5-log' socket: '/home/mpiroth/.local/share/akonadi/db_misc/mysql.socket' port: 0 (Ubuntu) 091110 8:04:17 [Note] /usr/sbin/mysqld-akonadi: Normal shutdown 091110 8:04:17 InnoDB: Starting shutdown... 091110 8:04:18 InnoDB: Shutdown completed; log sequence number 0 2701980 091110 8:04:18 [Warning] Forcing shutdown of 1 plugins 091110 8:04:18 [Note] /usr/sbin/mysqld-akonadi: Shutdown complete Test 5: SUCCESS -------- MySQL server default configuration found. Details: The default configuration for the MySQL server was found and is readable at <a href='/etc/akonadi/mysql-global.conf'>/etc/akonadi/mysql-global.conf</a>. File content of '/etc/akonadi/mysql-global.conf': # # Global Akonadi MySQL server settings, # These settings can be adjusted using $HOME/.config/akonadi/mysql-local.conf # # Based on advice by Kris Köhntopp <kris@mysql.com> # [mysqld] skip_grant_tables skip_networking # strict query parsing/interpretation # TODO: make Akonadi work with those settings enabled #sql_mode=strict_trans_tables,strict_all_tables,strict_error_for_division_by_zero,no_auto_create_user,no_auto_value_on_zero,no_engine_substitution,no_zero_date,no_zero_in_date,only_full_group_by,pipes_as_concat #sql_mode=strict_trans_tables # use InnoDB for transactions and better crash recovery default_storage_engine=innodb # case-insensitive table names, avoids trouble on windows lower_case_table_names=1 character_set_server=latin1 collation_server=latin1_general_ci table_cache=200 thread_cache_size=3 log_bin=mysql-bin expire_logs_days=3 #sync_bin_log=0 # error log file name, relative to datadir log_error=mysql.err log_warnings=2 # log all queries, useful for debugging but generates an enormous amount of data #log=mysql.full # log queries slower than n seconds, log file name relative to datadir log_slow_queries=mysql.slow long_query_time=1 # log queries not using indices, debug only, disable for production use log_queries_not_using_indexes=1 # maximum blob size max_allowed_packet=32M max_connections=256 # makes sense when having the same query multiple times # makes no sense with prepared statements and/or transactions query_cache_type=0 query_cache_size=0 innodb_file_per_table=1 innodb_log_buffer_size=1M innodb_additional_mem_pool_size=1M # messure database size and adjust # SELECT sum(data_length) as bla, sum(index_length) as blub FROM information_schema.tables WHERE table_schema not in ("mysql", "information_schema"); innodb_buffer_pool_size=80M # size of average write burst, keep Innob_log_waits small, keep Innodb_buffer_pool_wait_free small (see show global status like "inno%", show global variables) innodb_log_file_size=64M innodb_flush_log_at_trx_commit=2 Test 6: SKIP -------- MySQL server custom configuration not available. Details: The custom configuration for the MySQL server was not found but is optional. Test 7: SUCCESS -------- MySQL server configuration is usable. Details: The MySQL server configuration was found at <a href='/home/mpiroth/.local/share/akonadi/mysql.conf'>/home/mpiroth/.local/share/akonadi/mysql.conf</a> and is readable. File content of '/home/mpiroth/.local/share/akonadi/mysql.conf': # # Global Akonadi MySQL server settings, # These settings can be adjusted using $HOME/.config/akonadi/mysql-local.conf # # Based on advice by Kris Köhntopp <kris@mysql.com> # [mysqld] skip_grant_tables skip_networking # strict query parsing/interpretation # TODO: make Akonadi work with those settings enabled #sql_mode=strict_trans_tables,strict_all_tables,strict_error_for_division_by_zero,no_auto_create_user,no_auto_value_on_zero,no_engine_substitution,no_zero_date,no_zero_in_date,only_full_group_by,pipes_as_concat #sql_mode=strict_trans_tables # use InnoDB for transactions and better crash recovery default_storage_engine=innodb # case-insensitive table names, avoids trouble on windows lower_case_table_names=1 character_set_server=latin1 collation_server=latin1_general_ci table_cache=200 thread_cache_size=3 log_bin=mysql-bin expire_logs_days=3 #sync_bin_log=0 # error log file name, relative to datadir log_error=mysql.err log_warnings=2 # log all queries, useful for debugging but generates an enormous amount of data #log=mysql.full # log queries slower than n seconds, log file name relative to datadir log_slow_queries=mysql.slow long_query_time=1 # log queries not using indices, debug only, disable for production use log_queries_not_using_indexes=1 # maximum blob size max_allowed_packet=32M max_connections=256 # makes sense when having the same query multiple times # makes no sense with prepared statements and/or transactions query_cache_type=0 query_cache_size=0 innodb_file_per_table=1 innodb_log_buffer_size=1M innodb_additional_mem_pool_size=1M # messure database size and adjust # SELECT sum(data_length) as bla, sum(index_length) as blub FROM information_schema.tables WHERE table_schema not in ("mysql", "information_schema"); innodb_buffer_pool_size=80M # size of average write burst, keep Innob_log_waits small, keep Innodb_buffer_pool_wait_free small (see show global status like "inno%", show global variables) innodb_log_file_size=64M innodb_flush_log_at_trx_commit=2 Test 8: SUCCESS -------- akonadictl found and usable Details: The program '/usr/bin/akonadictl' to control the Akonadi server was found and could be executed successfully. Result: Akonadi 1.2.1 Test 9: ERROR -------- Akonadi control process not registered at D-Bus. Details: The Akonadi control process is not registered at D-Bus which typically means it was not started or encountered a fatal error during startup. Test 10: ERROR -------- Akonadi server process not registered at D-Bus. Details: The Akonadi server process is not registered at D-Bus which typically means it was not started or encountered a fatal error during startup. Test 11: SKIP -------- Protocol version check not possible. Details: Without a connection to the server it is not possible to check if the protocol version meets the requirements. Test 12: ERROR -------- No resource agents found. Details: No resource agents have been found, Akonadi is not usable without at least one. This usually means that no resource agents are installed or that there is a setup problem. The following paths have been searched: '/usr/share/akonadi/agents /usr/share/akonadi/agents'. The XDG_DATA_DIRS environment variable is set to '/usr/share:/usr/share:/usr/local/share', make sure this includes all paths where Akonadi agents are installed to. Directory listing of '/usr/share/akonadi/agents': birthdaysresource.desktop distlistresource.desktop icalresource.desktop imapresource.desktop kabcresource.desktop kcalresource.desktop knutresource.desktop kolabproxyresource.desktop localbookmarksresource.desktop maildirresource.desktop microblog.desktop nepomukcontactfeeder.desktop nepomukemailfeeder.desktop nepomuktagresource.desktop nntpresource.desktop notesresource.desktop strigifeeder.desktop vcarddirresource.desktop vcardresource.desktop Directory listing of '/usr/share/akonadi/agents': birthdaysresource.desktop distlistresource.desktop icalresource.desktop imapresource.desktop kabcresource.desktop kcalresource.desktop knutresource.desktop kolabproxyresource.desktop localbookmarksresource.desktop maildirresource.desktop microblog.desktop nepomukcontactfeeder.desktop nepomukemailfeeder.desktop nepomuktagresource.desktop nntpresource.desktop notesresource.desktop strigifeeder.desktop vcarddirresource.desktop vcardresource.desktop Environment variable XDG_DATA_DIRS is set to '/usr/share:/usr/share:/usr/local/share' Test 13: SUCCESS -------- No current Akonadi server error log found. Details: The Akonadi server did not report any errors during its current startup. Test 14: SUCCESS -------- No previous Akonadi server error log found. Details: The Akonadi server did not report any errors during its previous startup. Test 15: SUCCESS -------- No current Akonadi control error log found. Details: The Akonadi control process did not report any errors during its current startup. Test 16: SUCCESS -------- No previous Akonadi control error log found. Details: The Akonadi control process did not report any errors during its previous startup.
Bezüglich der Fehlermeldung The QtSQL driver 'QMYSQL' is required findet sich unter Google zwar einiges, aber leider hat mich bisher noch nichts zum Ziel geführt. Ich habe gelesen, dass Akonadi einen internen Mysql-Server nutzt, dies habe ich im Setup auch nicht verändert. Für Amarok habe ich jedoch den mysql-server-5.1 und mysql-client-5.1 installiert, vielleicht beissen sich da irgendwo irgendwelche Konfigurationsdateien?
Folgende Instanzen laufen auf dem Rechner:
root 3993 0.0 0.0 1748 548 pts/1 S 08:13 0:00 /bin/sh /usr/bin/mysqld_safe mysql 4104 0.0 0.8 128912 18012 pts/1 Sl 08:13 0:00 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock --port=3306 root 4105 0.0 0.0 2932 688 pts/1 S 08:13 0:00 logger -t mysqld -p daemon.error
Google hat mich auch zu keinem Ergebnis geführt, woher kommt die Fehlermeldung, und wie kann ich sie beseitigen? Im Voraus vielen Dank für alle Tipps!