`
andrew1024
  • 浏览: 74782 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

linux下的MySQL自动备份脚本-第一版

阅读更多
写了个linux下的mysql备份脚本 这是第一版,只支持备份一个数据库,每天晚上2点用定时器把这个脚本跑一下就自动备份好了。后续会做可支持备份多个数据库,备份失败短信发送到手机,自动清除过期备份。

#!/bin/bash
#Script:backup_mysql
#Version:Release 1.0
#author:www.dba-china.com
#date:2011-10-26

backup_time=`date +%Y%m%d%H%M`  #定义备份详细时间
backup_Ymd=`date +%Y%m%d` #定义备份目录中的年月日时间
backup_7ago=`date -d '7 days ago' +%Y%m%d` #七天之前的日期
backup_dir=/backup/mysql/$backup_Ymd  #备份文件夹全路径
backup_database="dba-china" #要备份的数据库名称
mysql_user="root"
mysql_password="root"
#mysql_host="localhost"
#mysql_port="3306"

#判断MYSQL是否启动,mysql没有启动则备份退出
mysql_ps=`ps -ef |grep mysql |wc -l`
mysql_listen=`netstat -an |grep LISTEN |grep $mysql_port|wc -l`
if [ [$mysql_ps == 0] -o [$mysql_listen == 0] ]; then
        echo "ERROR:MySQL is not running! backup stop!"
        exit;
else
        echo "MySQL running ok!"
fi

#连接到mysql数据库,无法连接则备份退出
mysql -u$mysql_user -p$mysql_password <<end
use mysql;
select host,user from user where user='root' and host='localhost';
exit
end

flag=`echo $?`
if [ $flag != "0" ]; then
        echo "error:Can't connect mysql server! backup stoped!"
        exit;
else
        echo "MySQL connect ok! Backup start......"
        #db=`echo $backup_database |cut -d ',' -f1`
        db=$backup_database       
        if [ $db == '' ];then
                echo "ERROR:no database to backup!"
        else
                echo "database $db backup start..."
                `mkdir -p $backup_dir`
                `mysqldump -u$mysql_user -p$mysql_password $db > $backup_dir/$db$backup_time.sql`
                echo "database $db backup success!"
        fi

fi

查看原文:http://bbs.dba-china.com/thread-206-1-1.html
分享到:
评论

相关推荐

    Linux系统下mysql备份脚本

    ### Linux系统下MySQL备份脚本知识点详解 #### 一、脚本概述 在Linux系统中,MySQL数据库作为常用的关系型数据库管理系统之一,在数据安全性方面至关重要。对于任何依赖于数据库的应用程序来说,定期备份数据是非常...

    linux下MYSQL数据库的备份脚本

    ### Linux下MySQL数据库备份脚本知识点解析 #### 一、脚本概述 本文将详细介绍一个在Linux环境下用于MySQL数据库备份的Shell脚本。该脚本实现了自动化的数据库备份功能,并利用了Cron作业来定时执行备份任务。通过...

    mysql-5.7.32-linux-glibc-2.28-aarch64.tar.gz

    "mysql-5.7.32"表示这是MySQL的5.7.32版本,这是一个稳定的发行版,包含了许多新特性以及对前一版本的修复。"linux"表明这个版本是为Linux操作系统设计的,而"glibc-2.28"指的是它依赖于GNU C Library(glibc)的...

    mysql for linux , mysql-standard-5.0.27-linux-i686.tar.gz

    本文将深入探讨“mysql-standard-5.0.27-linux-i686.tar.gz”这一特定版本的MySQL在Linux环境下的安装与使用。 标题中的“mysql for linux”指的是MySQL服务器软件在Linux平台上的版本。Linux作为开源的操作系统,...

    mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz

    MySQL是世界上最受欢迎的开源关系型数据库管理系统之一,其5.7.37版本是一个稳定且功能丰富的版本。这个压缩包“mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz”是为Linux操作系统设计的,特别是针对使用glibc 2.12库...

    audit-plugin-mysql-5.7-1.1.4-725-linux-x86_64.zip

    MySQL审计插件是数据库管理系统MySQL中的一个重要组件,用于记录数据库的访问活动,提供了一种监控、审查和审计数据库操作的方法。"audit-plugin-mysql-5.7-1.1.4-725-linux-x86_64.zip"这个压缩包文件包含了针对...

    mysql8备份-centos8.zip

    MySQL 8.0是当前最流行的关系型数据库管理系统之一,尤其在Linux环境下,它被广泛应用于数据存储和管理。在CentOS 8操作系统上,备份MySQL数据库是非常关键的任务,以确保数据安全,防止意外丢失。这个名为"mysql8...

    Mysql自动发备份恢复

    - **定时任务调度器**:在Linux环境下,可以使用`cron`定时任务来执行MySQL的备份脚本,按照设定的时间点自动进行全量或增量备份。 - **备份类型**:全量备份通常包含所有数据库或选定数据库的完整数据,而增量...

    linux-mysql5.7-64

    在Linux环境中,MySQL 5.7是一个非常重要的关系型数据库管理系统,被广泛应用于各种规模的企业和项目中。MySQL 5.7版本带来了许多性能优化、安全性增强以及功能更新,使得它成为开发人员和系统管理员的首选数据库...

    Linux系统下定时备份数据库

    首先,我们需要创建一个备份脚本,这个脚本将包含备份、压缩以及清理旧备份的操作。以下是一个简单的示例脚本: ```bash #!/bin/bash # 定义备份路径和文件名 BACKUP_DIR="/var/backups/mysql" DATE=$(date +%Y%m%...

    Linux 下安装 Mysql5.0

    #### 第一步:下载mysql-5.0.67.tar.gz 在进行安装之前,首先需要获取MySQL 5.0.67的源代码包。可以通过MySQL官方网站或其他可信渠道下载`mysql-5.0.67.tar.gz`文件。这里推荐直接访问MySQL官方网站以确保下载到的是...

    linux下mysql数据库的安装方法

    在Linux环境下部署MySQL数据库是一项常见且重要的任务。本文将详细介绍几种在Linux操作系统上安装MySQL的具体操作方法,并提供相关的注意事项和配置建议。无论您是初学者还是有一定经验的系统管理员,都能从中获得有...

    linux上安装备份

    总结来说,Linux上的MySQL安装与备份是一项关键任务。理解并熟练掌握这些步骤对于保护数据安全至关重要。通过使用`apt`或`yum`进行安装,`mysqldump`进行数据库备份,以及`tar`或`rsync`备份Web文件,你可以构建出一...

    mysql-linux

    MySQL是世界上最受欢迎的开源数据库系统之一,尤其在Linux操作系统上表现卓越。Linux作为一个稳定、免费且开源的操作系统,与MySQL的结合为开发者提供了强大的数据存储和处理能力。本主题主要聚焦于MySQL在Linux...

    linux中安装mysql8.0安装包

    为了让MySQL在系统启动时自动启动,创建一个启动脚本: ``` sudo cp support-files/my-medium.cnf /etc/my.cnf sudo ln -s /usr/local/mysql/bin/mysqld_safe /etc/init.d/mysqld sudo chkconfig --add mysqld ...

    mysql-standard-4.0.14-pc-linux-i686.tar.gz

    对于数据库设计,了解ER模型(实体关系模型)、范式理论(第一范式到第五范式)以及索引的创建和使用是非常基础的知识。此外,熟悉SQL语言,包括SELECT、INSERT、UPDATE、DELETE等基本操作,以及JOIN、GROUP BY、...

    mysql备份工具

    - **自动备份**:可以设置定时任务或脚本来实现定期备份,如Linux的cron job,Windows的任务计划程序,或编写shell脚本配合crontab。 2. **全量备份与增量/差异备份** - **全量备份**:备份数据库的所有内容,...

    MySql 4.0.22_Linux.rar

    MySQL 4.0.22 是 MySQL 数据库管理系统的一个较早版本,专为 Linux 操作系统设计。在 Linux 上安装 MySQL 4.0.22 需要遵循一定的步骤和注意事项,因为这个版本可能不支持最新的操作系统或者硬件。下面我们将深入探讨...

    dtcms4 mysql linux 运行版本

    【标题】"dtcms4 mysql linux 运行版本"指的是DTcms内容管理系统在Linux操作系统上运行的第四个主要版本,该版本与MySQL数据库系统相结合。需要注意的是,这个版本可能并非官方发布,所以可能存在一些未公开的修改...

    java调用mysql命令 导入导出数据库

    在Java编程中,调用MySQL命令来导入和导出数据库是一种常见的操作,这涉及到数据库管理、数据迁移或者备份恢复等场景。在这个过程中,Java通过JDBC(Java Database Connectivity)接口与MySQL进行交互,利用MySQL...

Global site tag (gtag.js) - Google Analytics