Getting akonadi to start: a one-line fix

Today I was fixin’ to try out korganizer on my Kubuntu 16.10 system, but when I ran it it made noises about the akonadi service not being started. When I ran akonadictl start I got this ugliness…

$ akonadictl start
Starting Akonadi Server...
   done.
dmeyer@quux:~$ Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
akonadiprivate_log: search paths:  ("/home/dmeyer/.nvm/versions/node/v6.9.2/bin", "/home/dmeyer/perl5/bin", "/home/dmeyer/bin", "/home/dmeyer/bin", "/usr/local/sbin", "/usr/local/bin", "/usr/sbin", "/usr/bin", "/sbin", "/bin", "/usr/games", "/usr/local/games", "/snap/bin", "/usr/share/maven/bin", "/usr/sbin", "/usr/local/sbin", "/usr/local/libexec", "/usr/libexec", "/opt/mysql/libexec", "/opt/local/lib/mysql5/bin", "/opt/mysql/sbin")
Found mysql_install_db:  "/usr/bin/mysql_install_db"
Found mysqlcheck:  "/usr/bin/mysqlcheck"
Using mysqld: "/usr/sbin/mysqld-akonadi"
mysqld reports version 5.7.17 (Oracle MySQL)
Executing:  "/usr/sbin/mysqld-akonadi" "--defaults-file=/etc/xdg/akonadi/mysql-global.conf --initialize --datadir=/home/dmeyer/.local/share/akonadi/db_data/"
mysqld: [ERROR] Could not open required defaults file: /etc/xdg/akonadi/mysql-global.conf
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!
Executing: "/usr/sbin/mysqld-akonadi" "--defaults-file=/home/dmeyer/.local/share/akonadi/mysql.conf --datadir=/home/dmeyer/.local/share/akonadi/db_data/ --socket=/tmp/akonadi-dmeyer.GIbr2A/mysql.socket"
Database process exited unexpectedly during initial connection!
executable: "/usr/sbin/mysqld-akonadi"
arguments: ("--defaults-file=/home/dmeyer/.local/share/akonadi/mysql.conf", "--datadir=/home/dmeyer/.local/share/akonadi/db_data/", "--socket=/tmp/akonadi-dmeyer.GIbr2A/mysql.socket")
stdout: ""
stderr: "mysqld: Error on realpath() on '/var/lib/mysql-files' (Error 2 - No such file or directory)\n2017-01-31T19:42:24.980686Z 0 [Warning] The syntax '--log_warnings/-W' is deprecated and will be removed in a future release. Please use '--log_error_verbosity' instead.\n2017-01-31T19:42:24.980736Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).\n2017-01-31T19:42:24.980785Z 0 [ERROR] Failed to access directory for --secure-file-priv. Please make sure that directory exists and is accessible by MySQL Server. Supplied value : /var/lib/mysql-files\n2017-01-31T19:42:24.980790Z 0 [ERROR] Aborting\n\n2017-01-31T19:42:24.980801Z 0 [Note] Binlog end\n"
exit code: 1
process error: "Unknown error"
terminating service threads
terminating connection threads
stopping db process
Failed to remove Unix socket
Failed to remove runtime connection config file
Application 'akonadiserver' exited normally...

Running under sudo didn’t seem to make a difference. What’s the problem?

Turns out I just needed to add the following line to the [mysqld] section of /etc/xdg/akonadi/mysql-global.conf :

secure_file_priv=

HT: Debian-Qt-KDE mailing list

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.