欢迎来到个人简历网!永久域名:gerenjianli.cn (个人简历全拼+cn)
当前位置:首页 > 范文大全 > 实用文>Ubuntu Server下MySql数据库备份脚本代码

Ubuntu Server下MySql数据库备份脚本代码

2022-12-21 08:29:59 收藏本文 下载本文

“MIA”通过精心收集,向本站投稿了8篇Ubuntu Server下MySql数据库备份脚本代码,以下是小编整理后的Ubuntu Server下MySql数据库备份脚本代码,欢迎阅读分享,希望对您有所帮助。

Ubuntu Server下MySql数据库备份脚本代码

篇1:Ubuntu Server下MySql数据库备份脚本代码

最近更 新

MySQL笔记之子查询使用介绍

JDBC数据库的使用操作总结

mysql中event的用法详解

MySQL存储毫秒数据的方法

解析MySQL创建外键关联错误 - errno:150

MySQL 常用命令

MySQL数据库备份方法说明

Ubuntu10下如何搭建MySQL Proxy读写分离探

MySQL 性能优化的最佳20多条经验分享

EXCEL数据上传到SQL SERVER中的简单实现方

热 点 排 行

mysql安装图解 mysql图文安装教程

超详细mysql left join,right jo

Can''t connect to MySQL server

Mysql命令行导入sql数据

MYSQL 数据库导入导出命令

Mysql字符串截取函数SUBSTRING的

MySQL数据库备份与恢复方法

MySQL server has gone away 问题

windows下mysql忘记root密码的解

MySQL日期数据类型、时间类型使用

篇2:Linux自动备份MySQL数据库脚本代码

最近更 新

MySQL中的LOCATE和POSITION函数使用方法

mysql 超大数据/表管理技巧

MySQL中Stmt 预处理提高效率问题的小研究

MySQL Order by 语句用法与优化详解

深入MySQL存储引擎比较的详解

怎么重置mysql的自增列AUTO_INCREMENT初时

一句命令完成MySQL的数据迁移(轻量级数据

解析MYSQL 数据库导入SQL 文件出现乱码的

Xtrabackup使用指南 InnoDB数据备份工具

MySQL Memory 存储引擎浅析

热 点 排 行

mysql安装图解 mysql图文安装教程

超详细mysql left join,right jo

Can''t connect to MySQL server

Mysql命令行导入sql数据

MYSQL 数据库导入导出命令

Mysql字符串截取函数SUBSTRING的

MySQL数据库备份与恢复方法

MySQL server has gone away 问题

windows下mysql忘记root密码的解

MySQL日期数据类型、时间类型使用

篇3:linux mysql数据库备份脚本代码linux操作系统

可以将这个脚本放进crontab,他的配制文件在 /etc/crontab中每天凌晨执行一次,自动备份 这个脚本每天最多只执行一次,而且只保留最近五天的备份在服务器上。

代码如下复制代码

#!/bin/bash

#This is a ShellScript. For Auto DB Backup

#Powered by aspbiz

#-09

#Setting

#设置数据库名,数据库登录名,密码,备份路径,日志路径,数据文件位置,

#以及备份方式

#默认情况下备份方式是tar,还可以是mysqldump,mysqldotcopy

#默认情况下,用root(空)登录mysql数据库,备份至/root/namexxxxx.tgz

DBName=mysql

DBUser=root

DBPasswd=password

BackupPath=/root/

LogFile=/root/db.log

DBPath=/var/local/mysql5/var/

#BackupMethod=mysqldump

#BackupMethod=mysqlhotcopy

#BackupMethod=tar

#Setting End

NewFile=“$BackupPath”“$DBName”$(date +%y%m%d).tgz

DumpFile=“$BackupPath”“$DBName”$(date +%y%m%d)

ldFile=“$BackupPath”“$DBName”$(date +%y%m%d –date=’5 days ago’).tgz

echo “——————————————-” >>$LogFile

echo $(date +“%y-%m-%d %H:%M:%S”) >>$LogFile

echo “————————–” >>$LogFile

#Delete Old File

if [ -f $OldFile ]

then

rm -f $OldFile >>$LogFile 2>&1

echo “[$OldFile]Delete Old File Success!” >>$LogFile

else

echo “[$OldFile]No Old Backup File!” >>$LogFile

fi

if [ -f $NewFile ]

then

echo “[$NewFile]The Backup File is exists,Can’t Backup!” >>$LogFile

else

case $BackupMethod in

mysqldump)

if [ -z $DBPasswd ]

then

mysqldump -u $DBUser –opt $DBName >$DumpFile

else

mysqldump -u $DBUser -p$DBPasswd –opt $DBName >$DumpFile

fi

tar czvf $NewFile $DumpFile >>$LogFile 2>&1

echo “[$NewFile]Backup Success!” >>$LogFile

rm -rf $DumpFile

;;

mysqlhotcopy)

rm -rf $DumpFile

mkdir $DumpFile

if [ -z $DBPasswd ]

then

mysqlhotcopy -u $DBUser $DBName $DumpFile >>$LogFile 2>&1

else

mysqlhotcopy -u $DBUser -p $DBPasswd $DBName $DumpFile >>$LogFile 2>&1

fi

tar czvf $NewFile $DumpFile >>$LogFile 2>&1

echo “[$NewFile]Backup Success!” >>$LogFile

rm -rf $DumpFile

;;

*)

/etc/init.d/mysqld stop >/dev/null 2>&1

tar czvf $NewFile $DBPath$DBName >>$LogFile 2>&1

/etc/init.d/mysqld start >/dev/null 2>&1

echo “[$NewFile]Backup Success!” >>$LogFile

;;

esac

fi

echo “——————————————-” >>$LogFile

例2.如果对上面脚本不满意可参考下面mysql数据库备份脚本哦

代码如下复制代码

#!/bin/bash

#Mysql autobackup shell#write by tuspark.cn

#-------------------数据库相关的用户名、密码、需要备份的数据库名、备份目录等

dbuser=root

dbpasswd=XXXXX

dbserver=localhost

dbname=XXXXX

dbopt=--opt

backupdir=/dcbackup/

#-------------------是否开启FTP远程备份,0为否,1为是。

copytoftp=1

ftpserver=XXXXX

ftpuser=XXXXX

ftppasswd=XXXXX

#-------------------以下参数

fileprefix=dcradiusdump

filename=$backupdir`date +%F`.sql

newfile=$fileprefix-`date +%F`.tar.gz

keepdays=10

#-------------------以下为备份时的日志

logfile=/var/log/mysqlbackup.log

logtmp=/var/log/mybackup.tmp

#===============================================

if [ ! -d $backupdir ]

then

echo “$backupdir is not exist, then make ...” >>$logfile

mkdir -p $backupdir

fi

echo “start====================================>”>>$logfile

echo “Beginning backup `date '+%F %T'`” >>$logfile

echo “Delete $keepdays days ago files ...” >>$logfile

find $backupdir -name $fileprefix* -mtime +$keepdays -fls $logtmp -exec rm {} ;

echo “Deleted Backup file is :”>>$logfile

cat $logtmp >>$logfile

echo “Delete old file Success!” >>$logfile

if [ -f $backupdir$newfile ]

then

echo “$newfile backup exist, backup stop ...” >>$logfile

else

if [ -z $dbpasswd ]

then

mysqldump -u$dbuser -h$dbserver $dbopt $dbname >$dumpfilename

else

mysqldump -u$dbuser -p$dbpasswd -h$dbserver $dbopt $dbname >$dumpfilename

fi

tar czvf $backupdir$newfile $dumpfilename >>$logfile 2>&1

echo “$backupdir$newfile Backup Success!” >>$logfile

rm -fr $dumpfilename

if [ $copytoftp = 1 ]; then

if [ -z $ftpserver ];then

echo “Ftp Server not set,Copy to Ftp Failed ...” >>$logfile

exit 1

elif [ -z $ftpuser ];then

echo “Ftp user not set, Copy to Ftp Failed ...” >>$logfile

exit 2

elif [ -z $ftppasswd ]; then

echo “Ftp password not set, Copy to Ftp Failed ...” >>$logfile

exit 3

else

echo “Start copy to Ftp server ....” >>$logfile

ftp -n>$logfile

fi

实例三

代码如下复制代码

第一步:在服务器上配置备份目录代码:

--------------------------------------------------------------------------------

mkdir /var/lib/mysqlbackup

cd /var/lib/mysqlbackup

--------------------------------------------------------------------------------

第二步:编写备份脚本代码:

--------------------------------------------------------------------------------

vi dbbackup.sh

--------------------------------------------------------------------------------

粘帖以下代码,务必更改其中的username,password和dbname,

代码:

--------------------------------------------------------------------------------

#!/bin/sh #Username to access the MySQL server USERNAME=“username” # Username to access the MySQL server PASSWORD=“password” # List of DBNAMES for Backup DBNAME=“dbname” #date timestamp for log message DATE=`/bin/date +%Y-%m-%d_%Hh%Mm` #output file UTDIR=“/var/lib/mysqlbackup/” UTFILE=“ip_bindass”.$DATE.“sql.gz” #working directory DIR=“/var/lib/mysqlbackup/”#cd $DIR # MySQL Backup /usr/bin/mysqldump --database $DBNAME --opt --single-transaction -u$USERNAME -p$PASSWORD | /usr/bin/gzip -9 >$OUTDIR$OUTFILE

--------------------------------------------------------------------------------

更改备份脚本权限

代码:

--------------------------------------------------------------------------------

chmod +x dbbackup.sh

--------------------------------------------------------------------------------

第三步:用crontab定时执行备份脚本代码:

--------------------------------------------------------------------------------

crontab -e

--------------------------------------------------------------------------------

若每天下午3点20备份,添加如下代码,

代码:

--------------------------------------------------------------------------------

20 15 * * * /var/lib/mysqlbackup/dbbackup.sh

--------------------------------------------------------------------------------

搞定!

篇4:自动备份mysql数据库 shell脚本

最近使用了testlink和mantis这2个测试相关的系统,而他们又全部是基于mysql+php开发的,因此定期备份数据库也是很有必要的,下面是自己写的一个简单的shell脚本,我的mysql是通过xampp这个套件安装的,因为这个套件可以一起安装testlink和mantis 需要的php+apache环境。

#!/bin/bash#this script. will backup the mysql databases and source code automatically.#Date: -11-21#Author: Cullen#variable listDbTestCase=testlink #testlink的数据库名称DbBug=bugtracker #mantis在mysql里的数据库名称DbUser=rootDbPwd=adminBackupPath=/root/mysql_backup/LogFile=/root/mysql_backup/log_file#check the backup file exists or notif [ ! -d $BackupPath ]; then mkdir $BackupPathfifor DbName in $DbTestCase $DbBug do NewFile=“$BackupPath”“$DbName”$(date +%y%m%d).tar.gz DumpFile=“$BackupPath”“$DbName”$(date ++%y%m%d).sql ldFile=“$BackupPath”“$DbName”$(date +%y%m%d --date='1 weeks ago').tar.gz echo “-----------------------------------------” echo $(date +“%y-%m-%d %H:%M:%S”) echo “-----------------------------------------” #create new backup file weekly if [ -f $NewFile ]; then echo “New backup file have exists!” else /opt/lampp/bin/mysqldump -uroot -padmin $DbName >$DumpFile tar czvf $NewFile $DumpFile rm -rf $DumpFile echo “[$NewFile] backup completely!” >>$LogFile fi #remove the obsolete file if [ -f $OldFile ]; then rm -f $OldFile echo “delete the old file: [$OldFile]” fi done

可以将这个脚本加入到cron例行程序里,就可以自动备份数据库了,

来自:blog.csdn.net/wangyiyan315/article/details/16944479

篇5:linux中mysql备份脚本代码linux操作系统

在linux中如果想定时备份数据库的脚本我们可以很方便简单的操作,下面我来分享一段mysql定时备份的脚本代码,

第一步:在你的linux服务器中定义备份目录:

代码如下复制代码

mkdir /var/lib/mysqlbackup

cd /var/lib/mysqlbackup

第二步:下面是最重要的一步了,就是写定时备份脚本。

代码如下复制代码

vi dbbackup.sh

代码文件如下

代码如下复制代码

#!/bin/sh

# mysql data backup script

#

# use mysqldump --help,get more detail.

#

BakDir=/root/back/ysqlbackup

LogFile=/root/back/mysql/mysqlbak.log

DATE=`date +%Y%m%d%H%M%S`

echo “ ” >>$LogFile

echo “ ” >>$LogFile

echo “-------------------------------------------” >>$LogFile

echo $(date +“%y-%m-%d %H:%M:%S”) >>$LogFile

echo “--------------------------” >>$LogFile

cd $BakDir

DumpFile=$DATE.sql

GZDumpFile=$DATE.sql.tar.gz

/usr/local/bin/mysqldump -u user -pname --database -h 127.0.0.1 db>$DumpFile

echo “Dump Done” >>$LogFile

tar czvf $GZDumpFile $DumpFile >>$LogFile 2>&1

echo “[$GZDumpFile]Backup Success!” >>$LogFile

rm -f $DumpFile

#cd $BakDir/daily

cd $BakDir

echo “Backup Done!”

echo “please Check $BakDir Directory!”

echo “copy it to your local disk or ftp to somewhere !!!”

find $BakDir -ctime +30 -exec rm {} ;

echo “delete file over 30 days”

友情提示:其中user,name和db请根据自己的情况修改

保存退出,然后把这个文件赋予可执行的权限:

代码如下复制代码

#chmod 777 mysqlautobackup.sh

用crontab定时执行备份脚本代码:

--------------------------------------------------------------------------------

crontab -e

--------------------------------------------------------------------------------

若每天下午3点20备份,添加如下代码,

代码:

--------------------------------------------------------------------------------

代码如下复制代码20 15 * * * /var/lib/mysqlbackup/dbbackup.sh

这样就搞定了,每天会定时帮你备份mysql数据库了,

篇6:Lunix环境下MySQL数据库的自动备份脚本

可以将这个脚本放进crontab,每天凌晨执行一次,自动备份

这个脚本每天最多只执行一次,而且只保留最近五天的备份在服务器上,

#Setting

#设置数据库名,数据库登录名,密码,备份路径,日志路径,数据文件位置,及备份方式

#默认情况下备份方式是tar,还可以是mysqldump,mysqldotcopy

#默认情况下,用root(空)登录mysql数据库,备份至/root/dbxxxxx.tgz

#!/bin/bash

#This is a ShellScript. For Auto DB Backup

#Powered by aspbiz

#Setting

DBName=mysql

DBUser=root

DBPasswd=

BackupPath=/root/

LogFile=/root/db.log

DBPath=/var/lib/mysql/

#BackupMethod=mysqldump

#BackupMethod=mysqlhotcopy

#BackupMethod=tar

#Setting End

NewFile=“$BackupPath”db$(date +%y%m%d).tgz

DumpFile=“$BackupPath”db$(date +%y%m%d)

OldFile=“$BackupPath”db$(date +%y%m%d --date=’5 days ago’).tgz

echo “-------------------------------------------” >>$LogFile

echo $(date +“%y-%m-%d %H:%M:%S”) >>$LogFile

echo “--------------------------” >>$LogFile

#delete Old File

if [ -f $OldFile ]

then

rm -f $OldFile >>$LogFile 2>&1

echo “[$OldFile]delete Old File Success!” >>$LogFile

else

echo “[$OldFile]No Old Backup File!” >>$LogFile

fi

if [ -f $NewFile ]

then

echo “[$NewFile]The Backup File is exists,Can’t Backup!” >>$LogFile

else

case $BackupMethod in

mysqldump)

if [ -z $DBPasswd ]

then

mysqldump -u $DBUser --opt $DBName >$DumpFile

else

mysqldump -u $DBUser -p$DBPasswd --opt $DBName1 >$DumpFile

fif

tar czvf $NewFile $DumpFile >>$LogFile 2>&1

echo “[$NewFile]Backup Success!” >>$LogFile

rm -rf $DumpFile

;;

mysqlhotcopy)

rm -rf $DumpFile

mkdir $DumpFile

if [ -z $DBPasswwd ]

then

mysqlhotceopy -u $DBUser $DBName $DumpFile >>$LogFile 2>&1

else

mysqlhotcopy -u $DBUser -p $DBPasswd $DBName $DumpFile >>$LogFile 2>&1

fi

tar czvf $NewFile $DumpFile >>$LogFile 2>&

echo “[$NewFile]Backup Success!” >>$Log1File

rm -rf $DumpFile

;;

*)

/etc/init.d/mysqld stop >/dev/null 2>&1

tar czvf $NewFile $DBPath$DBName >>$LogFlile 2>&1

/etc/init.d/mysqld start >/dev/null 2>&1

echo “[$NewFille]Backup Success!” >>$LogFile

;;

esac

fi

echo “-------------------------------------------” >>$LogFile

篇7:备份PostgreSQL和MySQL数据库数据库

无论是My SQL 还是PostgreSQL 数据库 ,如果你不能每天对其进行备份的话,那么应该每周对这些数据库进行备份操作一次,对许多企业来说,数据库信息代表着网站内容和其它重要的数据,因此,保持数据备份是非常重要的操作。 庆幸的是, MySQL 和PostgreSQL都提

无论是MySQL还是PostgreSQL数据库,如果你不能每天对其进行备份的话,那么应该每周对这些数据库进行备份操作一次。对许多企业来说,数据库信息代表着网站内容和其它重要的数据,因此,保持数据备份是非常重要的操作。

庆幸的是,MySQL和PostgreSQL都提供将数据库转化成flat-text文件的工具,这样你就可以将数据库信息输入到其它系统或者将数据库备份并保留它。

为了备份一个MySQL数据,可以使用mysqldump工具。例如,为了备份一个叫data的数据库,用户可以进行如下操作:

$ mysqldump -u webuser --password=pass data >data.dump

因为通常情况下,mysqldump采用的是标准格式,你应该将这一标准格式改写成一个文件名(在本例中写成data.dump),

对于这种自动备份的方法,唯一缺陷就是必须在命令行指定密码。

为了备份一个PostgreSQL数据库,可以使用pg_dump工具。访问数据库的用户需要运行这一工具。根据PostgreSQL规定的主机访问规则,你可能不需要给数据库输入密码就可以获得该数据库的信息。操作过程如下:

$ pg_dump data >data.dump

这与mysqldump工具同样有效,但是后者不要求用户名或者密码之类的信息,因为你是作为有权限访问该数据库的用户身份来运行这一工具。

在这两种数据库备份方法中,生成的输出文件提供了重新创建整个数据库的操作说明。因此,这一输出文件包含了数据和表格结构,这正是你创建数据库所必要的信息。

通过以上两类命令,你还可以使用另外一些命令行获取想保存的数据。对于这两类命令,你可以登录网站主页与阅读所有操作信息,并自定义你的数据库备份操作。

原文转自:www.ltesting.net

篇8:Python Mysql自动备份脚本

最近更 新

python ip正则式

解决windows下Sublime Text 2 运行 PyQt

python冒泡排序算法的实现代码

Python 拷贝对象(深拷贝deepcopy与浅拷贝

Python enumerate遍历数组示例应用

python目录操作之python遍历文件夹后将结

python中关于日期时间处理的问答集锦

python 合并文件的具体实例

python使用xmlrpc实例讲解

python BeautifulSoup使用方法详解

热 点 排 行

Python入门教程 超详细1小时学会

python 中文乱码问题深入分析

比较详细Python正则表达式操作指

Python字符串的encode与decode研

Python open读写文件实现脚本

Python enumerate遍历数组示例应

Python 深入理解yield

Python+Django在windows下的开发

python 文件和路径操作函数小结

python 字符串split的用法分享

【Ubuntu Server下MySql数据库备份脚本代码】相关文章:

1.windows下计划任务自动备份mysql数据库方法Windows服务器操作系统

2.Linux下使用crontab自动备份数据库

3.linux下迁移mysql数据库存放目录linux操作系统

4.Informix数据备份技巧数据库

5.如何关闭MySQL数据库中错误提示音

6.在Linux/Unix平台下安装MySQL数据库

7.wordpress数据库备份及换空间详细教程

8.替换MSSQL数据库text字段恶意脚本数据库教程

9.如何保护MySQL 中的重要数据数据库教程

10.Linux系统定时备份数据库和网站例子linux操作系统

下载word文档
《Ubuntu Server下MySql数据库备份脚本代码.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度: 评级1星 评级2星 评级3星 评级4星 评级5星
点击下载文档

文档为doc格式

Ubuntu Server下MySql数据库备份脚本代码相关文章
最新推荐
猜你喜欢
  • 返回顶部