使用 emc networker 备份 mysql

backup mysql with emc networker

在 CentOS 机器上,我们安装了 mediaWiki + bugZilla 供内部使用。 我想使用我们网络中的 EMC Networker 来备份数据库。

备份 /var/lib/mysql/ 目录是否足够? 如果是,我是否需要备份整个目录(ibdata1、mysql、mysql.sock...)或仅备份 mediawiki 数据库和 bugzilla 数据库。 我在这个 post Backup Mysql Databases 中看到

Blockquote For innodb, you'll need to backup using mysqldump Blockquote

谢谢 山姆

如果要使用基于文件的备份解决方案来备份 MySQL 数据库,最好创建数据库转储并备份转储。您可以通过 mysqldump -u root -p --all-databases > dump.sql 创建备份 你也可以支持你 /etc/my.cnf。有了配置,恢复就更简单了。

上面答案的 mysqldump 部分无需添加任何内容。

WRT to NetWorker 有两种方法可以使转储脚本在每次备份前自动运行。

在 NetWorker 8.1 或更高版本中,您可以在客户端资源中指定备份 "Pre Command",这是一个包含转储命令以及您希望包括的任何其他命令的脚本文件(sync例如)。该命令应以字母 nsr(例如 nsrmysqldumpscript.sh)开头,并与其他 NetWorker 二进制文件(通常为 /bin,但可以是 /usr/bin/opt/bin 或其他)

在 8.0.x NetWorker 及之前的版本中,您需要在客户端资源的 "Backup Command" 属性中输入 savepnpc 命令。
然后,您需要在客户端的 /nsr/res 目录中创建一个以保存组 运行 命名的资源文件。例如,如果您的存储组名为 MySQLFull,您将创建 /nsr/res/MySQLFull.res。您可以 运行 该组一次作为测试,然后 savepnpc 将为您创建文件。

资源文件将如下所示:

type: savepnpc;
precmd: "mysqldumpscript.sh";
pstcmd: "echo noop";
timeout: "5:00am";
abort precmd with group: No; 

使用 post 8.1 "Pre Command" 更容易设置。

如果要备份转储,您可能只想将转储目录指定为 yoru saveset。