【问题标题】:How to make automatic backups of mysql db´s on Goddady with Apache servers如何使用 Apache 服务器自动备份 Godaddy 上的 mysql 数据库
【发布时间】:2014-02-18 15:44:33
【问题描述】:

我正在尝试使用 Apache 服务器在与 Godaddy.com 的共享主机上自动执行 mysql 数据库的每日备份。

为此,我研究并发现了 bash 脚本。

Goddady 托管让我也可以做 cron 工作,所以我做了以下事情:

我的 bash 脚本看起来像这样(我只屏蔽了敏感数据):

<br>
#/bin/sh<p></p>
<p>mysqldump -h myhost-u myuser -pMypassword databasename > dbbackup.sql<br>
gzip dbbackup.sql<br>
mv dbbackup.sql.gz _db_backups/`date +mysql-BACKUP.sql-%y-%m-%d.gz`<br>
</p>

我配置了指向该文件并每 24 小时执行一次的 cron 作业。

我已将 cron 作业实用程序配置为每次运行时都会向我的电子邮件发送一条日志消息。

这是日志消息:

/var/chroot/home/content/01/3196601/html/_db_backups/backup.sh:行 1: br: 没有这样的文件或目录

/var/chroot/home/content/01/3196601/html/_db_backups/backup.sh:行 3: p: 没有这样的文件或目录

/var/chroot/home/content/01/3196601/html/_db_backups/backup.sh:行 4: br: 没有这样的文件或目录

/var/chroot/home/content/01/3196601/html/_db_backups/backup.sh:行 5: br: 没有这样的文件或目录

/var/chroot/home/content/01/3196601/html/_db_backups/backup.sh:行 6: /p: 没有这样的文件或目录

好像它不懂语言。我应该为此编辑我的 .htaccess 文件吗? 有什么想法吗?

【问题讨论】:

  • FWIW...我也试过不带标签...同样的结果。
  • bash 肯定不喜欢 HTML 标签,所以删除它们。我很难相信删除标签会产生完全相同的结果。
  • 你是对的,它不是“完全”相同的结果。现在日志显示:/var/chroot/home/content/01/3196601/html/_db_backups/backup.sh:第 1 行:找不到 �� 命令 mv:无法统计 `dbbackup.sql.gz':没有这样的文件或目录
  • 您的mv 命令抱怨它找不到来自gzip 的压缩输出。我不确定你的操作环境是什么(即你的工作目录是什么,以及你是否有写权限)。文件可能没有被创建,或者它已经创建,但不是你期望的,或者你的工作目录不是你期望的。
  • 是的,我对该文件夹有写权限。似乎我不知道压缩文件保存在哪里,所以这可能是问题的一部分。你有什么建议?

标签: mysql bash cron


【解决方案1】:

从 bash 脚本中删除那些 html 标签,错误消息都与它们相关。您的脚本应如下所示。

#!/bin/sh
mysqldump -h myhost-u myuser -pMypassword databasename > dbbackup.sql
rm -rf dbbackup.sql.gz
gzip dbbackup.sql
mv dbbackup.sql.gz _db_backups/`date +mysql-BACKUP.sql-%y-%m-%d.gz`

【讨论】:

  • 我删除了标签,这就是日志现在所说的内容:/var/chroot/home/content/01/3196601/html/_db_backups/backup.sh: line 1: �� command not found mv: 无法统计 `dbbackup.sql.gz': 没有这样的文件或目录
  • 好吧,我更正了第一行,请用#!/bin/sh 重试
  • 另外我认为您在错误的文件夹中运行脚本。您的日志显示您已经在 _db_backups 中。您应该在上面的一个文件夹中运行它。
  • 好的,我按照你说的修改了第一行。此外,我将 bash 文件移到了上面的一个文件夹中。生成的日志是:/var/chroot/home/content/01/3196601/html/backup.sh:第 1 行:��!/bin/sh:没有这样的文件或目录 gzip:dbbackup.sql.gz 已经存在;未覆盖 mv: 无法统计 `dbbackup.sql.gz': 没有这样的文件或目录
  • 我在代码中又添加了一行。你试过了吗?
猜你喜欢
  • 2013-01-17
  • 2012-01-16
  • 2014-10-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多