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

1.备份类型

log: hdd

data :ssd

2.数据库工具

3.逻辑备份和物理备份

,备份和导出都慢,缓冲池有污染。

逻辑备份:把所有的命令转换成sql语句。


修改配置文件:

3.1MySQLDUMP

-A 备份所有

-B 备份哪个数据库

--master-data=1 同步

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

内容:

备份参数:

1.备份成文件,里面就是sql语句

2.routine:

3.trigger 触发器

4.event: 定时任务

5.-B 数据库


1.有-B 表示备份数据库 test 为 数据库 aaa 备份的结果是:backup.sql

tar czf backup20170509.tar.gz backup.sql

lz4_decompress

qpress

2.只备份一张表的话:

没有-B 表示备份的是数据库test 下面的表aaa

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

4.-w 备份条件 -w"C=12"

3.2 备份示例

=1记录所有操作.

3.3xtrabackup

4.导入导出

从表sbtestl 中导出数据到 sbtest.dat,id <1000000;

设置文件: set global secure_file_priv='/tmp/';

打开文件: vim /etc/my.cnf

重启mysql

1.选择数据库sbtest

2.选择数据表,导出数据。

3.导出的目录: /tmp/下

4.1导出

4.2导入

5.性能优化



MYSQL复制


6.Mysql日志

物理复制:数据一致。

逻辑一致: 100万行,但数据不一定一致。

二进制日志:

是否打开二进制日志?

vim /etc/my.cnf

log_bin=bin //二进制日志都是以bin 为开头的

cd /mdata/mysql_test_data/

bin.000099 6位-7位 不会循环

bin.0000100

1.生成日志

1.操作行为:显示日志:show master status;

2.刷新日志:flush binary logs;

3.操作行为:显示日志 show master status

2.查看日志内容:

原始日志:

结束:rotate

表中插入2个数据,

未操作前:

操作以后 事务变成487 产生了333个字节。

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

1.事件类型说明:

query:执行sql语句

table_map:id=284

write_rows:插入记录 不是sql语句

Xid:提交,事务号

2.解析日志:mysqlbinlog bin.000025

这行记录:base64方便传输

看具体内容的命令:

通过帮助查找参数:mysqlbinlog --help | less

--base64-ouput=never 表示不输出。

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

这不是sql语句,执行不了的。

insert不行

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

查看 :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

delete from a where a<400;

query开始

Write_rows 变成 Delete_rows:

update a set b=500 where b=400;

缺点:大。

优点:一致。

set binlog_format='statement';

update a set b=500 where b=400;

看日志只能看到每行的记录,但是不能看到执行的sql语句。如何知道每行操作的sql语句?

设置参数为1

示例:

用数据库 aaa,

1.插入数据(100,100)

2.插入数据(200,200)

3.更新 a 设置b=400

日志:

在写之前有个rows_query类型

相关推荐
广州灵眸科技有限公司3 小时前
xfce桌面触摸校准:基于灵眸科技EASY-EAl-Orin-Nano
数据库·windows·科技
Cloud云卷云舒5 小时前
云卷云舒:从Oracle/MySQL迁移到HaishanDB:迁移评估工具核心技术拆解
mysql·oracle·ai-native·haishandb·信创数据库替换
憧憬成为web高手5 小时前
皮卡丘靶场速通--sql 2
数据库·sql·mybatis
段一凡-华北理工大学5 小时前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化
oradh7 小时前
Oracle XTTS实现跨版本迁移和升级(Oracle 11g单库升级至19C RAC集群)
数据库·oracle·11g升级19c·xtts跨版本迁移和升级
用户71333585156248 小时前
MySQL - 事务、redo/undo 日志与 MVCC
mysql
z123456789868 小时前
2026最新两款AI编程工具深度对比实测
java·数据库·ai编程
程序猿DD8 小时前
一个 API Key,统一调用大模型、生图和联网搜索
数据库·网关
java_logo9 小时前
Docker Compose 部署 ClickHouse:快速搭建高性能列式数据库
数据库·clickhouse·docker·列式数据库·轩辕镜像·高性能数据库·clickhouse部署教程
用户71333585156249 小时前
MySQL - InnoDB 的 Buffer Pool
mysql