Mysql备份脚本

标签 mysql database shell scripting

我正在使用一个脚本来备份我在 Mysql 中的所有数据库。

脚本是:

#!/bin/bash
cd /root/Desktop/backup
echo “You are In Backup Directory”

Now=$(date +%d-%m-%Y--%H:%M:%S)

File=$Now.sql

mysqldump –u root --all-databases > $File

echo “Your Database Backup Successfully Completed”

但是当我尝试恢复数据库时,出现了以下错误,而且根本没有恢复,只是创建了一个文件:

SQL查询:

Usage: mysqldump [OPTIONS] database [tables]

OR     mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]

OR     mysqldump [OPTIONS] --all-databases [OPTIONS]

For more options, use mysqldump --help

MySQL 说:文档

#1064 - 您的 SQL 语法有错误;查看与您的 MySQL 服务器版本对应的手册,了解在第 1 行的“用法:mysqldump [OPTIONS] 数据库 [表] 或 mysqldump [OPTIONS] --databa”附近使用的正确语法

请帮忙。

最佳答案

我终于明白了,我需要在 my.cnf 中定义密码以便它自动使用,或者我必须在我在脚本 mysqldump -u root 中执行的命令中定义它-p '密码' --all-databases > $File.

感谢你们的努力。

关于Mysql备份脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22706369/

相关文章:

php - 一次付款减少两张票据总数

mysql - 检查这个 MySQL 查询

linux - 如何对目录中的所有文件执行grep操作?

mysql - 按小时分组时,分组依据应返回 0。这个怎么做?

mysql - symfony数据库访问配置问题

MySQL 选项卡完成不起作用

ruby-on-rails - Rails 4 - 将数据库列从一个应用程序移动到另一个应用程序

mysql - 无法在ubuntu上使用tomcat6连接到mysql数据库

linux - 无法将变量数据分配给 echo

python - 在python中,将用户更改为SU后如何执行hadoop命令?