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

 更新时间:2013年06月22日 16:09:11   作者:  
本篇文章是对Mysql备份与恢复简单总结与tee命令的使用进行了详细的分析介绍,需要的朋友参考下

备份数据方法:
一: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详解如何优化查询条件

    MySQL详解如何优化查询条件

    我们知道从MySQL表中使用SELECT语句来查询数据,如需有条件地从表中选取数据,可将WHERE子句添加到SELECT语句中,本篇我们来看看怎样优化查询条件
    2022-05-05
  • MySQL中的主键自增机制详情

    MySQL中的主键自增机制详情

    这篇文章主要介绍了MySQL中的主键自增机制详情,MySQL提供了主键自增机制AUTO_INCREMENT. 对主键使用, 保证了主键的唯一性,下文详细介绍需要的小伙伴可以参考一下
    2022-08-08
  • MySQL使用正则表达式来更好地控制数据过滤

    MySQL使用正则表达式来更好地控制数据过滤

    MySQL中的正则表达式是一种强大的数据过滤工具,它允许用户以灵活的方式匹配和搜索文本数据,这篇文章主要给大家介绍了关于MySQL使用正则表达式来更好地控制数据过滤的相关资料,需要的朋友可以参考下
    2024-08-08
  • mysql之动态增添字段实现方式

    mysql之动态增添字段实现方式

    这篇文章主要介绍了mysql之动态增添字段实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • mysql Load Data InFile 的用法

    mysql Load Data InFile 的用法

    Load Data InFile是用于批量向数据表中导入记录。
    2009-05-05
  • Canal实现MYSQL实时数据同步的示例代码

    Canal实现MYSQL实时数据同步的示例代码

    本文详细介绍了Canal部署的全过程,包括Canal-Admin、Canal-Server和Canal-Adapter的安装和配置,涵盖创建目录、修改配置文件、容器部署等步骤,适用于MYSQL8.0+环境,旨在帮助用户实现MYSQL实时数据同步
    2024-11-11
  • MySQL中的binlog相关命令和恢复技巧

    MySQL中的binlog相关命令和恢复技巧

    这篇文章主要介绍了MySQL中的binlog相关命令和恢复技巧,需要的朋友可以参考下
    2014-05-05
  • MySQL百万级数据分页查询优化方案

    MySQL百万级数据分页查询优化方案

    在mysql中limit可以实现快速分页,但是如果数据到了几百万时我们的limit必须优化才能有效的合理的实现分页了,否则可能卡死你的服务器哦。
    2017-11-11
  • mysql中怎样使用合适的字段和字段长度

    mysql中怎样使用合适的字段和字段长度

    这篇文章主要介绍了mysql中怎样使用合适的字段和字段长度问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • MySQL Memory 存储引擎浅析

    MySQL Memory 存储引擎浅析

    需求源自项目中的MemCache需求,开始想用MemCached(官方站点:http://memcached.org/ ),但这个在Linux下面应用广泛的开源软件无官方支持的Windows版本
    2011-12-12

最新评论