mysqld startup issue

Gary Aitken freebsd at
Mon Jun 11 17:32:31 UTC 2012

I've done the following after having a running system with a running mysql on it:

moved user accounts, although no logical move:
  /usr/home/foo was => /hd1/foo
  /usr/home => /hd1/home  and /hd1/foo is now /hd1/home/foo
repartitioned the SSD and restored the system from a dump taken prior to repartitioning.
removed all ports and reinstalled them

Unfortunately, mysqld won't start:

120611 10:55:52 [Warning] Can't create test file /var/db/mysql/breakaway.lower-test
120611 10:55:52 [Warning] Can't create test file /var/db/mysql/breakaway.lower-test
mysqld: Table 'mysql.plugin' doesn't exist
120611 10:55:52 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
120611 10:55:52 InnoDB: The InnoDB memory heap is disabled
120611 10:55:52 InnoDB: Mutexes and rw_locks use GCC atomic builtins
120611 10:55:52 InnoDB: Compressed tables use zlib 1.2.5
120611 10:55:52 InnoDB: Initializing buffer pool, size = 128.0M
120611 10:55:52 InnoDB: Completed initialization of buffer pool
120611 10:55:52  InnoDB: Operating system error number 13 in a file operation.
InnoDB: The error means mysqld does not have the access rights to
InnoDB: the directory.
InnoDB: File name ./ibdata1
InnoDB: File operation call: 'create'.
InnoDB: Cannot continue operation.

Running mysqld --verbose shows:

  basedir             /usr/local
  general-log-file    /var/db/mysql/breakaway.log

ls -aol /usr/local/libexec/mysqld
-rwxr-xr-x  1 root  wheel  - 9558944 Jun 11 10:40 /usr/local/libexec/mysqld
ls -dl /var/db/mysql
drwxr-xr-x  2 mysql  mysql  512 Jun 11 10:31 /var/db/mysql

cd /
find . -ls | grep my.cnf

shows nothing.

This looks like some kind of access / setuid problem, but I'm not sure what.

More information about the freebsd-questions mailing list