我试图使用mysqlbackup备份我的数据库,但我一直得到这个错误,我不知道为什么是指一个权限被拒绝的错误。
我已经关闭了SeLinux,因为我认为这是原因,但是SeLinux日志中也没有任何内容,而且我可以使用普通命令mysql-uuser-ppassword登录到mysql。
整个密码和输出可以在这里看到:http://pastie.org/10798013
最佳答案
这是因为MySQLBackup要求以根用户身份运行以访问所需的资源。通常,您只需运行sudo mysqlbackup
,但我相信这在默认情况下对该程序不起作用。
在这种情况下,最快的方法是以根用户的身份运行命令。为此,只需打开终端并键入:
sudo -s
系统将提示您输入密码,然后终端将显示
root@...
,而不是正常的user@...
。这表示您现在是根用户。现在您可以再次执行代码:
mysqlbackup --compress --user=root --socket=/var/lib/mysql/mysql.sock --backup-dir=/home/user/backup backup
完成后,记住只需键入
exit
即可从根目录注销。请记住,除非您别无选择,否则不要使用根用户;除非您确定要执行的操作,否则很容易意外地更改重要的文件/文件夹。了解更多
值得更多地了解以根用户身份登录,甚至调整配置以使
mysqlbackup
不需要根用户,因此以下是一些链接:MySQLBackup Permission Denied (Unix & Linux - StackExchange)
RootSudo (Ubuntu Wiki)