如何在不将MySQL文件夹的所有权授予Linux中的root用户的情况下将内容从MySQL文件夹中复制出来



在安装使用MySQL数据库的软件(Omeka(之前,我正试图在Linux服务器上备份该数据库。

Omeka文档提供的命令如下:

mysqldump-h localhost-u username-p omeka_db_name>omeka_db_backup.sql

然而,当我运行这个时,我得到了一个非常有用的模糊信息";许可被拒绝"如果我以sudo的身份运行命令,它就会执行此操作。无论我试图将备份文件保存到哪个目录,它都会这样做。当我运行mysqldump时,它不会提示我输入MySQL密码,但当我运行"mysql";命令,它接受我输入的密码,这样我就知道问题不在于我使用了错误的凭据。

我无法直接在shell中导航到MySQL文件夹,当我使用WinSCP访问服务器时,MySQL文件夹被列为"所有";MySQL";而不是通过";根"所以我假设我没有权限从这个文件夹复制任何,这就是我的问题。我不想随意将MySQL文件夹的所有权分配给root,因为我担心这可能会破坏MySQL从该文件夹读取和写入的能力。

我所要做的就是将数据库文件复制到某个位置作为备份。见鬼,如果必须的话,我会把整个MySQL文件夹复制到某个地方。如何在不破坏MySQL的情况下做到这一点?

Root对所有内容都有权限。可能会有一些额外的保护措施,具体取决于(有一些安全软件限制root权限(。您可以使用:mysqldump -h localhost -u username -p omeka_db_name > /path/to/some/other/directory/omeka_db_backup.sql

并将备份放在您可以正常访问的目录中。如果使用mysqldump,则不需要写入mysql-dir.

相关内容

最新更新