MySQL Forums
Forum List  »  InnoDB

Re: InnoDB inside loopback or FUSE file system
Posted by: Robert Klebe
Date: October 30, 2013 11:08AM

I recreated the fuse-file in /var/public/file (now 80MB) and disabled startup in /etc/init/mysql.conf. FYI I have also separated the data for InnoDB and MyISAM into /var/lib/mysql/innodb and /var/lib/mysql/myisam. Innodb goes to the /var/public/file, here is fstab:

/var/public/file /var/public/file_mount ext4 loop 0 0
bindfs#/var/public/file_mount /var/lib/mysql/innodb fuse owner=mysql,group=mysql,perms=755 0 0

I manually created the dir /var/run/mysqld as it complained about that it did not exist when I ran strace and did not start.

After a reboot i ran strace -e open mysqld as root, and then after a while killall -QUIT mysqld. Here is the output from the console, the error log continues to report recreation of innodb files:

-----------------------------------------------------------

open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libaio.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libz.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libwrap.so.0", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libcrypt.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
open("/usr/lib/x86_64-linux-gnu/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libnsl.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3
open("/etc/mysql/my.cnf", O_RDONLY) = 3
open("/etc/mysql/conf.d/mysqld_safe_syslog.cnf", O_RDONLY) = 4
open("/etc/localtime", O_RDONLY|O_CLOEXEC) = 3
131030 17:47:52 [Warning] Using unique option prefix key_buffer instead of key_buffer_size is deprecated and will be removed in a future release. Please use the full name instead.
open("/usr/share/mysql/english/errmsg.sys", O_RDONLY) = 3
open("/usr/share/mysql/charsets/Index.xml", O_RDONLY) = 3
open("/var/lib/mysql/myisam/laptop1.lower-test", O_RDWR|O_CREAT, 0666) = 3
open("/var/lib/mysql/myisam/laptop1.lower-test", O_RDWR|O_CREAT, 0666) = 3
open("/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libnss_compat.so.2", O_RDONLY|O_CLOEXEC) = 3
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libnss_nis.so.2", O_RDONLY|O_CLOEXEC) = 3
open("/lib/x86_64-linux-gnu/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3
open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 3
open("/proc/sys/kernel/ngroups_max", O_RDONLY) = 3
open("/etc/group", O_RDONLY|O_CLOEXEC) = 3
open("/var/log/mysql/error.log", O_WRONLY|O_CREAT|O_APPEND, 0666) = 3
open("/var/log/mysql/error.log", O_WRONLY|O_CREAT|O_APPEND, 0666) = 3
open("./mysql/plugin.frm", O_RDONLY) = 3
open("/var/lib/mysql/myisam/mysql/plugin.MYI", O_RDWR) = 3
open("./mysql/plugin.MYD", O_RDWR) = 4
open("/tmp/ibNdoDnu", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
open("/tmp/ibNPaqqm", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
open("/tmp/ibe2ofte", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
open("/tmp/ibPzm7v6", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
open("/tmp/ibYgFAHY", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
open("/var/lib/mysql/innodb/ibdata1", O_RDWR|O_CREAT|O_EXCL, 0660) = 3
open("/var/lib/mysql/innodb/ib_logfile0", O_RDWR|O_CREAT|O_EXCL, 0660) = 3
open("/var/lib/mysql/innodb/ib_logfile1", O_RDWR|O_CREAT|O_EXCL, 0660) = 3
open("/var/lib/mysql/innodb/ibdata1", O_RDWR) = 3
open("/var/lib/mysql/innodb/ib_logfile0", O_RDWR) = 8
open("/var/lib/mysql/innodb/ib_logfile1", O_RDWR) = 9
open("/tmp/ib5jWK6S", O_RDWR|O_CREAT|O_EXCL, 0600) = 10
open("./mysql/host.frm", O_RDONLY) = 13
open("/var/lib/mysql/myisam/mysql/host.MYI", O_RDWR) = 13
open("./mysql/host.MYD", O_RDWR) = 14
open("./mysql/user.frm", O_RDONLY) = 15
open("/var/lib/mysql/myisam/mysql/user.MYI", O_RDWR) = 15
open("./mysql/user.MYD", O_RDWR) = 16
open("./mysql/db.frm", O_RDONLY) = 17
open("/var/lib/mysql/myisam/mysql/db.MYI", O_RDWR) = 17
open("./mysql/db.MYD", O_RDWR) = 18
open("./mysql/proxies_priv.frm", O_RDONLY) = 19
open("/var/lib/mysql/myisam/mysql/proxies_priv.MYI", O_RDWR) = 19
open("./mysql/proxies_priv.MYD", O_RDWR) = 20
open("./mysql/time_zone_leap_second.frm", O_RDONLY) = 21
open("/var/lib/mysql/myisam/mysql/time_zone_leap_second.MYI", O_RDWR) = 21
open("./mysql/time_zone_leap_second.MYD", O_RDWR) = 22
open("./mysql/time_zone_name.frm", O_RDONLY) = 23
open("/var/lib/mysql/myisam/mysql/time_zone_name.MYI", O_RDWR) = 23
open("./mysql/time_zone_name.MYD", O_RDWR) = 24
open("./mysql/time_zone.frm", O_RDONLY) = 25
open("/var/lib/mysql/myisam/mysql/time_zone.MYI", O_RDWR) = 25
open("./mysql/time_zone.MYD", O_RDWR) = 26
open("./mysql/time_zone_transition_type.frm", O_RDONLY) = 27
open("/var/lib/mysql/myisam/mysql/time_zone_transition_type.MYI", O_RDWR) = 27
open("./mysql/time_zone_transition_type.MYD", O_RDWR) = 28
open("./mysql/time_zone_transition.frm", O_RDONLY) = 29
open("/var/lib/mysql/myisam/mysql/time_zone_transition.MYI", O_RDWR) = 29
open("./mysql/time_zone_transition.MYD", O_RDWR) = 30
open("./mysql/tables_priv.frm", O_RDONLY) = 21
open("/var/lib/mysql/myisam/mysql/tables_priv.MYI", O_RDWR) = 21
open("./mysql/tables_priv.MYD", O_RDWR) = 22
open("./mysql/columns_priv.frm", O_RDONLY) = 23
open("/var/lib/mysql/myisam/mysql/columns_priv.MYI", O_RDWR) = 23
open("./mysql/columns_priv.MYD", O_RDWR) = 24
open("./mysql/procs_priv.frm", O_RDONLY) = 25
open("/var/lib/mysql/myisam/mysql/procs_priv.MYI", O_RDWR) = 25
open("./mysql/procs_priv.MYD", O_RDWR) = 26
open("./mysql/servers.frm", O_RDONLY) = 27
open("/var/lib/mysql/myisam/mysql/servers.MYI", O_RDWR) = 27
open("./mysql/servers.MYD", O_RDWR) = 28
open("./mysql/func.frm", O_RDONLY) = 29
open("/var/lib/mysql/myisam/mysql/func.MYI", O_RDWR) = 29
open("./mysql/func.MYD", O_RDWR) = 30
open("./performance_schema/events_waits_current.frm", O_RDONLY) = 29
open("./performance_schema/events_waits_history.frm", O_RDONLY) = 29
open("./performance_schema/events_waits_history_long.frm", O_RDONLY) = 29
open("./performance_schema/setup_consumers.frm", O_RDONLY) = 29
open("./performance_schema/setup_instruments.frm", O_RDONLY) = 29
open("./performance_schema/setup_timers.frm", O_RDONLY) = 29
open("./performance_schema/performance_timers.frm", O_RDONLY) = 29
open("./performance_schema/threads.frm", O_RDONLY) = 29
open("./performance_schema/events_waits_summary_by_thread_by_event_name.frm", O_RDONLY) = 29
open("./performance_schema/events_waits_summary_by_instance.frm", O_RDONLY) = 29
open("./performance_schema/events_waits_summary_global_by_event_name.frm", O_RDONLY) = 29
open("./performance_schema/file_summary_by_event_name.frm", O_RDONLY) = 29
open("./performance_schema/file_summary_by_instance.frm", O_RDONLY) = 29
open("./performance_schema/mutex_instances.frm", O_RDONLY) = 29
open("./performance_schema/rwlock_instances.frm", O_RDONLY) = 29
open("./performance_schema/cond_instances.frm", O_RDONLY) = 29
open("./performance_schema/file_instances.frm", O_RDONLY) = 29
open("./ddl_log.log", O_RDWR) = -1 ENOENT (No such file or directory)
open("./mysql/event.frm", O_RDONLY) = 29
open("/var/lib/mysql/myisam/mysql/event.MYI", O_RDWR) = 29
open("./mysql/event.MYD", O_RDWR) = 30
--- SIGWINCH (Window changed) @ 0 (0) ---
--- SIGUSR1 (User defined signal 1) @ 0 (0) ---
-----------------------------------------------------------

I ran e2fsck on /var/public file but got no errors, except a warning about not cleanly unmounted file system.

Restarting only mysqld does not recreate files, so it could be something in the startup that does something.

Here is /etc/init/mysql.conf that came with Linux Mint 15:

-----------------------------------------------------------

# MySQL Service

description "MySQL Server"
author "Mario Limonciello <superm1@ubuntu.com>"

start on runlevel [2345]
stop on starting rc RUNLEVEL=[016]

respawn
respawn limit 2 5

env HOME=/etc/mysql
umask 007

# The default of 5 seconds is too low for mysql which needs to flush buffers
kill timeout 300

pre-start script
#Sanity checks
[ -r $HOME/my.cnf ]
[ -d /var/run/mysqld ] || install -m 755 -o mysql -g root -d /var/run/mysqld
/lib/init/apparmor-profile-load usr.sbin.mysqld
LC_ALL=C BLOCKSIZE= df --portability /var/lib/mysql/. | tail -n 1 | awk '{ exit ($4<4096) }'
end script

exec /usr/sbin/mysqld

post-start script
for i in `seq 1 30` ; do
/usr/bin/mysqladmin --defaults-file="${HOME}"/debian.cnf ping && {
exec "${HOME}"/debian-start
# should not reach this line
exit 2
}
statusnow=`status`
if echo $statusnow | grep -q 'stop/' ; then
exit 0
elif echo $statusnow | grep -q 'respawn/' ; then
exit 1
fi
sleep 1
done
exit 1
end script
-----------------------------------------------------------



Edited 1 time(s). Last edit at 10/30/2013 11:11AM by Robert Klebe.

Options: ReplyQuote


Subject
Views
Written By
Posted
Re: InnoDB inside loopback or FUSE file system
1795
October 30, 2013 11:08AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.