Centos7.9备份mysql数据库

1. 备份

  • 备份shell脚本
[root@iZoqvrzbtnzd6kZ local]# vi mysql_backup.sh 
#!/bin/bash
#设置MySQL登录信息
MYSQL_USER="root"
MYSQL_PASSWORD="**********"
MYSQL_DATABASE="ubox"
BACKUP_DIR="/usr/local/mysql_backup"
MONTH="`date +'%Y-%m'`"
DATE="`date +'%Y-%m-%d'`"
TIME="`date +'%H:%M'`"

#创建备份目录和文件名
mkdir -p $BACKUP_DIR/$MYSQL_DATABASE/$MONTH
FILENAME=$BACKUP_DIR/$MYSQL_DATABASE/$MONTH/$MYSQL_DATABASE-$DATE-$TIME.sql.gz
chmod +w $BACKUP_DIR/$MYSQL_DATABASE/$MONTH
#使用 mysqldump 命令备份数据库
mysqldump --default-character-set=utf8 --user=$MYSQL_USER --password=$MYSQL_PASSWORD --databases $MYSQL_DATABASE | gzip > $FILENAME
#输出备份完成信息
echo "Backup completed on $DATE $TIME for database $MYSQL_DATABASE to $FILENAME." >> /usr/local/mysql_backup/mysql_backup.log
# 删除超过7天的备份文件
find $BACKUP_DIR/$MYSQL_DATABASE/* -mtime +7 -exec rm {} \;
  • 备份结果展示
[root@iZoqvrzbtnzd6kZ local]# cd mysql_backup/
[root@iZoqvrzbtnzd6kZ mysql_backup]# ls -lh
total 28K
-rw-r--r-- 1 root root  19K Mar 27 02:07 mysql_backup.log
drwxr-xr-x 3 root root 4.0K Mar 22 09:47 ubox
[root@iZoqvrzbtnzd6kZ mysql_backup]# cd ubox/
[root@iZoqvrzbtnzd6kZ ubox]# ls -lh
total 4.0K
drwxr-xr-x 2 root root 4.0K Mar 27 02:07 2024-03
[root@iZoqvrzbtnzd6kZ ubox]# cd 2024-03/
[root@iZoqvrzbtnzd6kZ 2024-03]# ls -lh
total 7.1G
-rw-r--r-- 1 root root 1.8G Mar 24 02:06 ubox-2024-03-24-02:00.sql.gz
-rw-r--r-- 1 root root 1.8G Mar 25 02:06 ubox-2024-03-25-02:00.sql.gz
-rw-r--r-- 1 root root 1.8G Mar 26 02:06 ubox-2024-03-26-02:00.sql.gz
-rw-r--r-- 1 root root 1.9G Mar 27 02:07 ubox-2024-03-27-02:00.sql.gz

2. 备份库导入\导出

  • 步骤1:解压脚本文件
[root@localhost software]# ls -lh
total 2.4G
-rw-r--r--  1 root root 5.4K Mar 26 04:45 my.cnf
-rw-r--r--. 1 root root 545M Jun 22  2023 mysql-5.7.43-1.el7.x86_64.rpm-bundle.tar
drwxr-xr-x. 2 root root  106 Sep 21  2023 rabbitmq
-rw-r--r--. 1 root root 2.4M Mar 21 23:33 redis-6.2.6.tar.gz
-rw-r--r--  1 root root 1.9G Mar 27 04:01 ubox-2024-03-27-02_00.sql.gz
-rwxr-xr-x. 1 root root 2.4K Mar 21 23:29 upgrade_openssh8.9p1.sh
[root@localhost software]# gunzip ubox-2024-03-27-02_00.sql.gz
  • 步骤2:执行导入脚本
#创建数据库
create database ubox default character set utf8 collate utf8_general_ci; 
#执行脚本导入
[root@localhost software]# mysql -u root -p --default-character-set=utf8 ubox < /home/sqyr/software/ubox-2024-03-27-02_00.sql

相关推荐

  1. Centos7.9备份mysql数据库

    2024-03-28 13:54:07       44 阅读
  2. MySQL商城数据表70-79

    2024-03-28 13:54:07       29 阅读
  3. mysql数据库备份命令

    2024-03-28 13:54:07       57 阅读
  4. mysql数据库备份恢复

    2024-03-28 13:54:07       37 阅读
  5. MySQL数据库-备份

    2024-03-28 13:54:07       37 阅读
  6. 定时备份mysql数据库

    2024-03-28 13:54:07       37 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-28 13:54:07       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-28 13:54:07       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-28 13:54:07       87 阅读
  4. Python语言-面向对象

    2024-03-28 13:54:07       96 阅读

热门阅读

  1. Spring和Spring Boot的区别

    2024-03-28 13:54:07       42 阅读
  2. python借用redis调用大模型,实现摘要的速度优化

    2024-03-28 13:54:07       37 阅读
  3. mysql 用户管理-权限表

    2024-03-28 13:54:07       35 阅读
  4. php:页面链接数据库(封装),其他页面引入方法

    2024-03-28 13:54:07       41 阅读
  5. Hbase常用命令选择题

    2024-03-28 13:54:07       37 阅读
  6. 浅谈AI大模型学习的理论基础和发展

    2024-03-28 13:54:07       42 阅读
  7. 搭建Docker Notary服务

    2024-03-28 13:54:07       44 阅读
  8. 如何在服务器上传/下载文件

    2024-03-28 13:54:07       34 阅读
  9. 【前端学习——css篇】4.px和rem的区别

    2024-03-28 13:54:07       41 阅读
  10. babel.min.js -1

    2024-03-28 13:54:07       33 阅读
  11. 1.linux的时间问题

    2024-03-28 13:54:07       37 阅读
  12. linux的git命令学习[常见命令]

    2024-03-28 13:54:07       43 阅读