mysql 数据库在liunx 上的备份和恢复

一. mysql 数据库备份 sh 脚本

1. vim sqlback.sh

bash 复制代码
#!/bin/bash

USER="root"        #账号
PASSWORD="123456"  #密码
DATABASE="test"    #数据库名
BACKUP_DIR="/home/dev/mysql"   #备份存的目录
TIMESTAMP=$(date +"%F")        #带时间命名

BACKUP_FILE="$BACKUP_DIR/$DATABASE-$TIMESTAMP.sql" 

mysqldump -u $USER -p$PASSWORD $DATABASE > $BACKUP_FILE

if [ $? -eq 0 ]; then
  echo "Backup succeeded: $BACKUP_FILE"
else
  echo "Backup failed"
fi

2. chmod +x sqlback.sh

3. ./sqlback.sh

4. 执行完后会在 /home/dev/mysql 目录下生成备份文件

二. mysql 数据库恢复流程

1. 如果数据库没有存在,要先创建数据库

bash 复制代码
 mysql -u root -p -e "CREATE DATABASE test;"

2. vim sqlRestore.sh

bash 复制代码
#!/bin/bash

# MySQL credentials
USER="root"             #账号
PASSWORD="123456"       #密码
DATABASE="test"         #数据库名
BACKUP_FILE="/home/dev/mysql/test-2024-06-04.sql.sql"   #数据库备份的目录

# Run mysql to restore
mysql -u $USER -p$PASSWORD $DATABASE < $BACKUP_FILE

# Check if the command succeeded
if [ $? -eq 0 ]; then
  echo "Restore succeeded: $DATABASE"
else
  echo "Restore failed"
fi

2. chmod +x sqlRestore.sh

3. ./sqlRestore.sh

4. 恢复成功

相关推荐
陌上丨2 小时前
Redis的Key和Value的设计原则有哪些?
数据库·redis·缓存
AI_56782 小时前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
ccecw2 小时前
Mysql ONLY_FULL_GROUP_BY模式详解、group by非查询字段报错
数据库·mysql
JH30732 小时前
达梦数据库与MySQL的核心差异解析:从特性到实践
数据库·mysql
数据知道3 小时前
PostgreSQL 核心原理:如何利用多核 CPU 加速大数据量扫描(并行查询)
数据库·postgresql
麦聪聊数据4 小时前
Web 原生架构如何重塑企业级数据库协作流?
数据库·sql·低代码·架构
未来之窗软件服务4 小时前
数据库优化提速(四)新加坡房产系统开发数据库表结构—仙盟创梦IDE
数据库·数据库优化·计算机软考
Goat恶霸詹姆斯5 小时前
mysql常用语句
数据库·mysql·oracle
大模型玩家七七6 小时前
梯度累积真的省显存吗?它换走的是什么成本
java·javascript·数据库·人工智能·深度学习
曾经的三心草6 小时前
redis-9-哨兵
数据库·redis·bootstrap