mysql的语句备份详解

news/2025/2/8 22:21:34 标签: mysql, adb, 数据库

使用mysqldump工具备份(适用于逻辑备份)

mysqldump是 MySQL 自带的一个非常实用的逻辑备份工具,它可以将数据库中的数据和结构以 SQL 语句的形式导出到文件中。

1. 备份整个数据库
mysqldump -u [用户名] -p [数据库名] > [备份文件名].sql

参数说明

  • -u [用户名]:指定连接 MySQL 服务器的用户名。
  • -p:表示需要输入该用户的密码。
  • [数据库名]:要备份的数据库名称。
  • >:将备份内容重定向到指定的文件。
  • [备份文件名].sql:指定备份文件的名称,通常以 .sql 结尾。

示例:备份名为 testdb 的数据库,用户名为 root

mysqldump -u root -p testdb > testdb_backup.sql

执行该命令后,系统会提示你输入 root 用户的密码,输入正确密码后,testdb 数据库的备份文件 testdb_backup.sql 就会生成在当前目录下。

2. 备份多个数据库
mysqldump -u [用户名] -p --databases [数据库名1] [数据库名2] ... > [备份文件名].sql

示例:备份 testdb1 和 testdb2 两个数据库

mysqldump -u root -p --databases testdb1 testdb2 > multiple_dbs_backup.sql
3. 备份所有数据库
mysqldump -u [用户名] -p --all-databases > [备份文件名].sql

示例

mysqldump -u root -p --all-databases > all_dbs_backup.sql

使用mysqlpump工具备份(适用于高并发场景,MySQL 5.7 及以上版本)

mysqlpump 是 MySQL 5.7 引入的一个新的逻辑备份工具,相比 mysqldump,它在处理高并发场景时性能更好。

备份整个数据库
mysqlpump -u [用户名] -p [数据库名] > [备份文件名].sql

示例:备份 testdb 数据库

mysqlpump -u root -p testdb > testdb_mysqlpump_backup.sql

使用 MySQL 命令行进行物理备份(适用于 InnoDB 存储引擎)

物理备份是直接复制数据库的物理文件,这种方法速度快,但需要在数据库停止服务时进行,适用于 InnoDB 存储引擎。

1. 停止 MySQL 服务
# 对于使用systemd的系统
sudo systemctl stop mysql
# 对于使用SysVinit的系统
sudo service mysql stop
2. 复制数据库文件

数据库文件通常存储在 /var/lib/mysql 目录下,你可以将需要备份的数据库文件夹复制到其他位置。

sudo cp -R /var/lib/mysql/[数据库名] /path/to/backup/directory

示例:备份 testdb 数据库

sudo cp -R /var/lib/mysql/testdb /home/user/backup/
3. 启动 MySQL 服务
# 对于使用systemd的系统
sudo systemctl start mysql
# 对于使用SysVinit的系统
sudo service mysql start

以上就是几种常见的 MySQL 备份方法及其具体操作,你可以根据实际需求选择合适的备份方式。

  1. 创建目标数据库(如果需要)
    如果备份文件是针对某个特定数据库的,而该数据库在当前 MySQL 服务器中不存在,需要先创建该数据库。在 MySQL 命令行中执行以下命令:

    CREATE DATABASE [数据库名];
    

    例如,创建名为 testdb 的数据库
    CREATE DATABASE testdb;
    
  2. 选择目标数据库
    使用以下命令选择要恢复数据的数据库
    USE [数据库名];
    

    例如,选择 testdb 数据库
    USE testdb;
    
  3. 执行备份文件恢复数据
    退出 MySQL 命令行(输入 EXIT; 或按 Ctrl + D),然后在终端中执行以下命令来恢复数据:
    mysql -u [用户名] -p [数据库名] < [备份文件名].sql
    

    例如,使用 testdb_backup.sql 文件恢复 testdb 数据库
    mysql -u root -p testdb < testdb_backup.sql
    
    4.也可以在mysql中恢复备份语句
  • 执行备份文件中的 SQL 语句:
SOURCE 备份文件的完整路径;

例如,备份文件在 /home/user/backup/testdb_backup.sql


http://www.niftyadmin.cn/n/5845336.html

相关文章

node.js内置模块之---crypto 模块

crypto 模块的作用 在 Node.js 中&#xff0c;crypto 模块提供了多种加密功能&#xff0c;包括哈希、对称加密、非对称加密和数字签名等。通过 crypto 模块&#xff0c;可以进行各种加密和解密操作&#xff0c;保护敏感数据的安全性。 crypto 模块 1. 哈希算法&#xff08;H…

C语言-预处理

1.编程: 人类语言 --->编程语言(C语言)---汇编语言--->机器语言(01010) 编译过程:预处理 编译 汇编 链接 2.预处理 预处理:1.宏定义 2.文件包含 3.条件编译 &#xff08;1&#xff09;宏定义 --- 定义了符号常量 #define 标识符 字符串 #define 宏名 宏值 #…

wps中的vba开发

推荐先学习vba语言&#xff08;兰色幻想80集&#xff09; 保存代码时注意保存为 .xlsm(启用宏的工作簿) 子程序SUN和函数FUNCTION&#xff1a; Sub 第一个程序()MsgBox "这是第一个程序"End Sub 注释Sub 第二个程序()Dim str As Stringstr "这是第二个程序&…

python爬虫--简单登录

1&#xff0c;使用flask框架搭建一个简易网站 后端代码app.py from flask import Flask, render_template, request, redirect, url_for, sessionapp Flask(__name__) app.secret_key 123456789 # 用于加密会话数据# 模拟用户数据库 users {user1: {password: password1}…

【vLLM 学习】使用 CPU 安装

vLLM 是一款专为大语言模型推理加速而设计的框架&#xff0c;实现了 KV 缓存内存几乎零浪费&#xff0c;解决了内存管理瓶颈问题。 更多 vLLM 中文文档及教程可访问 →https://vllm.hyper.ai/ vLLM 最初支持在 x86 CPU 平台上的基本模型推理和服务&#xff0c;数据类型为 FP3…

通过代理模式理解Java注解的实现原理

参考文章&#xff1a;Java 代理模式详解 | JavaGuide 相当于来自JavaGuide文章的简单总结&#xff0c;其中结合了自己对Java注解的体会 什么是代理模式 代理模式是一种比较好理解的设计模式。 简单来说就是 我们使用代理对象来代替对真实对象(real object)的访问&#xff0c…

GO、GSEA富集分析一网打进

富集分析是生物信息分析中快速了解目标基因或目标区域功能倾向性的最重要方法之一。其中代表性的计算方式有两种&#xff1a; 一是基于筛选的差异基因&#xff0c;采用超几何检验判断上调或下调基因在哪些GO或KEGG或其它定义的通路富集。假设背景基因数目为m&#xff0c;背景基…

电脑运行黑屏是什么原因?原因及解决方法

电脑运行黑屏是指电脑在正常开机或使用过程中&#xff0c;突然出现屏幕变黑&#xff0c;无法显示任何内容的现象。这种现象可能会给用户带来很多不便&#xff0c;甚至造成数据丢失或硬件损坏。那么&#xff0c;电脑运行黑屏是什么原因呢&#xff1f;下面我们将分析几种可能的原…