HiveBrain v1.2.0
Get Started
← Back to all entries
debugMinor

OS error 13 when running mariabackup as non-mysql user

Submitted by: @import:stackexchange-dba··
0
Viewed 0 times
errornonusermysqlrunningmariabackupwhen

Problem

All:

I'm trying to set up regularly-scheduled backups of our MariaDB cluster with mariabackup, and have set up an account for this purpose. The account is a member of group mysql. But when I run the backup as that user:

$ mariabackup --backup -u [myid] -p [password]
mariabackup: Generating a list of tablespaces
2017-12-08 17:49:07 140352620800128 [ERROR] InnoDB: Operating system error number 13 in a file operation.
2017-12-08 17:49:07 140352620800128 [ERROR] InnoDB: The error means mysqld does not have the access rights to the directory.
mariabackup: error: xb_load_tablespaces() failed witherror code 11

If I run with sudo -u mysql, the exact same command works fine.

Is there a way to turn on extra debugging or verbosity so I can see WHICH file or directory it's having trouble accessing?

MariaDB v10.2.11, CentOS 7 (x86_64)

Solution

I was able to use the strace command to figure out what was going on. There were two problems. The first is that there was no group write permission on the output directory, so it failed to create the xtrabackup_backupfiles directory. The second is that there were two database directories in /var/lib/mysql that lacked group r-x permission. By fixing these two issues, I was able to get it to work.

Still, it would be nice if the error message actually indicated what specifically it didn't have permission on, rather than simply reporting that it lacked permission for something.

Context

StackExchange Database Administrators Q#192742, answer score: 2

Revisions (0)

No revisions yet.