MySql backup scripts--Mysql备份脚本

@echo off & setlocal ENABLEEXTENSIONS 

:: ---------- 配置项 ---------- 

:: 备份放置的路径,加 \ 
set BACKUP_PATH=E:\Server_DB_Backup\
if not exist %BACKUP_PATH% ( 
mkdir %BACKUP_PATH%
) 

:: 要备份的数据库名称,多个用空格分隔 
set DATABASES=tdsdb quartzdb

:: MySQL 用户名 
set USERNAME=root 

:: MySQL 密码 
set PASSWORD=root 

:: MySQL Bin 目录,加 \ 
:: 如果可以直接使用 mysqldump(安装时添加 MySQL Bin 目录到了环境变量),此处留空即可 
REM local path
SET MYSQL=%programfiles%\MySQL\MySQL Server 5.7\bin\

REM server path
REM SET MYSQL=D:\xampp\mysql\bin\

set ZIP=C:\Progra~1\7-Zip\7z.exe


SET SUXFIX=%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2%

set DIR=%BACKUP_PATH%%SUXFIX%\ 


:: create dir 
if not exist %DIR% ( 
mkdir %DIR% 2>nul 
) 
if not exist %DIR% ( 
echo Backup path: %DIR% not exists, create dir failed. 
goto exit 
) 
cd /d %DIR% 

:: backup 
echo Start dump databases... 
for %%D in (%DATABASES%) do ( 
echo Dumping database %%D ... 
"%MYSQL%mysqldump" -u%USERNAME% -p%PASSWORD% --default-character-set=UTF8 %%D> %%D.%SUXFIX%.sql

if exist %ZIP% ( 
%ZIP% a %%D.%SUXFIX%.7z %%D.%SUXFIX%.sql 2>nul
del /F /S /Q %%D.%SUXFIX%.sql 2>nul 
) 
) 
echo Done 

:exit 
请注意字符集  --default-character-set=UTF8这样可以避免备份的中文是乱码
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据提供的引用内容,K8S中的MySQL数据库备份脚本可以使用多种工具和脚本来实现。其中,常用的工具包括mysqldump、xtrabackupmysqlbackupmysql shell。这些工具可以通过编写shell脚本或Windows bat脚本来执行备份操作。 一个示例的备份脚本如下所示: ```bash #!/bin/bash backup_path="/opt/app-ai/deepwise/data/mysql-backup" data_dir="/opt/app-ai/deepwise/data/mysql-data" DATE=$(date +%Y-%m-%d_%H-%M-%S) backup(){ if \[ ! -z "${data_dir}" \];then mkdir -p ${backup_path} date >> ${backup_path}/${DATE}.log echo "innobackupex --user=root --password=password --host=mysql-headless ${backup_path} > ${backup_path}/${DATE}.log 2>&1 &" innobackupex --user=root --password=password --host=mysql-headless ${backup_path} > ${backup_path}/${DATE}.log 2>&1 date >> ${backup_path}/${DATE}.log fi } clean(){ find ${backup_path}/ -name "*" -mtime +14 -exec rm -rf {} \; } backup clean ``` 这个脚本使用innobackupex工具来执行MySQL备份操作,并将备份文件存储在指定的路径中。同时,还包括了清理过期备份文件的功能。 此外,还可以使用Kubernetes的CronJob来定期执行增量备份操作。一个示例的CronJob配置如下所示: ```yaml apiVersion: batch/v1beta1 kind: CronJob metadata: namespace: deepwise name: mysql-incdump spec: jobTemplate: spec: completions: 1 template: spec: restartPolicy: Never volumes: - name: mysql-script hostPath: path: /opt/app-ai/deepwise/data/scripts - name: mysql-backup hostPath: path: /opt/app-ai/deepwise/data/mysql-backup - name: local-time hostPath: path: /etc/localtime - name: mysql-data hostPath: path: /opt/app-ai/deepwise/data/mysql-data containers: - name: mysqldump-container image: percona/percona-xtrabackup:2.4 volumeMounts: - name: mysql-script mountPath: /opt/app-ai/deepwise/data/scripts - name: local-time mountPath: /etc/localtime - name: mysql-backup mountPath: /opt/app-ai/deepwise/data/mysql-backup - name: mysql-data mountPath: /var/lib/mysql command: - "sh" - "/opt/app-ai/deepwise/data/scripts/backup_inc.sh" schedule: "0 0 * * *" ``` 这个CronJob配置使用percona/percona-xtrabackup镜像来执行增量备份操作,并将备份文件存储在指定的路径中。备份脚本backup_inc.sh位于/opt/app-ai/deepwise/data/scripts目录下。 请根据实际情况修改脚本和配置文件中的路径和参数,以适应您的环境和需求。 #### 引用[.reference_title] - *1* [分享(2)一个 mysqldump 备份 MySQL 数据库的脚本](https://blog.csdn.net/weixin_44496870/article/details/129706015)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [[kubernetes]-使用cronjob定时备份mysql](https://blog.csdn.net/xujiamin0022016/article/details/124648643)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值