工具介绍
1、MySqlBackupFTP
功能简介:MySqlBackupFTP是一款用于自动定时备份MySQL数据库的软件,其免费版本基本能满足大部分需求。
使用平台:主要支持Windows系统,如Windows Server 2016。
安装与配置:用户可以通过官网下载安装包并进行安装,软件界面友好,可以设定计划任务,如每几小时备份一次。
限制:免费版本只能同时备份2个数据库,并同步到2个云盘。
二、Debian下自动备份并上传至远程FTP服务器
1、安装与配置
安装ftp命令:在Debian系统中,通过aptget install ftp
命令进行安装。
创建备份目录:使用mkdir /home/mysql_data
命令创建备份文件存放目录。
编写Shell脚本:在/home/mysql_data
目录下创建mysql_databak.sh
脚本文件,编辑内容如下:
#!/bin/sh DUMP=/usr/bin/mysqldump OUT_DIR=/home/mysql_data LINUX_USER=root DB_NAME=osyunweidata DB_USER=root DB_PASS=123456 DAYS=7 cd $OUT_DIR DATE=date +%Y_%m_%d
OUT_SQL="$DATE.sql" TAR_SQL="osyunweidata_bak_$DATE.tar.gz" $DUMP u$DB_USER p$DB_PASS $DB_NAME defaultcharacterset=utf8 opt Q R skiplocktables> $OUT_SQL tar zcvf $TAR_SQL $OUT_SQL rm $OUT_SQL chown $LINUX_USER:$LINUX_USER $OUT_DIR/$TAR_SQL find $OUT_DIR name "osyunweidata_bak*" type f mtime +$DAYS exec rm {} ; deldate=date d 7day +%Y_%m_%d
ftp n<<! open 192.168.21.139 21 user admin 123456 binary cd mysql_data lcd /home/mysql_data mput osyunweidata_bak_$DATE.tar.gz mdelete osyunweidata_bak_$deldate.tar.gz close bye !
设置可执行权限:通过chmod +x /home/mysql_data/mysql_databak.sh
命令使脚本可执行。
配置crontab:编辑/etc/crontab
文件,添加以下内容以设置每天22点45分执行备份:
45 22 * * * root /home/mysql_data/mysql_databak.sh
通用自动化备份方案
1、定义变量
备份目录:BACKUP_DIR="/path/to/backup/directory"
数据库信息:DB_USER="your_mysql_user"
,DB_PASS="your_mysql_password"
,DB_NAME="your_database_name"
FTP信息:FTP_HOST="your_ftp_host"
,FTP_USER="your_ftp_user"
,FTP_PASS="your_ftp_password"
,FTP_DIR="/path/to/ftp/directory"
日期格式:DATE=$(date +"%Y%m%d%H%M%S")
2、备份与检查
备份数据库:使用mysqldump
命令备份数据库,并将输出重定向到一个文件中。
检查备份是否成功:通过检查上一步的命令返回值来判断备份是否成功。
3、上传备份
使用lftp上传:使用lftp命令连接到远程FTP服务器并上传备份文件,再次检查上传是否成功。
删除本地备份文件(可选):如果不需要保留本地备份文件,可以将其删除以节省空间。
FTP服务器设置
1、准备FTP备份服务器
安装vsftpd:在CentOS 7.9上,通过yum y install vsftpd db4 db4utils
命令安装vsftpd。
创建vsftpd用户并配置:创建备份用户并指定用户家目录,配置vsftpd的相关选项。
启动vsftpd服务:通过service vsftpd start
命令启动vsftpd服务,并设置开机自启动。
2、测试FTP服务器
安装ftp软件包:通过yum install ftp
命令安装ftp软件包。
连接测试:使用ftp命令连接本机的FTP服务器进行测试。
MySQL数据库的FTP备份可以通过多种方式实现,包括使用专门的软件如MySqlBackupFTP,或者通过编写Shell脚本来实现自动备份和上传,这些方法各有特点,可以根据具体的需求和环境选择合适的方案,在进行FTP备份时,需要注意安全性问题,确保数据传输过程中的加密和认证措施得当。
序号 | 参数名称 | 描述 |
1 | FTP服务器地址 | FTP服务器的IP地址或域名,如:ftp.example.com |
2 | FTP端口 | FTP服务器使用的端口号,默认为21 |
3 | FTP用户名 | 登录FTP服务器的用户名 |
4 | FTP密码 | 登录FTP服务器的密码 |
5 | 本地备份目录 | 本地磁盘上的目录,用于存放备份的MySQL数据库文件 |
6 | 备份文件名格式 | 备份文件名的命名规则,如:backup_YYYYMMDD.sql |
7 | 备份频率 | 备份的周期,如:每天、每周、每月等,可使用数字表示天数或周数 |
8 | 备份文件压缩 | 是否对备份文件进行压缩,如:gzip、bzip2等,可选值:是、否 |
9 | 备份文件保留天数 | 保留备份文件的天数,超过此天数的备份文件将被删除 |
10 | MySQL服务器地址 | MySQL服务器的IP地址或域名,如:mysql.example.com |
11 | MySQL用户名 | 登录MySQL服务器的用户名 |
12 | MySQL密码 | 登录MySQL服务器的密码 |
13 | 备份数据库名 | 需要备份的MySQL数据库名,可使用通配符进行匹配多个数据库 |
14 | 备份文件存储路径 | 备份文件在FTP服务器上的存储路径,如:/backup/mysql/ |
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1200796.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复