在现在的工作中,数据备份是非常有必要的,因为在进行数据库管理时经常会遇到一些故障或者问题造成数据库中数据的丢失,如果我们对数据进行了备份,即使数据在操作中丢失了,也没什么大不了的,因为我们有备份啊,由此可见,数据备份是很必要的,那么首先,我将会给大家介绍一些好用的好用的mysql备份工具。
下面是它的介绍.
mysqlhotcopy是一个Perl脚本,最初由Tim Bunce编写并提供。它使用LOCK TABLES、FLUSH TABLES和cp或scp来快速备份数据库。它是备份数据库或单个表的最快的途径,但它只能运行在数据库目录所在的机器上。mysqlhotcopy只用于备份MyISAM。它运行在Unix和NetWare中
使用方法见下面的脚本.加入crotab中吧.
#!/bin/sh
# Name:mysqlbackup.sh
# PS:MySQL DataBase Backup,Use mysqlhotcopy script.
# Last Modify:2008-06-12
# 定义变量,请根据具体情况修改
# 定义脚本所在目录
scriptsDir=`pwd`
# 数据库的数据目录
dataDir=/var/lib/mysql
# 数据备份目录
tmpBackupDir=/tmp/mysqlblackup
backupDir=/backup/mysql
# 用来备份数据库的用户名和密码
mysqlUser=root
mysqlPWD='you password'
# 如果临时备份目录存在,清空它,如果不存在则创建它
if [[ -e $tmpBackupDir ]]; then
rm -rf $tmpBackupDir/*
else
mkdir $tmpBackupDir
fi
# 如果备份目录不存在则创建它
if [[ ! -e $backupDir ]];then
mkdir $backupDir
fi
# 得到数据库备份列表,在此可以过滤不想备份的数据库
for databases in `find $dataDir -type d | \
sed -e "s/\/var\/lib\/mysql\///" | \
sed -e "s/test//"`; do
if [[ $databases == "" ]]; then
continue
else
# 备份数据库
/usr/bin/mysqlhotcopy --user=$mysqlUser --password=$mysqlPWD -q "$databases" $tmpBackupDir
dateTime=`date "+%Y.%m.%d %H:%M:%S"`
echo "$dateTime Database:$databases backup success!" >>MySQLBackup.log
fi
done
# 压缩备份文件
date=`date -I`
cd $tmpBackupDir
tar czf $backupDir/mysql-$date.tar.gz ./
#End完成
加入到crontab中设置每周5运行
0 0 * * 5 /backup/blackup.sh
注意:恢复数据库到备份时的状态mysqlhotcopy 备份出来的是整个数据库目录,使用时可以直接拷贝到 mysqld 指定的 datadir (在这里是 /var/lib/mysql/)目录下即可,同时要注意权限的问题,如下例:
shell> cp -rf db_name /var/lib/mysql/
shell> chown -R mysql:mysql /var/lib/mysql/ (将 db_name 目录的属主改成 mysqld 运行用户)
本套备份策略只能恢复数据库到最后一次备份时的状态,要想在崩溃时丢失的数据尽量少应该更频繁的进行备份,要想恢复数据到崩溃时的状态请使用主从复制机制(replication)。
小技巧:
不想写密码在shell中的话,可以在root的home目录下建立一个.my.cnf文件,以便让mysqlhotcopy从中读取用户名/密码。
[mysqlhotcopy]
user=root
password=YourPassword
然后安全起见,chmod一下。
chmod 600 ~/.my.cnf
mysqlhotcopy从选项文件读取[client]和[mysqlhotcopy]选项组。要想执行mysqlhotcopy,你必须可以访问备份的表文件,具有那些表的SELECT权限和RELOAD权限(以便能够执行FLUSH TABLES)。
原文出处:
http://www.dba-china.com/a/20110920/dba-3361.html
分享到:
相关推荐
方便 、 好用、用于mysql备分还原的好工具。
【描述】中的内容与标题相同,再次强调了这是一个基于PHP的MySQL备份工具,其名称为“帝国备份王”,并且是正式版本。这暗示该软件经过了充分测试和优化,具备较高的稳定性和功能性。 【标签】:“php”提示我们...
标题"PHP实例开发源码—最好用的mysql在线备份工具 帝国备份王正式版.zip"表明这是一个基于PHP语言开发的MySQL数据库在线备份工具,名为"帝国备份王",并且是其正式版本。这个工具可能提供了高效、便捷的方式来对...
帝国备份王解决MYSQL备份三大难题: 1、解决备份大数据问题,采用分组备份,备份稳定高效; 2、解决备份数据编码乱码问题,备份王智能识别编码; 3、解决不同MYSQL版本数据不能互导问题,通过备份王不存在数据库版本...
"最好用的Mysql使用工具"通常指的是那些功能强大、用户界面友好且易于操作的软件,能够帮助数据库管理员(DBA)和开发者更好地进行数据管理、查询、备份、恢复等工作。这里我们将详细讨论Navicat for MySQL,一个被...
#!/bin/bash # 热备份mysql库表,打包文件结构是...如果是只需要还原某张表,则最好手动提取sql后,利用Navicat等工具还原,或者用mysql命令还原。 # 3.备份数据库:./mysqlbackup-v1.sh -t backup -d db1,db2[....]
优优备份工具是从优优网络智能办公系统(http://www.uuoa.net)中抽离中的数据备份工具。 能按您设置的时间间隔或具体时间备份资料。 全天侯全自动无人职守完美备份能添加任意多个备份任务,每个任务都可指定备份时间...
1. mysqldump:mysql 原生自带很好用的逻辑备份工具。 2. mysqlbinlog:实现 binlog 备份的原生态命令。 3. xtrabackup:Percona 公司开发的性能很高的物理备份工具。 mysqldump 备份基本流程: 1. 调用 FTWRL...
【标题】中的“基于PHP的最好用的mysql在线备份工具帝国备份王正式版源码”表明这是一款使用PHP编程语言开发的MySQL数据库在线备份软件。帝国备份王(Empire Backup King)是一个广受欢迎的开源工具,它允许用户方便...
MySQL备份软件是一款针对MySQL数据库系统设计的专业备份工具,1.0版本在用户中获得了良好的反馈,被誉为“非常好用”。在数据库管理中,数据备份是至关重要的环节,它能确保在系统故障、数据丢失或意外破坏时,能够...
本文将详细介绍Sequel Pro作为一款强大的MySQL管理工具在Mac环境下的应用,以及它为何被视为“好用”和“强烈推荐”。 Sequel Pro是一款免费且开源的MySQL客户端,专为Mac用户设计。它提供了一个直观、简洁的图形...
而为了方便用户管理和操作MySQL数据库,出现了许多优秀的MySQL连接工具,其中之一便是"Navicat for MySQL"。 Navicat for MySQL是一款强大的数据库管理工具,专为MySQL设计。它提供了一个直观的图形用户界面(GUI)...
本篇文章将深入探讨一些优秀的MySQL管理工具,帮助你更好地理解如何选择和使用这些工具。 1. **MySQL Workbench** MySQL Workbench是由Oracle官方提供的一个全面的数据库设计、管理和开发工具。它支持SQL编写、...
标题“好用的mysql工具”指的是SQLyog,这是一款优秀的MySQL数据库管理软件。SQLyog提供了直观的用户界面,使得数据库的管理和操作变得更加简单。它支持多种操作系统,如Windows、Mac OS X和Linux,让用户在不同的...
标题中的“navicat8_mysql_cs.exe”是指Navicat for MySQL的一个特定版本,它是一个流行且功能丰富的数据库管理工具,特别适用于MySQL数据库的管理和维护。Navicat是由PremiumSoft公司开发的一款跨平台的数据库管理...
MySQL是一种广泛使用的开源关系型数据库管理系统,而SQLyog是其中一款非常受欢迎的图形化界面工具,它为MySQL数据库管理提供了直观且强大的操作界面。SQLyog Ultimate v8.32是该工具的一个版本,以其易用性和丰富的...
MySQL数据库工具是数据库管理员、开发人员以及数据分析人员日常工作中不可或缺的一部分。SQLyog Enterprise是一款备受赞誉的MySQL管理工具,以其高效、直观的界面和丰富的功能而著名。在本篇文章中,我们将深入探讨...
**Navicat for MySQL:强大的MySQL数据库管理工具** Navicat是一款广受欢迎的数据库管理和开发工具,特别是其针对MySQL的版本——Navicat for MySQL,为用户提供了直观、高效的数据库管理体验。它不仅适合初学者,...
SQLyog是一款功能强大的MySQL数据库管理工具,专为简化MySQL数据库的管理和操作而设计。它以其直观的用户界面和高效的操作性能,深受广大数据库管理员和开发者的喜爱。SQLyog5.02版本是该软件的一个早期迭代,尽管...
标题中提到的“很好用的mysql客户端管理工具”,指的是HeidiSQL在MySQL数据库管理和操作上的高效与便捷。 HeidiSQL的主要特点包括: 1. **用户友好的界面**:HeidiSQL提供了直观、简洁的图形用户界面,使得对...