数据库单,多,全库、冷热备份思路及备份与还原(mysqldump)
热备份:服务开启状态下进行备份,
冷备份:服务关闭状态进行备份,
冷备份
数据库原有内容如下:
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| 学员名单 |
| auth |
| mydb |
| mysql |
| performance_schema |
| shuifei |
| test |
| yg |
+--------------------+
9 rows in set (0.00 sec)
要求备份数据库目录并删除shuifei数据库最后完成还原shuifei
1:直接打包数据库文件夹
[root@localhost ~]# systemctl stop mariadb #关闭mysql服务进行备份
[root@localhost ~]# mkdir backup
tar: 从成员名中删除开头的“/”
[root@localhost ~]# tar Jcf backup/mysql_all-$(date +%F).tar.xz /var/lib/mysql/
tar: /var/lib/mysql/mysql.sock: 忽略套接字(socket)
[root@localhost ~]# ls backup/
mysql_all-2019-10-14.tar.xz
2:删除shuifei数据并开启mariadb服务
[root@localhost ~]# rm -rf /var/lib/mysql/shuifei/
[root@localhost ~]# systemctl start mariadb
MariaDB [(none)]> show databases; #查看所有数据库此时shuifei数据库已经消失
+--------------------+
| Database |
+--------------------+
| information_schema |
| 学员名单 |
| auth |
| mydb |
| mysql |
| performance_schema |
| test |
| yg |
+--------------------+
8 rows in set (0.00 sec)
2:进行备份shuifei到数据库目录下
[root@localhost ~]# mkdir restore
[root@localhost ~]# tar xf backup/mysql_all-2019-10-14.tar.xz -C restore/
[root@localhost mysql]# mv shuifei/ /var/lib/mysql/
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| shuifei |
| yg |
+--------------------+
9 rows in set (0.00 sec)
热备份
第二种:使用专用备份工具mysqldump
对单个库进行完全备份:
格式:mysqldump -u 用户名 -p密码 --databases 库名 > /备份路径/备份文件名
[root@localhost ~]# mysqldump -uroot -p123123 --databases shuifei > backup/shuifei-$(date +%Y%m%d).sql
[root@localhost backup]# ls
mysql_all-2019-10-14.tar.xz shuifei-20191014.sql
对多个库进行完全备份:
格式:mysqldump -u 用户名 -p密码 --databases 库名1 库名2 > /备份路径/备份文件名
[root@localhost ~]# mysqldump -uroot -p123123 --databases shuifei mydb > backup/shuifei+mydb-$(date +%Y%m%d).sql
[root@localhost ~]# cd backup/
[root@localhost backup]# ls
mysql_all-2019-10-14.tar.xz shuifei-20191014.sql shuifei+mydb-20191014.sql
[root@localhost backup]#
第三种:对所有库进行完全备份:
格式:mysqldump -u用户名 -p密码 --event --opt --all-databases > /备份路径/备份文件名
[root@localhost backup]# mysqldump -uroot -p123123 --event --opt --all-databases > backup/mysql_all.$(date +%Y%m%d).sql
[root@localhost backup]# ls
mysql_all.20191014.sql mysql_all-2019-10-14.tar.xz shuifei-20191014.sql shuifei+mydb-20191014.sql
第四种:对表进行备份:
格式:mysqldump -u用户名 -p密码 -d 数据库名 表名> /备份路径/备份文件名
[root@localhost ~]# mysqldump -uroot -p123123 -d shuifei shuifei_info > backup/desc-$(date +%Y%m%d).sql
[root@localhost ~]# cd backup/
[root@localhost backup]# ls
desc-20191014.sql mysql_all-2019-10-14.tar.xz shuifei+mydb-20191014.sql
mysql_all.20191014.sql shuifei-20191014.sql
使用mysqldump备份后,恢复数据库:
方法1:source命令
登入到MYSQL数据库后,执行source备份脚本路径
删除yg和shuifei两个数据库
MariaDB [yg]> drop database yg;
MariaDB [yg]> drop database shuifei;
恢复yg和shuifei两个数据库:
MariaDB [yg]> source backup/shuifei-20191014.sql
MariaDB [mysql]> source backup/yg-20191014.sql
第二种方法:mysql命令:
格式:mysql -u 用户名 -p密码 < 库备份脚本路径
MariaDB [shuifei]> drop database yg;
Query OK, 1 row affected (0.00 sec)
[root@localhost ~]# mysql -uroot -p123123 < backup/yg-20191014.sql
[root@localhost ~]# mysql -uroot -p123123 -e 'show databases' #-e表示可以在外部执行mysql语句
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| shuifei |
| yg |
+--------------------+
数据库单,多,全库、冷热备份思路及备份与还原(mysqldump)的更多相关文章
- 通过Xtrabackup实现MySQL实例的全库备份与按需单库恢复
在实际的生产环境中,为了管理方便,我们一般是通过 Xtrabackup实现实例的全库备份,即将实例上的所有数据库备份. 但是,考虑到快速恢复 我们常常面临的需求是快速还原单个数据库.针对初学者来说,网 ...
- Percona Xtrabackup备份mysql全库及指定数据库(完整备份与增量备份)
原文地址:http://www.tuicool.com/articles/RZRnq2 Xtrabackup简介 Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对In ...
- MySQL 採用Xtrabackup对数据库进行全库备份
1,xtrabackup简单介绍 关于数据库备份以及备份工具.參考:http://blog.itpub.net/26230597/viewspace-1460065/,这里来介绍xtrabackup已 ...
- MySQL用全库备份数据恢复单表数据
备份数据库时,采用了全库备份,但是因为某些原因需要回滚一个表的数据到备份数据库上,如果回滚整个库就比较费时间,因为可能这个表只有几十M,但是其它表可能有十几上百G,这时候就需要将需要恢复的表提取出来了 ...
- Percona备份mysql全库及指定数据库(完整备份与增量备份)
Percona Xtrabackup备份mysql全库及指定数据库(完整备份与增量备份) Xtrabackup简介 Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对I ...
- MySQL 采用Xtrabackup对数据库进行全库备份
1,xtrabackup简介 关于数据库备份以及备份工具,参考:http://blog.itpub.net/26230597/viewspace-1460065/,这里来介绍xtrabackup已经如 ...
- LINUX学习笔记——LINUX下EXP命令全库备份数据库文件
LINUX下EXP命令全库备份数据库文件 1)建立备份目录,目录操作权限授权给Oracle用户 mkdir /backup --创建backup文件夹 cd / --进入cd语句 ls -l ...
- Mysql数据库定时全库备份
如下脚本用于mysql全库定时备份 mysql_dump_script.sh #!/bin/bash #保存备份个数,最多保留4个文件 number=4 #备份保存路径 backup_dir=/db/ ...
- 使用mysql自带工具mysqldump进行全库备份以及source命令恢复数据库
mysql数据库提供了一个很好用的工具mysqldump用以备份数据库,下面将使用mysqldump命令进行备份所有数据库以及指定数据库 一.mysqldump一次性备份所有数据库数据 /usr/lo ...
随机推荐
- 搭建Hexo实现个人网站详细教程
全网最全小白搭建Hexo+Gitee/Coding/Github 全网最全小白搭建Hexo+Gitee/Coding/Github 本站内容已全部转移到https://www.myyuns.ltd,具 ...
- win10下安装es
1.安装前提 windows下已经安装好了jdk8的版本 2.下载ElasticSearch https://www.elastic.co/cn/downloads/elasticsearch#ga- ...
- 基于pyqt5的图片素材批量处理工具
功能 分辨率的批量转换,文件夹递归查找 像素偏移量批量调整,文件夹单层查找 画布的大小的批量进行调整,不进行缩放,文件夹单层查找 界面 通过PyUIC生成的代码 # -*- coding: utf-8 ...
- CompletableFuture--给future调用增加回调或聚合操作
CompletableFuture--增大内存节省时间.整合多个future调用,来减少时间 例如:第一个future 返回时1s,第二个返回时2s,第三个返回是3s CompletableFut ...
- AcWing 8.二维费用的背包问题
#include<iostream> #include<algorithm> #include<cstring> using namespace std ; ; i ...
- 重启nginx:端口被占用问题
1.重启nginx出现端口占用问题: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use) 2.解决方法: 第 ...
- SSI注入漏洞
简介 SSI是英文Server Side Includes的缩写,翻译成中文就是服务器端包含的意思.从技术角度上说,SSI就是在HTML文件中,可以通过注释行调用的命令或指针.SSI具有强大的功能,只 ...
- C# 泛型说明
详细说明转 https://www.cnblogs.com/dotnet261010/p/9034594.html 最近项目用到了多个参数的泛型方法,这里说明下泛型的组成: /// <summa ...
- linux下如何部署php项目?
linux下部署php项目环境可以分为两种,一种使用Apache,php,mysql的压缩包安装,一种用yum命令进行安装. 使用三种软件的压缩包进行安装,需要手动配置三者之间的关系.apache和p ...
- GitHub网页版基本操作
创建存储库 登录GitHub进入主页,点击头像左边的加号,创建存储库 填写存储库名称.描述,根据需求设置其他选项.点击“Create repository”按钮 创建分支 打开之前创建好的存储库,点击 ...