linux上 mysql数据库备份与还原 (mysqldump)

linux上 mysql数据库备份与还原 (mysqldump)最近要写mysql数据库备份,把自己所得记录下来,防止以后忘了,哈哈哈哈(注 这是远程备份,备份到指定服务器)使用环境   centos7   mysql5.7    远程连接主机免密码登录,   在运行服务器上执行  ssh-keygen   一路回车,还是不要添加密码的好,这时候可以注意一下公钥,秘钥保存位置  把公钥放到备份的服务器上 ssh-…

大家好,又见面了,我是你们的朋友全栈君。

最近要写mysql数据库备份,把自己所得记录下来,防止以后忘了,哈哈哈哈

(注  这是远程备份,备份到指定服务器)


使用环境 

  1.     centos 7
  2.     mysql 5.7 
  3.    远程连接主机免密码登录 ,
       在运行服务器上执行   ssh-keygen
       一路回车,还是不要添加密码的好,这时候可以注意一下公钥,秘钥保存位置
      把公钥放到备份的服务器上 ssh-copy-id root@192.168.1.1
     (注意:这两台linux必须能ping通)

  msyql自带的mysqldump和xtrabackup工具,两种方法备份,今天先介绍一下mysqldump

一.使用mysqldump备份

 一般使用备份,都是备份到远程服务器上,别问我为什么,备份到本地,服务器崩了,一切都瞎了啊,哈哈哈,所以一下是备份到远程,但是可以在本地测试啊!

     在运行服务器上执行:      

     1.创建脚本,并添加内容     ps一步到位,脚本位置,自己意愿

               cd  /home                  (我的是在home目录下)

               vim mysql_data.sh

             2.添加下面的内容

#!/bin/sh 
DUMP=/usr/bin/mysqldump     #mysqldump的路径,不知道的可以全局搜索一下  find / -name mysqldump 
OUT_DIR=/home/longlong        #备份文件的目录,没有提前建好
DB_NAME=database        #要备份的数据库名字
DB_USER=root          #数据库登录名
DB_PASS=root           #数据库登陆密码
HOST=192.168.1.1    #远程备份ip
USE=root               #远程备份用户
DATE=`date +%Y%m%d%H%M`        #当前时间
OUT_SQL="mysqldata_bak_$DATE.sql.gz"     #备份出来的sql文件名
$DUMP  -u$DB_USER -p$DB_PASS $DB_NAME | gzip -c | ssh $USE@$HOST "cat >$OUT_DIR/$OUT_SQL"

      3.将脚本设置成可执行的文件类型

      chmod +x /home/mysql_data.sh

     这时候就可以测试一下脚本,看是否正确,这里有两种方法

            1    cd  /home. 

                   ./mysql_data.sh

             2.     bash -x  /home/mysql_data.sh

       都可以查看脚本是否执行成功    

     4.添加定时任务  crontab

        crontab -e 

       添加如下命令  (每天的一点三十分执行)

        30 1 * * *  /home/mysql_data.sh  

      5 重启定时任务

        service crond restart

  在备份服务器上执行:

      1.在备份服务器上创建备份目录  (此测试生成目录放在home下)

          cd /home

         mkdir  mysql_data            住:此目录应与上面脚本mysql_data.sh中的备份目录一致

        2.创建脚本,用来保存最近五天的备份

          vim dele.sh

         复制以下内容    

DAYS=5
BACKUP_DIR=/home/longlong    #(这个文件和上面备份的文件一致)
#删除过期的文件
find $BACKUP_DIR -name "mysqldata_bak*" -type f -mtime +$DAYS -exec rm {} \;        #删>除5天前的备份文件(注意:{} \;中间有空格)

            3.将脚本文件设置成可执行文件类型

                chmod +x /home/dele.sh

              4.添加计划任务

                crontab -e

               输入如下命令

                30 1 * * *  /home/dele.sh

              5.重启定时任务

              service crond restart

   二.mysqldump数据库备份还原

       在备份服务器上执行

      1.解压缩

          gunzip   备份文件名

       2.还原数据库

        mysql -u root -p datapase < 备份文件名

一些ok,剩下测试.

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/133225.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • navicat15永久激活码最新【在线注册码/序列号/破解码】

    navicat15永久激活码最新【在线注册码/序列号/破解码】,https://javaforall.cn/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

  • python实现交叉验证_kfold显示不可迭代

    python实现交叉验证_kfold显示不可迭代KFold模块fromsklearn.model_selectionimportKFold为什么要使用交叉验证?交叉验证的介绍交叉验证是在机器学习建立模型和验证模型参数时常用的办法。交叉验证,顾名思义,就是重复的使用数据,把得到的样本数据进行切分,组合为不同的训练集和测试集,用训练集来训练模型,用测试集来评估模型预测的好坏。在此基础上可以得到多组不同的训练集和测试集,某次训练集中的某样本在…

  • 汇编移位指令复习「建议收藏」

    汇编移位指令复习「建议收藏」前言吐槽一下下,汇编的指令真的好多呀,学了这么多可是记住的却没几个,所以写下这篇文章加深对汇编移位指令的理解和记忆文章目录前言1、逻辑移位指令逻辑左移SHL逻辑右移SHR2、算术移位指令算数左移SAL算术右移SAR3、循环移位指令循环左移ROL循环右移ROR4、注意点1、逻辑移位指令逻辑移位指令适用于带符号数运算逻辑左移SHL指令格式:SHLOPR,CNT????PR:…

  • 万字长文告诉新手如何学习Python图像处理(上篇完结 四十四) | 「Python」有奖征文

    万字长文告诉新手如何学习Python图像处理(上篇完结 四十四) | 「Python」有奖征文这篇文章是图像处理的最后一篇文章,后面我们将进入新的章节。图像处理文章主要讲解的图像处理方法包括图像几何运算、图像量化采样、图像点运算、图像形态学处理、图像增强、图像平滑、图像锐化、图像特效、图像分割、傅里叶变换与霍夫变换、图像分类等。个人感觉如果你是编程初学者、Python初学者或图像处理爱好者,这个系列真心适合你学习,并且这篇文章算是Python图像处理的学习路线,希望您喜欢。

    2022年10月14日
  • GitLab+Jenkins+Maven+Docker实现自动集成、打包、部署

    GitLab+Jenkins+Maven+Docker实现自动集成、打包、部署

  • golang 2021 激活码(注册激活)「建议收藏」

    (golang 2021 激活码)好多小伙伴总是说激活码老是失效,太麻烦,关注/收藏全栈君太难教程,2021永久激活的方法等着你。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.html4D5UJRVIF9-eyJsaWNlbnNlSWQi…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号