mysql-DBA(1)-数据库备份恢复-导入导出-日志解释

这篇具有很好参考价值的文章主要介绍了mysql-DBA(1)-数据库备份恢复-导入导出-日志解释。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.备份类型

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql


mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

log: hdd
data :ssd 

2.数据库工具

 

3.逻辑备份和物理备份




,备份和导出都慢,缓冲池有污染。
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
逻辑备份:把所有的命令转换成sql语句。

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
修改配置文件:
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

3.1MySQLDUMP


-A 备份所有
-B 备份哪个数据库
--master-data=1 同步

#备份 数据库表 test 到aaa  保存到文本 backup.sql中
mysqldump --single-transaction -B test aaa  >backup.sql

内容:
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

备份参数:
1.备份成文件,里面就是sql语句
2.routine:
3.trigger 触发器
4.event: 定时任务
5.-B 数据库

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
1.有-B 表示备份数据库 test 为  数据库 aaa 备份的结果是:backup.sql
   tar czf backup20170509.tar.gz backup.sql
  lz4_decompress
 qpress

2.只备份一张表的话:
没有-B  表示备份的是数据库test 下面的表aaa
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

3.直接输出为一个备份文件,且是压缩过的。

4.-w 备份条件 -w"C=12"
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

 

3.2 备份示例

 

=1记录所有操作.
 

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

3.3xtrabackup

4.导入导出

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
从表sbtestl 中导出数据到 sbtest.dat,id <1000000;

设置文件: set global secure_file_priv='/tmp/';
打开文件: vim   /etc/my.cnf
重启mysql
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
1.选择数据库sbtest
2.选择数据表,导出数据。
3.导出的目录: /tmp/下
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
 

4.1导出

4.2导入  

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

5.性能优化

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
 

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
 

MYSQL复制


mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

6.Mysql日志

物理复制:数据一致。
逻辑一致: 100万行,但数据不一定一致。
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

二进制日志:
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
 

是否打开二进制日志?
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
vim /etc/my.cnf
log_bin=bin  //二进制日志都是以bin 为开头的
cd /mdata/mysql_test_data/

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
bin.000099  6位-7位 不会循环
bin.0000100

1.生成日志
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

1.操作行为:显示日志:show master status;
2.刷新日志:flush binary logs;
3.操作行为:显示日志 show master status           

2.查看日志内容:

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
原始日志:

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

结束:rotate
 

表中插入2个数据,
未操作前:
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
操作以后 事务变成487 产生了333个字节。
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

查看日志 show binlog events in 'bin.000025';

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
 

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
1.事件类型说明:
   query:执行sql语句
   table_map:id=284
   write_rows:插入记录 不是sql语句 
   Xid:提交,事务号

2.解析日志:mysqlbinlog  bin.000025
  这行记录:base64方便传输
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

看具体内容的命令:
通过帮助查找参数:mysqlbinlog --help | less

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

--base64-ouput=never 表示不输出。
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

--base64-ouput=decode-rows  -v 表示解析每行的数据。

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql
这不是sql语句,执行不了的。
insert不行

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

replace一条记录:值已经改了。

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

查看  :mysqlbinlog --base64-output=decode-rows -v bin.000025
          mysqlbinlog --base64-oytput=decode-rows -vv bin.000025

insert into a values(400,400);
mysqlbinlog --base64-output=decode-rows -v bin.000026
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

delete from a where a<400;
query开始
Write_rows 变成 Delete_rows:
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

update a set b=500 where b=400;
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

缺点:大。
优点:一致。

set binlog_format='statement';

update a set b=500 where b=400;
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

看日志只能看到每行的记录,但是不能看到执行的sql语句。如何知道每行操作的sql语句?
设置参数为1
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

示例:
用数据库 aaa,
1.插入数据(100,100)
2.插入数据(200,200)
3.更新 a  设置b=400

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql

日志:

mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql


在写之前有个rows_query类型
mysql-DBA(1)-数据库备份恢复-导入导出-日志解释,数据库,mysql








                              

 


 




 文章来源地址https://www.toymoban.com/news/detail-837478.html

到了这里,关于mysql-DBA(1)-数据库备份恢复-导入导出-日志解释的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • mysql数据库备份和恢复

    数据备份可以分为三种, 热备份。 数据库处于运行状态,此时依赖数据库的日志文件进行备份 温备份。 进行数据备份时数据库服务正常进行,但是数据智能度不能写。 冷备份。数据库处于关闭状态,能够够好的保证数据库的完整性。 逻辑备份。使用软件从数据库中提取数

    2024年02月12日
    浏览(25)
  • 如何备份与恢复MySQL数据库数据

    目录 一、MySQL备份 备份方式 完全备份 差异备份 增量备份 二、常见的备份方法 物理冷备 专用备份工具 mysqldump 或 mysqlhotcopy 启用二进制日志进行增量备份 第三方工具备份 三、MySQL完全备份 四、数据库完全备份分类 物理冷备份与恢复 mysqldump备份与恢复 五、物理冷备份与恢复

    2024年02月16日
    浏览(23)
  • 数据库应用:MySQL备份与恢复

    目录 一、理论 1.数据备份 2.完全备份与恢复 3.完全备份与恢复应用 4.增量备份与恢复 5.增量备份与恢复应用 6.使用脚本备份 7.日志管理 二、实验 1.完全备份与恢复 2.增量备份与恢复 3.使用脚本备份 三、问题 1.mysqldump报错 四、总结 (1)重要性 ①  备份的主要目的是灾难恢复

    2024年02月16日
    浏览(21)
  • MySQL数据库的备份与恢复

    备份的主要目的是灾难恢复。 在生产环境中,数据的安全性至关重要。 任何数据的丢失都可能产生严重的后果。 造成数据丢失的原因: 程序错误 人为操作错误 运算错误 磁盘故障 灾难(如火灾、地震)和盗窃 1)物理备份 物理备份:对数据库操作系统的物理文件(如数据

    2024年02月04日
    浏览(20)
  • Mysql数据库增量备份与恢复

    使用 mysqldump 进行完全备份,备份的数据中有重复数据,备份时间与恢复时间长。 而增量备份就是备份自上一次备份之后增加或改变的文件或内容。 1、增量备份的特点: 没有重复数据,备份量不大,时间短 恢复麻烦:需要上次完全备份及完全备份之后所有的增量备份才能恢复

    2024年02月07日
    浏览(38)
  • 数据库(MySQL的备份和恢复)

    目录 1.1 MySQL 日志管理 1.1.1 MySQL日志类型 1.1.2 错误日志 错误日志中主要记录的几种日志 错误日志的定义 1.1.3 通用查询日志 1.1.4 慢查询日志 和慢查询相关的变量设置 1.1.5 二进制日志 二进制日志是记录执行的语句还是执行后的数据 日志滚动  1.2 MySQL备份 1.2.1 备份类型 1.2.2

    2024年01月25日
    浏览(21)
  • 【数据库四】MySQL备份与恢复

    数据库备份 物理备份 :直接对数据库的 数据文件或者日志文件 进行备份. 逻辑备份 :对 数据库的库或表对象 进行备份. 备份策略 完全备份 :每次备份 都备份完整的数据库 . 是对整个数据库、数据库结构和文件结构的备份。 保存的是 备份完成时刻的数据库 。 是 差异备份与增

    2024年02月11日
    浏览(21)
  • 9-MySQL数据库 数据的备份与恢复

    1.date文件的备份 2.mysqldump 备份 说明: mysqldump是MySQL数据库中的一个实用程序,它主要用于转储(备份)数据库。mysqldump通过生成一个SQL脚本文件,包含从头开始重新创建数据库所必需的(如 CREATE TABLE和INSERT等),来实现数据库的备份和转储。这样,你可以在任何时候通过运

    2024年02月08日
    浏览(24)
  • MySQL-备份+日志:介质故障与数据库恢复

    本关任务: 备份数据库,然后再恢复它。 为了完成本关任务,你需要掌握: 1.MySQL的恢复机制; 2.MySQL提供的备份与恢复工具。 和大多数DBMS一样,MySQL利用备份、日志文件实现恢复。 具体理论知识在此不详细介绍。 MySQL提供了以下工具: 逻辑备份工具:mysqldump 物理备份工具

    2024年02月05日
    浏览(16)
  • 【Linux】Mysql的数据库备份及恢复

            备份就是为了防止原数据丢失,保证数据的安全。当数据库因为某些原因造成部分或 者全部数据丢失后,备份文件可以帮我们找回丢失的数据。因此,数据备份是很重要 的工作。 常见数据库备份的应用场景如下: 数据丢失应用场景: 人为操作失误造成某些数据

    2023年04月10日
    浏览(14)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包