mysqldump 免密码备份脚本
时间: 2023-07-26 17:07:52 浏览: 60
可以使用以下脚本来实现 mysqldump 免密码备份:
```
#!/bin/bash
DB_HOST=localhost
DB_USER=username
DB_PASS=password
DB_NAME=database_name
BACKUP_DIR=/path/to/backup/directory
DATE=$(date +%Y-%m-%d_%H-%M-%S)
FILE=$BACKUP_DIR/$DB_NAME-$DATE.sql.gz
mysqldump -h $DB_HOST -u $DB_USER -p$DB_PASS $DB_NAME | gzip > $FILE
```
将上述脚本保存为 `backup.sh` 文件,并修改以下变量值:
- `DB_HOST`:MySQL 主机名或 IP 地址
- `DB_USER`:MySQL 用户名
- `DB_PASS`:MySQL 密码
- `DB_NAME`:需要备份的数据库名称
- `BACKUP_DIR`:备份文件存储目录的路径
然后,设置脚本可执行权限并运行它:
```
chmod +x backup.sh
./backup.sh
```
这将在指定的备份目录中创建名为 `<数据库名称>-<日期时间>.sql.gz` 的压缩备份文件,其中日期时间格式为 `YYYY-MM-DD_HH-MM-SS`。
相关问题
shell写个mysqldump备份脚本
### 回答1:
可以使用这段脚本来备份MySQL数据库:#!/bin/bash
#
# 定义一些变量
MYSQL_USER="root"
MYSQL_PASS="your_password"
MYSQL_HOST="localhost"
MYSQL=/usr/bin/mysql
MYSQL_DUMP=/usr/bin/mysqldump
# 定义备份文件名
DATE=`date +"%Y_%m_%d_%H_%M_%S"`
FILE=db_backup.${DATE}.sql
# 开始备份
$MYSQLDUMP --opt --user=${MYSQL_USER} --password=${MYSQL_PASS} --host=${MYSQL_HOST} --all-databases > /tmp/${FILE}
# 压缩备份文件
gzip /tmp/${FILE}
### 回答2:
如下是一个简单的使用shell脚本编写的mysqldump备份脚本:
```
#!/bin/bash
# 设置备份文件保存路径
backup_dir="/path/to/backup/directory"
# 设置日期格式为年月日时分秒
date_format=$(date +"%Y%m%d%H%M%S")
# 设置MySQL数据库连接参数
db_user="your_db_username"
db_pass="your_db_password"
db_host="localhost"
db_name="your_db_name"
# 创建备份文件的文件名
backup_file="${backup_dir}/backup_${date_format}.sql"
# 使用mysqldump命令备份数据库到指定文件
mysqldump -u ${db_user} -p${db_pass} -h ${db_host} ${db_name} > ${backup_file}
# 检查备份是否成功
if [ $? -eq 0 ]; then
echo "备份成功,备份文件保存在:${backup_file}"
else
echo "备份失败,请检查连接参数和数据库配置。"
fi
```
在这个脚本中,你需要修改以下参数来适应你自己的数据库配置:
- `backup_dir`:设置备份文件保存路径。
- `db_user`:设置MySQL数据库的用户名。
- `db_pass`:设置MySQL数据库的密码。
- `db_host`:设置MySQL数据库的主机地址。
- `db_name`:设置要备份的数据库名称。
使用时,将这个脚本保存为一个.sh文件(例如`backup.sh`),运行`bash backup.sh`即可执行备份操作。成功备份后,将在指定的保存路径下生成一个以当前日期和时间命名的备份文件(例如`backup_20210101120000.sql`)。如果备份失败,会输出相应的错误信息提示。
### 回答3:
MySQL提供了一个名为mysqldump的实用程序,可以用于备份数据库。mysqldump使用Shell脚本编写脚本非常简单。下面是一个示例:
```
#!/bin/bash
# 设置备份文件的路径和名称
backup_dir="/path/to/backup"
backup_file="$backup_dir/$(date +%Y-%m-%d_%H:%M:%S).sql"
# MySQL数据库的相关信息
db_host="localhost"
db_user="username"
db_password="password"
db_name="database"
# 创建保存备份文件的目录
mkdir -p $backup_dir
# 使用mysqldump备份数据库
mysqldump -h $db_host -u $db_user -p$db_password $db_name > $backup_file
# 检查备份是否成功
if [ $? -eq 0 ]; then
echo "数据库备份成功!备份文件保存在 $backup_file"
else
echo "数据库备份失败!"
fi
```
这个脚本的工作流程如下:
1. 设置备份文件的路径和名称,可以根据需要进行修改。
2. 设置MySQL数据库的相关信息,包括主机名、用户名、密码和数据库名称。
3. 创建一个目录来保存备份文件。
4. 使用mysqldump命令备份数据库,并将备份文件保存到指定目录。
5. 检查是否备份成功,并在终端输出相应的信息。
你可以将脚本保存为一个.sh文件,并在终端中运行它,即可执行备份操作。记得在运行脚本之前,要先确保你的MySQL服务正在运行,并且设置正确的数据库信息。
linux 定时mysqldump备份怎么写脚本
可以使用 shell 脚本来定时执行 mysqldump 备份,具体的步骤如下:
1. 创建一个备份目录,例如 /home/backup。
2. 创建一个 shell 脚本,例如 backup.sh,将以下代码复制到脚本中:
```
#!/bin/bash
# 定义备份目录
backup_dir="/home/backup"
# 定义备份文件名
backup_name="backup_$(date +%Y%m%d%H%M%S).sql"
# 定义 MySQL 用户名和密码
mysql_user="root"
mysql_password="password"
# 定义要备份的数据库名
database_name="database_name"
# 执行备份命令
mysqldump -u${mysql_user} -p${mysql_password} ${database_name} > ${backup_dir}/${backup_name}
```
3. 修改脚本的执行权限,执行命令如下:
```
chmod +x backup.sh
```
4. 测试脚本是否能够执行成功,执行命令如下:
```
./backup.sh
```
5. 使用 crontab 命令来定时执行备份脚本,执行命令如下:
```
crontab -e
```
在打开的文件中添加以下内容,表示每天凌晨 3 点执行备份脚本:
```
0 3 * * * /path/to/backup.sh
```
6. 保存并退出文件,定时备份脚本就设置完成了。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)