Linux定期备份MYSQL数据库

1. 系统环境

mysql8、centos7.9

2. 创建mysql_backup.sh文件

#!/bin/bash
 
#登录用户名
mysql_user="****"
#登录密码(注意 如果密码包含特殊符号 前面要用'\')
mysql_password="***"

mysql_port="3306"
#备份的数据库名
#mysql_database="db1"
#要备份的数据库名称,多个用空格分开隔开 如("db1" "db2" "db3")
backup_db_arr=("digit-trade-platform") 
# 是否删除过期数据
expire_backup_delete="true"
#过期天数
expire_days=30
 
# 备份文件存放地址(根据实际情况填写)
backup_location="/home/data/mysqldata/backup"
#定义备份详细时间
backup_time=`date +%Y%m%d%H%M`
#定义备份目录中的年月日时间
backu
Linux 系统下备份 MySQL 数据库,可以通过多种方法实现。以下是一些常用的方法和对应的命令示例: ### 使用 `mysqldump` 工具备份数据库 `mysqldump` 是一个非常常用的工具,用于导出数据库的逻辑备份。它能够生成 SQL 文件,其中包含创建表、插入数据等语句。 #### 备份单个或多个指定的表 如果需要备份特定的几张表,可以使用如下命令: ```bash # mysqldump -u [username] -p[password] [database_name] [table1] [table2] ... > [backup_file.sql] # 示例:备份名为 wordpress 的数据库中的 wp_posts 和 wp_comments 表 # mysqldump -u root -ptecmint wordpress wp_posts wp_comments > wordpress_posts_comments.sql ``` 此操作将选定的表结构与数据导出到一个 SQL 文件中[^1]。 #### 备份整个数据库 若需备份整个数据库,包括其所有表及其数据,可执行如下命令: ```bash # mysqldump -u [username] -p[password] [database_name] > [backup_file.sql] # 示例:备份名为 wordpress 的数据库 # mysqldump -u root -ptecmint wordpress > wordpress_backup.sql ``` #### 备份所有数据库 当需要备份服务器上的所有数据库时,可以添加 `--all-databases` 参数: ```bash # mysqldump -u [username] -p[password] --all-databases > [all_databases_backup_file.sql] # 示例:备份所有数据库 # mysqldump -u root -ptecmint --all-databases > all-databases.sql ``` 这个命令会把所有的数据库结构和数据都导出到一个文件中[^2]。 ### 使用 `mysqlhotcopy` 工具进行快速备份 对于 MyISAM 和 Archive 存储引擎的数据库,`mysqlhotcopy` 提供了一种更快捷的物理备份方式。它是基于文件拷贝的方式进行备份。 ```bash # mysqlhotcopy [options] database_name /path/to/backup_directory/ # 示例:备份名为 mydb 的数据库到 /backup/mysql/ # mysqlhotcopy mydb /backup/mysql/ ``` 要从 `mysqlhotcopy` 创建的备份恢复,只需简单地将备份目录下的文件复制回 `/var/lib/mysql/[db-name]` 目录。为安全起见,在执行恢复前应停止 MySQL 服务,并在完成后重新启动它[^3]。 ### 自动化定期备份 为了确保数据的安全性,通常建议设置定时任务来自动执行上述备份过程。这可以通过编辑 crontab 文件来完成,例如每天凌晨两点执行一次全量备份: ```cron 0 2 * * * /usr/bin/mysqldump -u root -ptecmint --all-databases > /backups/mysql/all_databases_$(date +\%F).sql ``` 以上就是几种常见的在 Linux备份 MySQL 数据库的方法。根据具体需求选择合适的策略,并考虑存储空间、安全性以及恢复速度等因素。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值