返回顶部
首页 > 资讯 > 数据库 >Docker中Mysql数据备份
  • 750
分享到

Docker中Mysql数据备份

dockermysql 2023-09-08 19:09:31 750人浏览 泡泡鱼
摘要

Docker中Mysql数据备份 1.创建备份用户2.准备测试数据3.完全备份4.知识点解析 1.创建备份用户 百度过程中,有人说用最高权限root直接备份,不可取不安全,所以单独创建一个

DockerMysql数据备份

1.创建备份用户

百度过程中,有人说用最高权限root直接备份,不可取不安全,所以单独创建一个用于备份的用户
学习–去看–Mysql 备份所需要的权限

1.进入mysql容器docker exec -it 40e25670af17 /bin/bash2.进入mysql,-p 回车 输入密码(密码是隐式),再回车即登陆进去mysql -uroot -p3.创建用户 '账号'@'权限' IDENTIFIED BY '密码'mysql> CREATE USER 'mysql_back'@'%' IDENTIFIED BY 'mysql_back';4.查询用户,分别执行下面两句mysql> use mysql;mysql> select user from user;+------------------+| user             |+------------------+| mysql_back       || mysql.infoschema || mysql.session    || mysql.sys        || root             |+------------------+5.设置普通权限 - 感觉不加也可以,主要是下面6的权限mysql> GRANT all ON test_db.* TO 'mysql_back'@'%' WITH GRANT OPTION;
6.设置备份需要的权限,若未加,备份会报错mysql> GRANT reload,REPLICATION CLIENT,select ON *.* TO 'mysql_back'@'%' WITH GRANT OPTION;7.查询用户权限 mysql> show grants for 'mysql_back'@'%'; +---------------------------------------------------------------------------------------+| Grants for mysql_back@%       |+---------------------------------------------------------------------------------------+| GRANT SELECT, RELOAD, REPLICATION CLIENT ON *.* TO `mysql_back`@`%` WITH GRANT OPTION || GRANT ALL PRIVILEGES ON `test_db`.* TO `mysql_back`@`%` WITH GRANT OPTION             |+---------------------------------------------------------------------------------------+

学习–去看后半部分–备份数据库需要的权限

2.准备测试数据

1.创建数据库mysql> CREATE DATABASE IF NOT EXISTS test_db DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_general_ci;2.查询数据库mysql> show databases;+--------------------+| Database           |+--------------------+| test_db            || mysql              || perfORMance_schema |+--------------------+12 rows in set (0.00 sec)3.查询创建数据库完整语句show create database test_db; +----------+-----------------------------------------------------------------------------------------------------------------------------------+| Database | Create Database   |+----------+-----------------------------------------------------------------------------------------------------------------------------------+| test_db  | CREATE DATABASE `test_db`   |+----------+-----------------------------------------------------------------------------------------------------------------------------------+1 row in set (0.00 sec)4.创建表,两句分开执行mysql> use test_db;mysql> create table tb_test ( id INT(11), name VARCHAR(25) );5.查看表mysql> show tables;+-------------------+| Tables_in_test_db |+-------------------+| tb_test           |+-------------------+1 row in set (0.00 sec)6.插入数据 mysql> insert into tb_test values  (1,"1"),(2,"2";    7.查询数据mysql> select * from tb_test;+------+------+| id   | name |+------+------+|    1 | 1    ||    2 | 2    |+------+------+4 rows in set (0.00 sec)

3.完全备份

1.备份命令docker exec -it 40e25670af17 mysql -umysql_back -pmysql_back test_db < /data/docker/mysql-back/TestBackup.sql2.备份完进入mysql 容器docker exec -it 40e25670af17 /bin/bash3.从宿主机 mysql-back 下的sql 复制内容到 容器内部 tmp 下docker cp /data/docker/mysql-back/TestBackup.sql 40e25670af17:/tmp/4.进入mysql,回车输入密码mysql -uroot -p5.使用test_db数据库mysql> use test_db;6.插入新数据mysql> insert into tb_test values (3,'3a'),(4,'4a');7.查询mysql> select * from tb_test;+------+------+| id   | name |+------+------+|    1 | 1    ||    2 | 2    ||    3 | 3a   ||    4 | 4a   |+------+------+4 rows in set (0.00 sec)
8.恢复 完全备份 数据mysql> source /tmp/TestBackup.sqlQuery OK, 0 rows affected (0.00 sec)Query OK, 0 rows affected (0.00 sec)Query OK, 0 rows affected (0.00 sec......
9.再次查询数据,发现恢复到插入新数据前mysql> select * from tb_test;+------+------+| id   | name |+------+------+|    1 | 1    ||    2 | 2    |+------+------+2 rows in set (0.00 sec)

4.知识点解析

数据库备份有哪些方式?答:数据库备份分为 逻辑备份 与 物理备份,逻辑备份 分为 完全备份、差异备份、增量备份3种

学习–了解–数据库的两种备份方式:逻辑备份和物理备份
学习–了解–一分钟看懂完全备份、差异备份以及增量备份

.为什么给数据库用户设置了 all 权限,依旧需要额外再设置备份需要的权限?答:因为 ALL PRIVILEGES 不包含备份用户需要的权限ALL PRIVILEGES 包含[select,insert,update,delete,create,drop,references,index,alter,create temporary tables,lock tables,execute,create view,show view,create routine,alter routine,event,trigger]
2.备份语句解析【如果想备份全部数据库 --all-databases,/home/*.sql 备份的位置mysqldump -u root -p密码 --all-databases> /home/0716_.sql;】【这个语句中mysqldump -uroot -p --single-transaction --master-data=2 --routines --flush-logs -B --all-databases > fullbackupfile28.sql--single-transaction、 --master-data=2 表示一致性备份,一般一起使用不单用--routines 备份函数触发器--flush-logs备份前刷新日志(保证数据完全备份,若数据库开了二进制日志,则不需要使用该参数和一致性参数--single-transaction、 --master-data=2)-B:最大的特点就是加入了库,数据恢复时不需要再创建库】

学习–重要–Linux下MySQL数据库备份和恢复-定时任务
学习–Docker MySql 备份与还原
学习–docker MySQL数据库的备份与还原,以及每天定时自动备份
学习–linux下mysql数据库备份与恢复(全量+增量)

来源地址:https://blog.csdn.net/weixin_45941687/article/details/131809486

您可能感兴趣的文档:

--结束END--

本文标题: Docker中Mysql数据备份

本文链接: https://lsjlt.com/news/400477.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Docker中Mysql数据备份
    Docker中Mysql数据备份 1.创建备份用户2.准备测试数据3.完全备份4.知识点解析 1.创建备份用户 百度过程中,有人说用最高权限root直接备份,不可取不安全,所以单独创建一个...
    99+
    2023-09-08
    docker mysql
  • Docker如何备份数据
    这篇文章给大家分享的是有关Docker如何备份数据的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。备份数据docker run --rm --volu...
    99+
    2024-04-02
  • MySQL 备份数据库
    原文:https://www.cnblogs.com/better-farther-world2099/articles/10276087.html MySQL 备份数据库原文地址:https://www.cnblogs.com/guxi...
    99+
    2021-07-21
    MySQL 备份数据库 数据库入门 数据库基础教程 数据库 mysql
  • mysql数据库备份
    数据库备份1 冷备(cp)2  LVM快照备份 lvcreate  -s  -n  rhel6node1  -L  ...
    99+
    2024-04-02
  • 备份MySQL数据库
    为什么需要备份数据?数据的备份类型MySQL备份数据的方式备份需要考虑的问题设计合适的备份策略实战演练使用cp进行备份使用mysqldump+复制BINARY LOG备份使用lvm2快照备份数据使用Xtra...
    99+
    2024-04-02
  • mysql 数据库备份
    目录 数据库备份的方式 一、备份整个 $datadir  二、用mysqldump备份 备份某个库 只备份某个库下某个表 备份某个库,排除库中一些表以外,备份剩余的表 有很多库时候,一次性备份所有的库 一次指定备份某几个库  只备份表结构,...
    99+
    2023-09-09
    数据库
  • docker 使用mysqldump命令备份导出项目中的mysql数据
    下图为镜像重命名后的镜像名为uoj,现在要把这个镜像中的mysql导出   运行如下命令: docker exec -it uoj mysqldump -uroot -proot app_uoj233 >/data/database_...
    99+
    2019-05-10
    docker 使用mysqldump命令备份导出项目中的mysql数据
  • MySQL数据库中备份数据的方法
    MySQL数据库中备份数据的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!想进行数据库的备份首先要在命令行窗口进入My...
    99+
    2024-04-02
  • 初探MySQL数据备份及备份原理
    相信通过上一篇文章《数据丢失如当头棒喝,数据备份重如山!》,很多人对于数据备份的重要性有了深刻的认识,本文将以MySQL为例带大家进一步了解数据备份的原理和初步实践。 根据需求的不同,数据备份的方式也...
    99+
    2024-04-02
  • Xtrabackup备份mysql数据库
    Xtrabackup由percona提供percona Xtrabackup是一个自由、开源的完整的在线备份工具,支持mysql、perconna server、mariadb到官网https://www....
    99+
    2024-04-02
  • mysql怎么备份数据
    这篇文章主要讲解了“mysql怎么备份数据”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql怎么备份数据”吧!mysqldump -u[user] -...
    99+
    2024-04-02
  • python备份mysql数据库
    原本可以用shell完成的功能,现在学习python,就照抄照改。完成数据库备份。 #!/usr/bin/python #-*-coding:utf-8-*- #MYSQL BACK import string,time,os,dateti...
    99+
    2023-01-31
    备份 数据库 python
  • mysql数据如何备份
    mysql 数据备份方法 MySQL 数据备份是确保数据安全和防范数据丢失的至关重要的一步。以下几种方法可以用来备份 MySQL 数据: 1. mysqldump mysqldump 是...
    99+
    2024-06-15
    mysql phpmyadmin 数据丢失
  • mysqldump中怎么备份MYSQL数据库
    这篇文章将为大家详细讲解有关mysqldump中怎么备份MYSQL数据库,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。 1、备份脚本内容[davi...
    99+
    2024-04-02
  • Java中怎么备份MySQL数据库
    本篇文章为大家展示了Java中怎么备份MySQL数据库,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。import java.io.File; import...
    99+
    2024-04-02
  • MySQL数据备份中mysqldump怎么用
    这篇文章主要介绍了MySQL数据备份中mysqldump怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 一、mysqldump 简介mysqldump 是 M...
    99+
    2023-06-25
  • centos中怎么备份mysql数据库
    本篇内容介绍了“centos中怎么备份mysql数据库”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!代码如下:#!/bin/bash#bac...
    99+
    2023-06-09
  • MySQL 数据备份和数据恢复
    目录 一、数据备份 1、概述 2、MySQLdump命令备份 1)备份单个数据库中的所有表 2) 备份数据中某个或多个表 3) 备份所有数据库 4)备份多个库 5) 只备份一个表或多个表结构 二、数据恢复 三、数据备份与恢复应用 一、数...
    99+
    2023-09-01
    mysql 数据库
  • mysql数据库怎么备份数据
    有多种方法可以备份MySQL数据库中的数据,以下是其中一种简单的方法: 使用命令行工具进行备份: 在命令行中输入以下命令,使用“m...
    99+
    2024-05-21
    mysql
  • 《MySQL数据库》MySQL备份恢复
    前言 MySQL数据库最重要的部分就是数据,所以保证数据不被损坏尤为重要,大家都知道911事件,当时非常多的数据丢失,导致经济混乱。接下来我们就来讲讲MySQL是如何保障数据完整,应对特殊情况,如何恢复等。 备份 备份检查:保证备份没有问题...
    99+
    2016-12-27
    《MySQL数据库》MySQL备份恢复 数据库入门 数据库基础教程 数据库 mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作