六星教育 - java-mysql优化1909
1.数据表文件 2.日志文件 3.系统文件 4.其他程序文件
sql文件是mysql语法文件,不代表数据存储文件
表结构文件
.frm 存储的是关于数据表的结构,不包含索引结构:主要是字段以及字段类型
一、myisam存储文件
- .MYD存放数据
- .MYI存放索引:索引是指向数据的位置
二、innodb:
- Btree 数据和索引基本是用一片区域
- .ibd 独享空间 一个表一个空间
- ibddata1 共享空间 很多表共享一个空间
三、MySQL日志文件6种
1. 查询日志
一般不建议开启,记录查询的->select使用主要是一些特殊的sql
2. 慢查询日志
默认不开启,指定超出某个时间执行的sql
slow_query_log=1 #开启
slow-query-log-file=mysql-slow.log #文件名
long_query_time=3 #设置最大等待时间
show variables like '%slow%'; 查看
SELECT SLEEP(5); 测试
3. 错误日志
记录MySQL服务运行过程种产生的异常:异常不是指sql执行异常,是指服务异常
4. 二进制日志
功能:会记录执行的sql(update,delete,create,insert)
show variables like '%log_bin%';
mysql-bin.000001:记录的就是写操作的SQL,会随服务器重启创建一个新的,mysql-bin.000002
mysql-bin.index:二进制索引文件
show binary logs; 查询MySQL所有的二进制文件
show master status; 查询状态-使用的是哪个二进制文件
show binlog event;查询第一个二进制文件
show binlog events in "mysql-bin.000002"查询指定的日志文件
reset master 清空二进制文件
flush logs 清空所有日志文件
mysqlbinlog /www/server/data/mysql-bin.000001 | mysql -u root -p 二进制恢复数据
5. 事务日志
6. 中继日志
主要是在主从中去做运用,同时这个文件会记录binlog中的信息,在从节点会根据这个文件去恢复数据
网友评论