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=