Linux MySQL数据库的全库和单库备份

MySQL数据库的备份重要性不用多说,备份方式也很多,但常用的是MySQL自带的备份程序MySQLdump,该程序一键备份,一键恢复,十分方便,并且备份形式支持远程保存备份文件,多种媒介存储,十分的方便。

下面就以数据库备份在本地,恢复到另一台远程主机为例,演示数据库的备份以及远程迁移。

环境说明:两台主机,第一台主机IP地址为192.168.0.3,数据库为zabbix,该库内有多表。暂定称呼为三号。

第二台主机IP地址为192.168.0.4,只有原始数据库。暂定称呼为四号。

两台主机都是使用的MySQL的小弟版本mariadb,zabbix服务时启动状态。下面开始正式备份以及数据库迁移到192.168.0.4这个主机。

在3号主机上,执行备份命令:

mysqldump -uroot  --databases zabbix --single-transaction >`date +%F-%H-%M`-zabbix.sql -p

该命令为以root用户登录数据库,备份数据库名称为zabbix (--databases zabbix,这个也可以写为-B),

在备份数据库时,保持数据库的数据一致性(--single-transaction),当然如果是在生产环境下,可能会有锁表的现象。

重定向到本地当前工作目录下。这个`date +%F-%H-%M`需要说明一下,是时间的格式化,当前的系统时间的日和分也有,类似这样2020-01-02-11-47,备份文件名字为zabbix.sql。

 最后的 -p一定要有哦,这是表示需要密码验证,但密码当命令执行时验证,这样做是为了安全,毕竟,没谁愿意让他人发现密码在命令的历史记录中。输入正确的密码后即开始备份,根据数据库大小等待时间不一,然后在当前工作目录下就可以看到 2020-01-02-11-47-zabbix.sql的文件了。这个就是备份好的数据库文件。            当然,这个都指定数据库了,自然是单库的备份。

mysqldump -uroot  -A --single-transaction >`date +%F-%H-%M`-zabbix.sql -p

这个命令就是全库备份命令 了。 -A 可以替换为 --all-databases,也就是说上面命令等价于

mysqldump -uroot  -all-databases  --single-transaction >`date +%F-%H-%M`-zabbix.sql -p,

既然是全库备份,自然不需要指定需要备份的数据库名称了。

如果是全库备份,远程迁移的目标主机不需要重新建立数据库,直接使用本地的备份文件在远程主机上恢复即可,也就是四号主机上。

远程主机的数据库迁移命令为:

cat 2020-01-02-10-55-zabbix.sql | mysql -uroot -p123456 -h 192.168.0.4

记住,这个时候使用的备份文件是全库备份出来的文件,单库的不要尝试哦。

单库的备份文件如果需要恢复到远程的主机,那么首先需要在远程主机上新建一个数据库,并且权限以及使用用户等与原备份数据库一致才可以、然后,上面那个恢复命令 最后面需要添加要恢复的库名才可以。并且输入的密码是远程的主机的数据库密码,也就是四号的数据库密码。

另外,友情提示一下,远程主机需要开启远程登录权限哦。

Linux MySQL数据库的备份相关推荐

  1. Linux——MySQL数据库自动备份

    Linux如何将Mysql数据库自动从一台服务器备份到另一台服务器 一.概述: 备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其 ...

  2. linux mysql数据库定时备份

    1在linux上面创建一个文件夹,并且进行备份 cd /home mkdir backup cd backup 2创建一个脚本 Vi imaginebase.sh #!/bin/bash mysqld ...

  3. linux mysql数据库备份并删除前一分钟的数据

    linux 中mysql数据库定时备份并删除前一分钟的所有数据 #!/bin/bash #mysqldump -uroot -ppassword01! imaginebase > /home/b ...

  4. linux 备份mysql并上传_实现Linux中Mysql数据库自动备份并上传到远程FTP服务器

    这篇文章很有分享价值,因为我们在实际的生产环境中需要将数据库进行自动备份,然后上传到指定的位置,当然也可以像以下文章中所讲的一样,上传到你指定的FTP服务器中,从而实现Mysql数据库自动备份并上传到 ...

  5. Linux下MySQL数据库的备份与还原,mysql快速导入导出数据库实例演示,解决mysql大数据量数据库导出慢的问题

    MySQL 数据库的备份与还原 第一章:数据库的导入与导出 ① 数据库的导出 ② 大数据量下 mysqldump 的导出优化 ③ 数据库的导出 第一章:数据库的导入与导出 ① 数据库的导出 需要用到 ...

  6. Linux MYSQL 数据库

    Linux MYSQL  数据库 1.1.概述: DBMS datebase management system  数据库管理系统 DML:date manapulate lanaguage  数据操 ...

  7. mysql web备份软件_GitHub - toolzone/mysql_web_backup: mysql数据库自动备份,web网站自动备份shell脚本...

    注意: Mysql_backup.sh 为 mysql 自动备份 脚本,配合 crontab命令 用来管理需要周期性执行任务 Web_backup.sh 为 web文件 自动备份 脚本,配合 cron ...

  8. Linux Mysql 数据库基础

    目录 Linux Mysql 数据库基础 一.数据库 数据库简介 数据库的分类 数据库的发展史 数据库系统发展阶段 DBMS 数据库管理系统 数据库管理系统的优点 数据库管理系统的基本功能 数据库系统 ...

  9. mysql数据库压缩备份_Mysql备份压缩及恢复数据库方法总结

    一般情况我们通过mysqldump来备份MySQL数据库,并上传至其它备份机器.如果数据库比较大,在备份传输的时候可能会慢,所以我们尽量让备份的文件小一些. 在写自动备份脚本时,最好把备份结果直接压缩 ...

最新文章

  1. 让PHP更快的提供文件下载 【转】
  2. 【Android 异步操作】Timer 定时器 ( Timer 与 TimerTask 基本使用 | Timer 定时器常用用法 | Timer 源码分析 )
  3. 【数据结构与算法】之深入解析“不同的二叉搜索树”的求解思路与算法示例
  4. 判断滚动条是否到达页面的尾部
  5. zip (ICSharpCode.SharpZipLib.dll文件需要下载)
  6. Linux学习之后台运行进程
  7. 腾讯安全团队深入解析wannacry蠕虫病毒
  8. js 异步执行_JS Asynchronous — JS 异步编程极简史
  9. 语音信号处理(九)——离散余弦变换
  10. 7.企业安全建设入门(基于开源软件打造企业网络安全) --- 蜜罐与攻击欺骗
  11. Oracle如何创建索引、删除索引、查询索引
  12. android viewpager监听,viewPager的OnPageChangeListener监听器的方法调用顺序
  13. 浏览器window对象
  14. java: 找不到符号
  15. python语言的运行效率高吗_为什么python运行效率低?原来因为它!
  16. Date setMonth(date.getMonth - 1)
  17. 用jQuery实现9宫格抽奖
  18. web前端编程实战实例:制作静态京东首页
  19. UART模块验证-面试总结
  20. Vue—单页面应用与多页面应用的区别

热门文章

  1. 荣联 云通讯 发送短信通知 node
  2. 限制百度地图拖动范围限制,当超如范围时自动返回
  3. CCNP精粹系列之二十九--发布bgp子网信息,推荐
  4. 服务器bios上传文件,巧改BIOS设置 让文件服务器性能提升10%
  5. 大数据时代下:标签体系的应用
  6. 自定义UILabel,添加verticalAlignment属性
  7. C++ constants
  8. 锐捷服务器无系统如何进pe,没有u盘怎么进入pe系统,网络启动进PE做系统教程...
  9. VMOS-Pro一款虚拟机app。
  10. Mybatis缓存机制(一级缓存、二级缓存、三级缓存)