首页 > 数据库 >mysql备份常用方案及使用

mysql备份常用方案及使用

时间:2023-09-25 17:12:18浏览次数:42  
标签:常用 备份 mysql id MySQL 数据库 config email

mysql中一个表的字段 删除 如果需要备份的话,有几种方案,以及选择哪一种方案 MySQL 是一种流行的关系型数据库管理系统 (RDBMS),在生产环境中被广泛使用。对 MySQL 数据库进行备份是非常重要的,以防止数据丢失或损坏。以下是几种常见的 MySQL 备份方案及其使用场景。

1. mysqldump 命令

mysqldump 是一个备份 MySQL 数据库和表的命令行工具。它可以生成一个包含 SQL 语句的文本文件,用于恢复数据。通过使用此命令,您可以将整个数据库、一个或多个表、甚至特定查询的结果备份到本地磁盘上。

使用场景

备份 MySQL 数据库是一个常见的场景,例如在迁移数据、升级 MySQL 版本或为了恢复数据而进行备份。mysqldump 还可以用于备份不同服务器之间的 MySQL 数据库或表格。它还支持各种参数,以提高灵活性,例如加密、压缩等。

示例

以下是使用 mysqldump 命令备份整个 MySQL 数据库的示例:
复制代码
$ mysqldump -u root -p mydatabase > mydatabase.sql
该命令将备份名为“mydatabase”的整个 MySQL 数据库,并将其输出到名为“mydatabase.sql”的 SQL 文件中。

2. 复制表

复制表是通过创建新表来备份 MySQL 表的一种方法。复制表时,从原始表中删除不需要的列,以生成备份表。

使用场景

复制表通常用于备份的表非常大或有很多索引的情况,因为此外,示例 以下是一个复制 MySQL 表的示例: 首先,创建一个新表:
复制代码
CREATE TABLE backup_table LIKE original_table;
然后,从原始表中选择并插入所需的列:
复制代码
INSERT INTO backup_table SELECT column1, column2, column3 FROM original_table;

3. 存储过程

存储过程是一种包含一组 SQL 语句的代码块,可以用于执行特定任务。通过编写存储过程,您可以备份 MySQL 表。

使用场景

存储过程可以用于备份单个表,尤其是在没有访问权限的情况下。 此外,存储过程可以被其他应用程序调用,因此备份数据可以与其他操作结合使用。

示例

以下是备份 MySQL 表的一个存储过程示例:
复制代码
DELIMITER //CREATE PROCEDURE backup_table(IN tablename VARCHAR(255))
BEGINSET @sql = CONCAT('SELECT * INTO ', tablename, '_backup FROM ', tablename);
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;END //
DELIMITER ;
在这个例子中,该存储过程备份 MySQL 表作为一个新的表(附加后缀 "_backup")。为了运行该存储过程,请执行以下命令:
复制代码
CALL backup_table('mytable');
以上就是 MySQL 数据库备份的三个常见方案以及使用场景。 综上所述,在选择适当的 MySQL 备份方案时,需要考虑存储空间、备份速度、恢复数据的时间和复杂度等因素。总的来说,mysqldump 是最常见和最可靠的备份工具之一       CREATE TABLE IF NOT EXISTS email_config_tmp.config_bak ( id BIGINT AUTO_INCREMENT COMMENT '自增ID', config_id BIGINT COMMENT 'user_email_config表id', email_addr VARCHAR(64) NOT NULL DEFAULT '' COMMENT '邮箱地址', PRIMARY KEY (id) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8;   CREATE TABLE IF NOT EXISTS email_config_tmp.config_log_bak ( id BIGINT AUTO_INCREMENT COMMENT '自增ID', config_log_id BIGINT COMMENT 'user_email_config_log表id', email_addr VARCHAR(64) NOT NULL DEFAULT '' COMMENT '邮箱地址', PRIMARY KEY (id) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8;   Insert into email_config_tmp.config_bak(config_id ,email_addr) Select id,email_addr from user_email_config order by id; Insert into email_config_tmp.config_log_bak(config_log_id ,email_addr) Select id,email_addr from user_email_config_log order by id;  

标签:常用,备份,mysql,id,MySQL,数据库,config,email
From: https://www.cnblogs.com/shoshana-kong/p/17728347.html

相关文章

  • Go - 【字符串,数组,哈希表】常用操作
    一.字符串字符串长度:s:="hello"l:=len(s)fmt.Println(l)//输出5遍历字符串:s:="hello"fori,c:=ranges{fmt.Printf("%d:%c",i,c)}//输出:0:h1:e2:l3:l4:ofori:=0;i<len(s);i++{ fmt.Printf("%s",s[......
  • Java -【字符串,数组,哈希表】常用操作
    一.字符串创建字符串:可以使用双引号或者String类的构造方法创建字符串。Stringstr1="HelloWorld";Stringstr2=newString("HelloWorld");连接字符串:可以使用加号或者String类的concat()方法连接字符串。Stringstr3=str1+str2;Stringstr4=str1.concat(str2);获......
  • yum安装mysql8
    记录一下安装过程用于后面项目参考目录说明安装步骤yum安装默认目录修改默认的数据目录必要的my.cnf属性修改卸载Mysql说明一般情况下都是docker安装,部分特殊情况下,例如老外的项目部分禁用docker,那一般二进制安装或者yum直接安装。安装操作系统redhat7.xmysql版本8.0.22安装方......
  • Vue3 基础 – 快速上手 & 常用指令
    1.在HTML网页中使用vue3的3个基本步骤a.通过 script 标签的 src 属性,在当前网页中全局引入vue3的脚本文件:<scriptsrc="https://unpkg.com/vue@3/dist/vue.global.js"></script>b.创建vue3的单页面应用程序实例://2.1从Vue对象中解构出createApp函数const{cre......
  • java项目开发常用配置文件模板
    mybatisconfig文件1<?xmlversion="1.0"encoding="UTF-8"?>2<!DOCTYPEconfiguration3PUBLIC"-//mybatis.org//DTDConfig3.0//EN"4"http://mybatis.org/dtd/mybatis-3-config.dtd">5......
  • ES常用查询命令
    一、基本命令1获取所有_cat命令curl-XGETlocalhost:9200/_cat2获取es集群服务健康状态3查看es节点信息4查看es指定节点信息二、索引操作查看ES中所有的索引新建索引删除索引查看指定索引信息查看索引的统计信息三、文档操作*3.1查询索引中的全部文档3.2......
  • mysql学习
    mysql0.数据库常见概念0.1概念数据库:英文单词DataBase,简称DB。按照一定格式存储数据的一些文件的组合。顾名思义:存储数据的仓库,实际上就是一堆文件。这些文件中存储了具有特定格式的数据。数据库管理系统:DataBaseManagement,简称DBMS。数据库管理系统是专门用来管理......
  • MySQL实战实战系列 07 行锁功过:怎么减少行锁对性能的影响?
    在上一篇文章中,我跟你介绍了MySQL的全局锁和表级锁,今天我们就来讲讲MySQL的行锁。 MySQL的行锁是在引擎层由各个引擎自己实现的。但并不是所有的引擎都支持行锁,比如MyISAM引擎就不支持行锁。不支持行锁意味着并发控制只能使用表锁,对于这种引擎的表,同一张表上任何时刻只......
  • 常用词汇(英)
    CodeForces/Atcoder常用词汇(英),俄我也不会AT:Atcoder,CF:Codeforces-permutation排列-initially初始地-integers整数-elements元素-obtain获取,取得-lexicographical(ly)字典序(地)-[CF]correspond(ing)对应-[AT]denote代表,对应-exceed超过,......
  • MySQL——处理JSON类型的数据
    MySQL对JSON类型数据的处理参考视频:快速学习MySQL8JSON注意,本文的键名也可以叫key,键值也可以叫value,意思是一样的1.字符串查询:JSON_EXTRACT假设我们有一个表叫做testDemo,其中有一个字段叫做details,类型为JSON,他的数据结构如下,我们就以这个结构为例(这是个例子,假设有很多行......