mysql的数据库备份与还原

hkt 发布于 2025-06-14 26 次阅读


前言

数据库在各种服务应用中是不可或缺的存在,数据库存放着用户的各种数据以及参数。所以数据库的备份和还原也成为了运维的一项必备的技能,在此记录。

数据库(Database)是长期存储在计算机内‌有组织、可共享的数据集合‌,通过数据库管理系统(DBMS)统一管理,核心特性包括:

  1. 结构化存储‌:数据按特定模型(如表格)组织,减少冗余,提升一致性 410。
  2. 数据独立性‌:物理存储结构变动不影响逻辑结构,逻辑结构变动不影响应用程序 410。
  3. 共享性与安全性‌:支持多用户并发访问,通过权限控制保障数据安全 49。
  4. 持久化管理‌:提供事务机制(如回滚、提交)确保数据完整性与可靠性 11。

其中数据库又分为

  1. 关系型数据库(RDBMS)
  • 结构‌:数据以二维表格(行/列)存储,表间通过主键/外键关联 。
  • 特点‌:支持ACID事务(原子性、一致性、隔离性、持久性),适合高一致性场景(如金融系统)

代表产品‌:MySQL、Oracle、SQL Server、PostgreSQL

  1. 非关系型数据库(NoSQL)

处理半/非结构化数据(如日志、社交网络数据)、高并发读写 

整理完了基本的概念,那么大概就能明白数据库的重要性

  • 备份单个数据库
mysqldump -u [username] -p[password] [database_name] > backup.sql
  • 备份所有数据库
mysqldump -u [username] -p[password] --all-databases > all_backup.sql
  • 备份特定表
mysqldump -u [username] -p[password] [database_name] [table1] [table2] > tables_backup.sql
  • 还原单个数据库
mysql -u [username] -p[password] [database_name] < backup.sql
  • 如果数据库不存在,需要先创建
mysql -u root -p -e "CREATE DATABASE [database_name]"
mysql -u [username] -p[password] [database_name] < backup.sql
  • 使用source命令还原
mysql  -u  root  -p "密码"    #进入数据库
use  database   #使用某个数据库
source  "path"   #在此数据库中还原
此作者没有提供个人介绍。
最后更新于 2025-06-14