精华内容
下载资源
问答
  • linux服务器自动备份数据库1. 环境+需求2. 配置两个服务器免密传输3. 准备备份数据库脚本(1)shell脚本代码(2)检查备份服务器上有没有 ==/opt/back== 目录(3)将==mysql_dump.sh== (脚本文件名) 脚本文件放到...

    1. 环境+需求

    环境:
    	两台linux服务器:Server-A 、Server-B
    	其中Server-A 上运行mysql
    

    2. 配置两个服务器免密传输

    CSDN链接: 多个linux服务器免密传输文件.

    3. 准备备份数据库脚本

    (1)shell脚本代码
    #!/bin/bash
    #保存备份个数
    number=31
    #备份保存路径
    backup_dir=/opt/back
    #日期
    dd=`date +%Y-%m-%d-%H-%M-%S`
    #备份工具
    tool=mysqldump
    #数据库用户名
    username=root
    #数据库密码
    password=root123
    #将要备份的数据库名称
    database_name=ammis
    #备份服务器ip地址
    ip_back_server=192.168.10.130
    #备份服务器文件路径
    dir_back_server=/opt/back
    
    # 以上变量需要检查
    
    
    #如果文件夹不存在则创建
    if [ ! -d $backup_dir ]; 
    then     
        mkdir -p $backup_dir; 
    fi
    
    #简单写法  mysqldump -u root -p123456 users > /root/mysqlbackup/users-$filename.sql
    $tool -u $username -p$password $database_name > $backup_dir/$database_name-$dd.sql
    
    #写创建备份日志
    echo "create $backup_dir/$database_name-$dd.dupm" >> $backup_dir/log.txt
    
    #压缩文件
    zip -rm $backup_dir/$database_name-$dd.zip $backup_dir/$database_name-$dd.sql
    
    # 将备份数据库文件传至备份服务器
    scp $backup_dir/$database_name-$dd.zip root@$ip_back_server:$dir_back_server
          
    #找出需要删除的备份
    delfile=`ls -l -crt  $backup_dir/*.zip | awk '{print $9 }' | head -1`
    
    #判断现在的备份数量是否大于$number
    count=`ls -l -crt  $backup_dir/*.zip | awk '{print $9 }' | wc -l`
    
    if [ $count -gt $number ]
    then
      #删除最早生成的备份,只保留number数量的备份
      rm $delfile
      #写删除文件日志
      echo "delete $delfile" >> $backup_dir/log.txt
    fi
    

    (2)检查备份服务器上有没有 /opt/back 目录

    (3)将mysql_dump.sh (脚本文件名) 脚本文件放到服务器目录/opt/backScript 下

    (4)执行命令:chmod +x /opt/backScript /mysql_dump.sh赋予shell脚本执行权限

    (5)执行命令:/opt/backScript /mysql_dump.sh测试脚本是否正常运行

    4. 配置定时任务

    (1).执行命令crontab -e

    (2). 新增一条定时任务,0 0 * * * [脚本路径]

    在这里插入图片描述

    展开全文
  • 主要介绍了Linux设置每天自动备份数据库的方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
  • 自己写的mysql 备份数据库脚本,参数自行进行更换。需要在排程设置一下 即可 #!/bin/bash #mysql备份文件路径 mysql_back_directory=/data/mysql/back #mysql备份文件名称 mysql_back_fileName=$(date +%Y_%m_%d_%...

    自己写的mysql 备份数据库脚本,参数自行进行更换。需要在排程设置一下
    即可

    #!/bin/bash
    
    #mysql备份文件路径
    mysql_back_directory=/data/mysql/back
    
    #mysql备份文件名称
    mysql_back_fileName=$(date +%Y_%m_%d_%H%M%S)
    
    #echo "文件名称 ${mysql_back_fileName}"
    echo "开始备份数据库,备份路径是:${mysql_back_directory}/${mysql_back_fileName}.tar.gz"
    
    #数据库地址
    db_ip=localhost
    
    #用户
    db_user=root
    
    #密码
    db_passwd=19960914zs
    
    #备份的数据库名称
    db_name=weixiao
    
    #判断对应路径是否存在
    [ ! -d ${mysql_back_directory}/${mysql_back_fileName} ] && mkdir -p "${mysql_back_directory}/${mysql_back_fileName}"
    #数据库执行备份
    mysqldump -u${db_user} -p${db_passwd} --host=${db_ip} ${db_name} | gzip > ${mysql_back_directory}/${mysql_back_fileName}/${mysql_back_fileName}.sql.gz
    
    #打包备份文件
    #进入目录
    cd ${mysql_back_directory}
    
    tar -zcvf ${mysql_back_fileName}.tar.gz ${mysql_back_fileName}
    
    #删除备份临时文件
    rm -rf ${mysql_back_directory}/${mysql_back_fileName}
    
    #删除3天前的备份文件
    find ${mysql_back_directory} -mtime +3 -name "*.tar.gz" -exec rm -rf {} \;
    
    echo "=====备份成功====="
    
    
    展开全文
  • 这篇文章主要为大家详细介绍了Linux自动备份MySQL数据库脚本代码,具有一定的参考价值,可以用来参考一下。感兴趣的小伙伴,下面一起跟随512笔记的小编小韵来看看吧!在脚本中可设置需要备份的数据库表清单,并且会...

    这篇文章主要为大家详细介绍了Linux自动备份MySQL数据库脚本代码,具有一定的参考价值,可以用来参考一下。

    感兴趣的小伙伴,下面一起跟随512笔记的小编小韵来看看吧!在脚本中可设置需要备份的数据库表清单,并且会将备份文件通过gzip压缩。需要注意的是,这段脚本仅适用数据一致性要求不高的环境。

    代码如下:

    #!/bin/bash

    mysql_pwd="password"

    mysql_dump="/usr/local/mysql/bin/mysqldump"

    cur_year=$(date +"%Y")

    cur_month=$(date +"%m")

    cur_day=$(date +"%d")

    dump_path="/usr/backup/mysql/$cur_year-$cur_month/$cur_day"

    arr_tables=(

    "table_1"

    "table_2"

    "table_3"

    )

    if [ ! -d "$dump_path" ]; then

    mkdir -p "$dump_path"

    fi

    for cur_table in ${arr_tables[*]}; do

    $mysql_dump -uroot -p$mysql_pwd --opt mydb $cur_table | gzip > $dump_path/$cur_table.sql.gz

    done

    注:关于Linux自动备份MySQL数据库脚本代码的内容就先介绍到这里,更多相关文章的可以留意512笔记的其他信息。

    关键词:MYSQL

    展开全文
  • linux mysql 自动备份数据库脚本

    千次阅读 2018-01-26 15:12:57
    1.脚本内容:只保留七天数据库备份 #!/bin/bash export BACKUP_DIR="/home/backup" export LANG="en_US.UTF8" export DATE_1=`date +"%Y-%m-%d"` export DATE_2=`date -d "-7 day" +"%Y-%m-%d"` export...

    1.脚本内容:只保留七天数据库备份

    #!/bin/bash

    export  BACKUP_DIR="/home/backup"
    export  LANG="en_US.UTF8"
    export  DATE_1=`date +"%Y-%m-%d"`
    export  DATE_2=`date -d "-7 day"  +"%Y-%m-%d"`
    export  DB_NAME=$1
    echo 'starting backup'


    test -f $BACKUP_DIR/$DB_NAME.back_$DATE_1.sql

    if [ $? -eq 0 ] ; then

      echo "Today's(`date +"%Y-%m-%d %H:%M:%S"`) BACKUP job has done"


    else
    mysqldump -uroot -p115my!!Cmri $DB_NAME > /home/backup/$DB_NAME.back_$DATE_1.sql 


    ######check the dump file whether produced successfully


      test -f $BACKUP_DIR/$DB_NAME.back_$DATE_1.sql


      if [ $? -eq 0 ]; then
       
         echo " `date +"%Y-%m-%d %H:%M:%S"` the database db_kenyon has been backuped to $BACKUP_DIR/db_pds_$DB_NAME.back_$DATE_1 successfully"
         
         test -f $BACKUP_DIR/$DB_NAME.back_$DATE_2.sql


         if [ $? -eq 0 ] ; then


          rm -f $BACKUP_DIR/$DB_NAME.back_$DATE_2.sql


          echo " `date +"%Y-%m-%d %H:%M:%S"` the file $BACKUP_DIR/db_kenyon_back_$DATE_2 has been moved"


         fi
         
      else
        
         echo " `date +"%Y-%m-%d %H:%M:%S"` the pg_dump failed"


      fi


    fi

    2.设置定时任务:

    0 5 * * * /路径/backup.sh testDB:凌晨五点执行 testDB是要自动备份传递的数据库名





    展开全文
  • linux+python自动备份数据库 1 aospython自动化备份数据库: 1.在linux上安装mysqldump: yum -y install holland-mysqldump.noarch 2.编写python脚本: #!/usr/bin/python3 python import pymysql import os import...
  • 使用shell脚本+cron定时任务,可以轻松备份数据库 Shell dbbak_demo.sh #!/bin/bash #这是一个简单的mysql数据库逻辑备份脚本 #1.定义数据库连接、目标库信息 MY_USER="数据库账号" MY_PASS="数据库密码" MY_HOST=...
  • linux自动备份数据库

    2018-02-08 16:53:27
    /bin/bash#设置mysql备份目录folder=/data/databaseBackcd $folderday=`date +%Y%m%d`mkdir $daycd $daynowday=`date +%Y%m%d_%H%M%S`mkdir $nowdaycd $nowday#数据库服务器,一般为localhosthost=localhost#用户名...
  • linux 自动备份数据库

    2017-08-11 15:33:00
    首先在你的项目合适的地方建立一个执行备份数据库的脚本 下面我建立一个叫 mysqlBackups.sh 的脚本内人如下: #!/bin/sh # Database info DB_NAME="jiayugame" #数据库名称 TABLE_NAME="...
  • 一、备份数据库 1.创建要备份到的文件夹用(我的是/home/backup/mysql下) mkdir 文件夹名 或者用 mkdir -p /home/backup/mysq 2.创建一个文件保存备份(我就在mysql下创建了一个sql_package) mkdir sql_package ...
  • linux自动备份db2脚本。把数据库备份到指定的目录下面并执行压缩,然后删除早期的备份,可以把这个脚本设置在一个定式任务里面,每天晚上执行一次。 #!/bin/bashhostName=`hostname`MAX_BAKFILE_NUM=4db_bak_dir=...
  • 这篇文章主要介绍了Linux 自动备份oracle数据库详解方法的相关资料,数据库的备份的重要性,不言而喻,希望能帮到大家,需要的朋友可以参考下 Linux 自动备份oracle数据: 曾经有个同事,来回操作开发和生产的...
  • 在脚本中可设置需要备份数据库表清单,并且会将备份文件通过gzip压缩。需要注意的是,这段脚本仅适用数据一致性要求不高的环境。 代码如下:#!/bin/bash mysql_pwd=”password”mysql_dump=”/usr/local/mysql/bin/...
  • Linux利用定时任务自动备份数据库

    万次阅读 2018-07-26 15:44:52
    一种情况我们可以部署MySQL主主互备来备份数据库,在机器资源不足以我们部署MySQL主主互备,又不能采取以人工手动定时备份数据库这种繁琐的操作时,我们可以利用Linux的定时任务crontab来自动备份数据库 ...
  • 到现在博主也认识到了数据库的重要性,于是决定研究研究数据库自动备份。如果你是土豪那可以直接买各种云服务商的数据库,自带容灾备份的,安全性比较好。本文仅讨论数据库放在本地的情况,备份方式为主从:即一台...
  • Centos7自动备份数据库 1,创建备份存放的目录 mkdir /home/backup 2、编写要执行的.sh脚本文件 vim /home/backup/mybackup.sh 3,复制以下脚本:内容,要修改为自己的 #!/bin/bash DATE=`date +%Y%m%d%H%M` #...
  • Linux自动备份MySql数据库

    万次阅读 2015-11-26 16:28:30
    数据库备份对于网站平台来说很重要,数据就是金钱,有时候...但是我们又不想每天自己半夜爬起来对数据库进行备份,所以我们可以编写设置一些东西来进行自动备份。 不过我们现在负责数据库的人员都是自己半夜爬起来备
  • 接到任务:在cenos6.x系统中每天定时备份mysql数据库和Oracle数据库 解决时间1天: 步骤: MySQL定期备份是一项重要的工作,但人工操作太繁琐,也难避免有所疏漏,使用下面的方法即可让系统定期备份数据。 ◆1、...
  • 所以想写个脚本,试试自动备份数据库。 1. 先看看那个盘够大。 忘了。我只有一个盘。 2.创建一个目录先。用来存放 脚本 和 备份好的数据库 3. 写脚本 #!/bin/bash mysqldump -...
  • Linux下如何设置每天自动备份数据库 ****本文以Centos7.6系统与Oracle11g为例**:** 一.先找到数据库的环境变量 如果是在root账户下,须先登录到数据库所在账户 su oracle cat ~/.bash_profile export PATH ...
  • 作为应合格的运维,必须要做好数据库备份工作。 新建一个shell脚本,配置信息改成实际项目的 db_user="root" db_passwd="root" db_name="click_farming_test" # the directory for story your backup file.you ...
  • mysql数据库备份有很多种,本文主要介绍系统级别的数据库备份,实现每天凌晨3:00保存一份数据库文件,自动删除30天以前的数据库备份文件 具体流程1、创建当前备份文件夹(存储当天的备份文件)# cd /home # mkdir ...
  • 写在前面: ...为了让数据能够定期保存,利用Linux的Crontab自动执行Bash脚本以达到自动备份的要求。 第一步:选择位置创建数据保存的文件夹 选择指定位置创建文件夹mysqlbackup文件夹 cd ~ mkdir m...
  • 创建文件XXX可以命名为数据库的名字 vi backupXXX.sh 在sh文件中编辑以下内容(全量导出):导出备份文件为SQL文件 mysqldump -uusername -ppassword DatabaseName > /home/backup/DatabaseName_$(date +%Y%m%
  • 备份root权限太大所以创建新用户并且授权 1.在root用户下创建新用户 添加用户: useradd 用户名 设置密码:passwd 用户名 (回车 输入2次密码) .给新用户权限:1.查看用户所在组 :groups 用户名 2.切换到root用户下...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 82,527
精华内容 33,010
关键字:

linux配置自动备份数据库

linux 订阅