I was able to run MySQL 5.1 on ZFS, however Percona5.5 does not appear to be ZFS compatible. I am able to run it fine from ext4 at /var/lib/mysql:
cat /etc/mysql/my.cnf | grep datadir
datadir = /avalon/mysql
rm /var/log/mysql/error.log
rm -rf /avalon/mysql/*
/etc/init.d/mysql start
- Starting MySQL (Percona Server) database server mysqld [fail]
cat /var/log/mysql/error.log
111108 16:15:44 mysqld_safe Starting mysqld daemon with databases from /avalon/mysql
111108 16:15:44 [Note] Flashcache bypass: disabled
111108 16:15:44 [Note] Flashcache setup error is : setmntent failed
111108 16:15:44 [Note] Plugin ‘FEDERATED’ is disabled.
/usr/sbin/mysqld: Table ‘mysql.plugin’ doesn’t exist
111108 16:15:44 [ERROR] Can’t open the mysql.plugin table. Please run mysql_upgrade to create it.
111108 16:15:44 InnoDB: The InnoDB memory heap is disabled
111108 16:15:44 InnoDB: Mutexes and rw_locks use GCC atomic builtins
111108 16:15:44 InnoDB: Compressed tables use zlib 1.2.3
111108 16:15:44 InnoDB: Using Linux native AIO
111108 16:15:44 InnoDB: Initializing buffer pool, size = 128.0M
111108 16:15:44 InnoDB: Completed initialization of buffer pool
111108 16:15:44 InnoDB: highest supported file format is Barracuda.
InnoDB: No valid checkpoint found.
InnoDB: If this error appears when you are creating an InnoDB database,
InnoDB: the problem may be that during an earlier attempt you managed
InnoDB: to create the InnoDB data files, but log file creation failed.
InnoDB: If that is the case, please refer to
InnoDB: http://dev.mysql.com/doc/refman/5.5/en/error-creating-innodb .html
111108 16:15:44 [ERROR] Plugin ‘InnoDB’ init function returned error.
111108 16:15:44 [ERROR] Plugin ‘InnoDB’ registration as a STORAGE ENGINE failed.
111108 16:15:44 [ERROR] Unknown/unsupported storage engine: InnoDB
111108 16:15:44 [ERROR] Aborting
111108 16:15:44 [Note] /usr/sbin/mysqld: Shutdown complete
111108 16:15:44 mysqld_safe mysqld from pid file /avalon/mysql/michael.koss.pid ended
111108 16:17:07 mysqld_safe Starting mysqld daemon with databases from /avalon/mysql
111108 16:17:07 [Note] Flashcache bypass: disabled
111108 16:17:07 [Note] Flashcache setup error is : setmntent failed
111108 16:17:07 [Note] Plugin ‘FEDERATED’ is disabled.
/usr/sbin/mysqld: Table ‘mysql.plugin’ doesn’t exist
111108 16:17:07 [ERROR] Can’t open the mysql.plugin table. Please run mysql_upgrade to create it.
111108 16:17:07 InnoDB: The InnoDB memory heap is disabled
111108 16:17:07 InnoDB: Mutexes and rw_locks use GCC atomic builtins
111108 16:17:07 InnoDB: Compressed tables use zlib 1.2.3
111108 16:17:07 InnoDB: Using Linux native AIO
111108 16:17:07 InnoDB: Initializing buffer pool, size = 128.0M
111108 16:17:07 InnoDB: Completed initialization of buffer pool
InnoDB: The first specified data file ./ibdata1 did not exist:
InnoDB: a new database to be created!
111108 16:17:07 InnoDB: Setting file ./ibdata1 size to 10 MB
InnoDB: Database physically writes the file full: wait…
111108 16:17:08 InnoDB: Log file ./ib_logfile0 did not exist: new to be created
InnoDB: Setting log file ./ib_logfile0 size to 5 MB
InnoDB: Database physically writes the file full: wait…
111108 16:17:08 InnoDB: Log file ./ib_logfile1 did not exist: new to be created
InnoDB: Setting log file ./ib_logfile1 size to 5 MB
InnoDB: Database physically writes the file full: wait…
111108 16:17:08 InnoDB: Operating system error number 22 in a file operation.
InnoDB: Error number 22 means ‘Invalid argument’.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/refman/5.5/en/operating-system-erro r-codes.html
InnoDB: File name ./ib_logfile0
InnoDB: File operation call: ‘aio write’.
InnoDB: Cannot continue operation.
111108 16:17:08 mysqld_safe mysqld from pid file /avalon/mysql/michael.koss.pid ended
if I copy a working /var/lib/mysql to /avalon/mysql I still get the Operating system number 22 error:
cat /var/log/mysql/error.log
111108 16:20:55 mysqld_safe Starting mysqld daemon with databases from /avalon/mysql
111108 16:20:55 [Note] Flashcache bypass: disabled
111108 16:20:55 [Note] Flashcache setup error is : setmntent failed
111108 16:20:55 [Note] Plugin ‘FEDERATED’ is disabled.
111108 16:20:55 InnoDB: The InnoDB memory heap is disabled
111108 16:20:55 InnoDB: Mutexes and rw_locks use GCC atomic builtins
111108 16:20:55 InnoDB: Compressed tables use zlib 1.2.3
111108 16:20:55 InnoDB: Using Linux native AIO
111108 16:20:55 InnoDB: Initializing buffer pool, size = 128.0M
111108 16:20:55 InnoDB: Completed initialization of buffer pool
111108 16:20:55 InnoDB: highest supported file format is Barracuda.
111108 16:20:55 InnoDB: Operating system error number 22 in a file operation.
InnoDB: Error number 22 means ‘Invalid argument’.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/refman/5.5/en/operating-system-erro r-codes.html
InnoDB: File name ./ib_logfile0
InnoDB: File operation call: ‘aio write’.
InnoDB: Cannot continue operation.
111108 16:20:55 mysqld_safe mysqld from pid file /avalon/mysql/michael.koss.pid ended