/bin/sh # 备份数据库 # Mysql 用户名密码 MYSQL_USER=root MYSQL_PASS=root BACKUP_DIR=/data/backup/mysql DATA_DIR...="mysql_"$DATE".gz" # 删除一个月之前的数据库备份 find $BACKUP_DIR -name "mysql_*.gz" -type f -mtime +30 -exec rm...{} \; # 循环备份数据库 for DBNAME in $DBS do if [ !.../bin/bash # 要备份的数据库名,多个数据库用空格分开 databases=(db1 db2 db3) # 备份文件要保存的目录 basepath='/root/backup/b3log.org..."$basepath" ]; then mkdir -p "$basepath" fi # 循环databases数组 for db in ${databases[*]} do # 备份数据库生成
/bin/bash host="目标ip" id="用户名" pwd="密码" dbs=$(echo "show databases;" | mysql -u$id -p$pwd -h$host) nodeldb...="Database information_schema performance_schema test mysql" backuppath="/root/mysqlbackup" day=15 localIp...-d $backuppath ] &&mkdir -p $backuppath cd $backuppath backupname=mysql_$(date +%Y-%m-%d) for db in $...== "0" ] then echo $(date +%Y-%m-%d)" $localIp $host $db mysqldump sucess">>mysql.log else...echo $(date +%Y-%m-%d)" $localIp $host $db mysql dump failed">>mysql.log echo $(date +%
路 获取mysql服务器所有数据库名称,过滤掉不需要备份的数据库 通过mysqldump来for循环导出所有的数据库的sql文件 用zip加密压缩所有的sql文件 定期进行数据清理工作 shell代码.../bin/bash #1.数据库信息定义 mysql_host="192.168.1.1" mysql_user="root" mysql_passwd="root"...-d $back_dir ]; then mkdir -p $back_dir fi #备份的数据库数组 db_arr=$(echo "show databases...;" | mysql -u$mysql_user -p$mysql_passwd -h$mysql_host) #不需要备份的单例数据库 nodeldb="test1" #当前日期...= 0 ]; then rm -r $data_dir fi 数据定期清理脚本 作用定期清理14天前的备份文件 shell代码 #!
-d $backuppath ] && -=mysql_$( +%Y-%m-% db -u$ -p$ -S /tmp/mysql.sock $db > [ == ] #$?...$( +%Y-%m-%d)>> -czf $backupname..gz * [ == $( +%Y-%m-%d)>> $( +%Y-%m-%d)>> -f *=mysql
一、编写Shell脚本文件 bkmysql.sh #!.../bin/bash #数据库登录信息 #如果在windows编辑器下编辑 了 ,请把格式转为unix下的格式 # :set ff=unix #mysqldump目录 BIN_DIR="/...usr/local/mysql/bin" #登录名 DB_USER="root" #登录密码 DB_PWD="123456" #主机 DB_HOST="localhost" #备份地址 BK_PATH=..."/data/dbbk" #当前日期 NOW_DATE=`date +%Y-%m-%d` #-------------------------------- # 数据库 : affiliate #--...$DB_USER -p$DB_PWD -h$DB_HOST --databases $TAB_NAME > $BK_PATH/$TAB_NAME"_"$NOW_DATE.sql #删除超过60天的备份数据
1、分库备份 !/bin/bash image.png 2、分库分表备份 !/bin/sh image.png [ !
password="111111" #mysql连接端口 port="3306" mysql_path="/usr/bin/" date=$(date +%Y-%m-%d_%H-%M-%S) del_date...-e $backup_path/${date} ];then mkdir -p {$backup_path/${date},$backup_log_path} fi #echo "开始备份所有数据库"...:${date} 备份方式:mysqldump 备份数据库:$dbname($size) 备份状态:成功!"...>>$backup_log else cd $backup_path/${date} echo "备份时间:${date} 备份方式:mysqldump 备份数据库:${dbname} 备份状态:失败,.../ echo "备份时间:${date} 备份方式:云备份数据库:$dbname($size) 备份状态:成功!"
概述 mysql脚本加crontab实现自动备份。 具体内容 vi /opt/mysqlBackup.sh #!.../bin/bash mysql_user="USER" # MySQL备份用户 mysql_password="PASSWORD" # MySQL备份用户的密码 mysql_host="localhost..." mysql_port="3306" mysql_charset="utf8" # MySQL编码 backup_db_arr=("db1" "db2") # 要备份的数据库名称,多个用空格分开隔开...exit else echo $welcome_msg fi # 连接到mysql数据库,无法连接则备份退出 mysql -h$mysql_host -P$mysql_port -u$..." # 判断有没有定义备份的数据库,如果定义则开始备份,否则退出备份 if [ "$backup_db_arr" !
/bin/bash mysql_host="localhost" mysql_user="xxxx" mysql_pwd="xxxxx" #保存备份sql的文件路径 db_dir="/data/backup...-d $db_dir];then # mkdir $db_dir #fi db_arr=$(echo 'show databases' | mysql -u$mysql_user -p$...mysql_pwd -h$mysql_host) #获得当前日期 date=$(date +%Y%m%d) ziname=$date".zip" #指定的数据库文件 thisdb="zzaly"...-p$mysql_pwd -h$mysql_host $dbname > $db_dir"/"$sqlfile fi done find $db_dir -mtime +5 -type f |...xargs rm -f #删除5天前的数据库
一、任务描述: 写一个自动化脚本,每天2点将school数据库的score表备份并上传到FTP服务器backup目录。 二、程序代码 #!...58.220.207.226 &> /dev/null 00 02 * * * sh auto_backup.sh &> /dev/null 四、测试效果 这里为了测试方便,将时间调整为每分钟做一次备份
MySQL8.0后续版本中主推使用MySQL Shell进行相关日常管理及维护操作,如果后续移除了mysqldump等命令后,如何进行数据库备份等相关操作呢?本文开始进行数据库备份的操作。 1....MySQL Shell 安装 1.1 下载 可以在MySQL官网进行下载,地址https://dev.mysql.com/downloads/shell/ 需要根据操作系统类型、版本及glibc版本选择对应的文件下载.../mysql-shell/bin"追加至/etc/profile中 在其他位置直接运行mysqlsh命令,即可得到如下结果: 此时,完成了mysql shell部署。...进行数据库备份 2.1 登录数据库 使用mysqlsh登录数据库,并列出库名,例如: [root@VM-4-14-centos ~]# mysqlsh -u root -p -S /data/mysql...2.2 备份整个实例 创建备份目录 mkdir -p /data/backup 登录数据库 mysqlsh -u root -p -S /data/mysql/mysql3306/tmp/mysql.sock
192.168.1.2服务器对192.168.1.1服务器上的MySQL数据库进行备份。...必须满足的条件: 1、在192.168.1.1服务器上创建专门用来备份的数据库账号,并赋予相应的权限: mysql> grant select,lock tables on *.* to 'operator...'@'192.168.%.%' identified by '123456'; #备份数据库需要账号具有查看表和锁定表的权限 2、在192.168.1.2服务器上使用该账号进行手工备份,测试是否可以备份成功...#编写shell脚本 #!...bak="/opt/backup" #指定备份目录 cmd="/usr/local/mysql/bin/mysqldump" #指定命令工具 time=`date +%Y%m
每天固定时间用mysqldump 备份mysql数据。 #!.../bin/bash 每天早上4点, mysql备份数据 orangleliu chmod 700 backup.sh crontab -e 0 4 * /home/erya/run/moniter/...mysql_backup.sh user="radius" password="" host="localhost" db_name="radius" backup directory base_dir...="/home/backup" backup_log="${base_dir}/mysql_backup.log" backup_path=${base_dir} file info date=$(date
完全备份指定数据库 DIR=/database/backupdir FILE_NAME=`date +%y%m%d%H` FILE_NAME=$DIR/db_$FILE_NAME.sql.gz echo...quick --routines --single-transaction --master-data=1 db_name | gzip > $FILE_NAME echo finish backup 从备份的文件恢复数据库...#db restore abc gunzip mysql --user=dbuser --password=dbpwd --port...=3336 --host=10.10.20.1 --database=test 在备份时出现mysqldump: Error: Binlogging on server not active时,是因为mysql...的binlog没有启动,在mysql的my.ini文件中[mysqld]下面添加 log-bin=mysql-bin 然后重新启动mysql服务,问题就解决
MySQL 数据,包含默认数据库 "mysql、sys、infomation_schema、performance_schema" ☞ tar 打包冷备份 首先,要查询到数据存放目录 可以通过查看...感觉,这个技术含量不如 —— 使用 XtraBackup 进行数据热备 ---- Shell 脚本自动备份 不过,这种方式需要 MySQL 服务开启,不然无法备份数据 个人觉得有点像热备份 但是,...exit else echo $welcome_msg fi # 连接到mysql数据库,无法连接则备份退出 mysql -h$mysql_host -P$mysql_port -u$mysql_user..." # 判断有没有定义备份的数据库,如果定义则开始备份,否则退出备份 if [ "$backup_db_arr" !.../test_pxc-202101291229.sql 参考文章 —— 【CentOS MySQL 自动备份 shell 脚本】 【题外话】 个人觉得 这种方式倒是挺适合本地测试或者小型项目
前言 来自网上,可以使用,注意先创建 /mysql/backup/files /mysql/backup/logs 文件夹 #!.../bin/bash #备份目录 BACKUP_ROOT=/mysql/backup BACKUP_FILEDIR=$BACKUP_ROOT/files BACKUP_LOGDIR=$BACKUP_ROOT.../logs #当前日期 DATE=$(date +%Y%m%d) ######备份###### #查询所有数据库 #-uroot -p123456表示使用root账号执行命令,且root账号的密码为...:123456,-Ev后面是要忽略的数据库 DATABASES=$(mysql -uroot -p'123456' -e "show databases" | grep -Ev "Database|sys...|information_schema|performance_schema|mysql") echo $DATABASES #循环数据库进行备份 for db in $DATABASES do echo
下面这段Linux的Shell脚本用于每日自动备份MySQL数据库,可通过Linux的crontab每天定时执行。在脚本中可设置需要备份的数据库表清单,并且会将备份文件通过gzip压缩。.../bin/bash mysql_pwd="password" mysql_dump="/usr/local/mysql/bin/mysqldump" cur_year=$(date +"%Y") cur_month...=$(date +"%m") cur_day=$(date +"%d") dump_path="/usr/backup/mysql/$cur_year-$cur_month/$cur_day" arr_tables...-d "$dump_path" ]; then mkdir -p "$dump_path" fi for cur_table in ${arr_tables[*]}; do $mysql_dump -uroot...-p$mysql_pwd --opt mydb $cur_table | gzip > $dump_path/$cur_table.sql.gz done 阳光部落原创,更多内容请访问 http://
Shell脚本是我们写不同类型命令的一种脚本,这些命令在这一个文件中就可以执行。我们也可以逐一敲入命令手动执行。...主脚本(用于备份mysql数据库): 该Shell脚本可以自动备份数据库。只要复制粘贴本脚本到文本编辑器中,输入数据库用户名、密码以及数据库名即可。我备份数据库使用的是mysqlump 命令。...执行该脚本,首先会进入 /backup 目录,然后该脚本会把原有的旧数据库备份移动到 /oldbackup 文件夹中,接着根据系统的日期及时间生成一个文件名,在最后 mysqldump 命令会生成一个“....sql”格式的数据库备份文件。...013* * * * /backup/backup.sh 本任务表示的是在每天下午1点钟把数据库备份到指定的文件夹。有关cron任务设置的详细内容可以查阅crontab手册。
文章时间:2019年1月31日 08:49:46 作者:余伟同学 说明:利用crotab定时器,实现定时自动备份mysql数据库 更新人 更新时间 更新内容 余伟同学 2019年10月10日...12:30:57 增加复杂版本sh,7天自动删除 安装crotab 安装教程地址:https://wiki.nooss.cn/archives/84.html 编写备份mysql的shell脚本 #简单版本...###################数据库配置信息####################### user=root passwd=root dbname=databases mysql_back_path...-p$passwd $dbname > $mysql_back_path/$time.sql.gz echo '数据库备份完成' find /home/dbback/ -mtime +3 -name..."*.sql.gz*" -exec rm -rf {} \; #删除3天以上的备份sql echo '检查删除过期备份数据库成功' 说明 -u 后面跟的是用户名 -p 后面跟的是密码 datebaes
领取专属 10元无门槛券
手把手带您无忧上云