解析Mysql备份与恢复简单总结与tee命令的使用介绍

所属分类: 数据库 / Mysql 阅读数: 992
收藏 0 赞 0 分享

备份数据方法:
一:sql语句。
LOCKS TABLES tablename READ;//读锁定
尝试锁定表之前,LOCK TABLES不是事务安全型的,会隐含地提交所有活性事务,同时,会隐含地开始一项事务(例如,使用START TRANSACTION),
所以,对事务表(如InnoDB)使用LOCK TABLES的正确方法是,设置AUTOCOMMIT=0
FLUSH TABLES,
SELECT * INTO OUTFILE 'data_bck.sql' FIELDS TERMINATED BY ',' FROM tablename;
UNLOCK TABLES;

二:mysqldump工具。
完全备份数据库中的一个表:
mysqldump -h192.168.4.20 -uusername -puserpswd dbname tablename>data_bck.sql

完全备份某个数据库:
mysqldump -h192.168.4.20 -uusername -puserpswd dbname tablename>data_bck.sql
完全备份所有数据库:
mysqldump -h192.168.4.20 -uusername -puserpswd --single-transaction --all-databases>data_bck.sql
完全备份所有数据库后停用以前所有增量日志并生成新日志:
mysqldump -h192.168.4.20 -uusername -puserpswd --single-transaction --flush-logs --master-data=2 --all-databases>data_bck.sql
完全备份所有数据库后删除以前所有增量日志并生成新日志:
mysqldump -h192.168.4.20 -uusername -puserpswd --single-transaction --flush-logs --master-data=2 --all-databases --delete-master-logs>data_bck.sql
增量备份:
先执行完全备份,然后执行更新日志:
mysqladmin -h192.168.4.20 -uusername -puserpswd flush-logs

三:直接复制data目录。
停止mysql服务或者锁定数据库表,复制data目录到备份位置,启动mysql服务或者解锁数据库表。

恢复数据方法:
一:sql语句。
LOAD DATA INFILE 'data_bck.sql' INTO TABLE tablename FIELDS TERMINATED BY ',';

二:mysql工具。
完全恢复:
mysql -h192.168.4.20 -uusername -puserpswd dbname<data_bck.sql
恢复增量日志:
mysqlbinlog log-bin.000001 log-bin.000008 | mysql

另外,有一个很有趣又很实用的小技巧:tee.
它将你操作和输出的全部可视信息都保存进了一个文件里面,可以用来生成表格式的文件、报表制作、简单的备份。
用法是这样的:
在mysql命令行下,执行下面的命令:
>tee E:/heihei.sql
这样就创建了记录文件,接下来,我们的所有操作和所有输出结果都将被原样记录下来,就像照片一样。
>select * from tablename;
那么这条命令和查询结果都将被记录到这个文件里面,很好玩的。不过,它很仔细的,就连你的错误命令都会记录下来的。可别被笑话啊。:)

更多精彩内容其他人还在看

mysql jdbc连接步骤及常见参数

这篇文章主要介绍了mysql jdbc连接步骤及常见参数,需要的朋友可以参考下
收藏 0 赞 0 分享

Navicat for MySQL(mysql图形化管理工具)是什么?

这里就给大家介绍一个常用的MySQL数据库管理工具:Navicat for MySQL,需要的朋友可以参考下
收藏 0 赞 0 分享

lnmp下如何关闭Mysql日志保护磁盘空间

这篇文章主要介绍了lnmp下如何关闭Mysql日志保护磁盘空间的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

使用phpMyAdmin批量修改Mysql数据表前缀的方法

这篇文章主要介绍了使用phpMyAdmin批量修改Mysql数据表前缀的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

如何解决局域网内mysql数据库连接慢

通过内网连另外一台机器的mysql服务, 确发现速度N慢! 等了大约几十秒才等到提示输入密码。非常急人,有没有办法可以解决局域网内mysql数据库连接慢呢?下面小编带领大家来解决此问题,感兴趣的朋友一起看看吧
收藏 0 赞 0 分享

使用SKIP-GRANT-TABLES 解决 MYSQL ROOT密码丢失

这篇文章主要介绍了使用SKIP-GRANT-TABLES 解决 MYSQL ROOT密码丢失的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL 5.0.16乱码问题的解决方法

这篇文章主要介绍了MySQL 5.0.16乱码问题的解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

MySQL提高分页效率

本文分享的这段代码是大数据量时提高分页的效率的测试代码,感兴趣的小伙伴可以参考一下
收藏 0 赞 0 分享

小记一次mysql主从配置解决方案

mysql主从方案主要作用:读写分离,使数据库能支撑更大的并发。在报表中尤其重要。由于部分报表sql语句非常的慢,导致锁表,影响前台服务。如果前台使用master,报表使用slave,那么报表sql将不会造成前台锁,保证了前台速度。
收藏 0 赞 0 分享

RHEL6.5编译安装MySQL5.6.26教程

这篇文章主要介绍了RHEL6.5编译安装MySQL5.6.26教程的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多