mysqldump VS mysqlhotcopy及脚本实例
2014-05-01 11:59
246 查看
1.mysqlhotcopy
- 优点- 速度快
- 缺点
- 只支持MyISAM引擎
- 需要安装perl语言及配置支持环境,因为hotcopy由perl写成
- 选项参数较少,功能不够强大,比如不提供--where选项,无法选取某部分数据备份
- 只能运行在数据库目录所在的机器上
2.mysqldump
- 优点- 支持MyISAM和innodb引擎
- 只要装了mysql就可以用,无需别的操作,不存在平台兼容问题
- 参数较多,功能强大,可以备份整个数据库,也可以备份单个表,还可以备份单个表的部分数据
- 可生成多种文件,还可以用于从一个MySQL服务器向另一个服务器复制数据
- 缺点
- 速度没有那么快
3.综述
如果你只是想临时复制一张表,或者一个数据库,且数据库引擎都是MyISAM,使用速度较快的mysqlhotcopy比较方便;但是如果你需求比较特别,想备份一张表的部分数据,需要使用mysqldump4.样例脚本
#!/bin/sh # sh script for mysqldump # 数据库信息 mysqlRoot=test mysqlPWD=secret mysqlHost=xxx.xxx.x.xxx database=site_xxx # 备份目录 backupDir=./mysqlbackup # 如果备份目录不存在,则创建 if [ ! -e $backupDir ]; then echo "新建备份目录./mysqlbackup" mkdir $backupDir fi # 输入需要备份的时间段 read -p "备份起始日期" startdate read -p "备份结束日期" enddate # 查询当月记录文件夹,有删除,没有创建 dir=`date --date=$startdate +%Y%m` backupPath=$backupDir/$dir if [ -e $backupPath ]; then rm -rf $backupPath echo "删除记录目录" fi mkdir -p $backupPath echo "新建./mysqlbackup/"$dir # 执行mysqldump命令 for table in click custom close goodslog order pageview visit scroll visit_goal daily_click do mysqldump -u$mysqlRoot -h$mysqlHost -p$mysqlPWD $database $table --where="date between '$startdate' and '$enddate'" > $backupPath/$table.csv echo $table "backup" done echo "backup over"
相关文章推荐
- 利用MySQL的mysqlhotcopy实现数据库自动备份的SH脚本源码
- Mysql数据备份二(脚本备份mysqlhotcopy)
- 类似mysqlhotcopy备份mysql myisam脚本
- mysqlhotcopy + binlog 实现mysql增量备份
- 在LINUX下使用mysqlhotcopy备份MySQL中的数据库
- MySQL定时执行脚本(计划任务)命令实例
- mysqlhotcopy
- mysql压力测试脚本实例
- mysql 备份与恢复mysqlhotcopy
- MySQL 多实例启动和关闭脚本
- mysql多实例脚本
- 使用mysqlhotcopy备份MySQL
- 增量dump mysql的shell脚本
- MySQL-5.6.27两种方式部署多实例以及mysqld_multi脚本BUG处理
- MySQL定时执行脚本(计划任务)命令实例
- Perl 脚本简单应用实例-MySQL备份
- mysqlhotcopy 正则使用小技巧
- python数据统计脚本实例mysql,redis
- Centos下使用mysqlhotcopy备份
- mysqlhotcopy 通过ftp方式异地备份数据库