读书笔记:MySQL文件

①配置文件

     MySQL管理员最先接触和可能经常需要用到的文件,毕竟MySQL安装配置的时候会用到该文件,MySQL运行过程中一些参数变量的固化修改也要用到该文件。MySQL启动的时候会按照一定的顺序读取配置文件。具体可以终端调用以下命令查看。

shell> mysql --help | grep my.cnf

②套接字文件

     UNIX / Linux下本地使用套接字方式连接MySQL的socket文件,由参数“ socket ”指定,默认在/tmp目录下,名为“ mysql.sock ”。具体可以在配置文件或者运行中的MySQL下查看。

mysql> SHOW VARIABLES LIKE 'socket'\G

③pid文件

     MySQL启动时会将自己的进程id写入pid文件,由参数“ pid_file ”指定,默认位于数据目录下,名为“ 机器名.pid ”。具体可以在配置文件或者运行中的MySQL下查看。

mysql> SHOW VARIABLES LIKE 'pid_file'\G

④日志文件

  • 错误日志

     error log。记录MySQL服务器的启动、运行和关闭过程。MySQL DBA在遇到问题时首先应该查看错误日志以定位问题,MySQL数据库不能正常启动时第一个应该查看的文件也是错误日志。错误日志不仅记录了所有的错误信息,也记录一些警告(warning)信息和正确的信息。可以从一些警告信息中得到数据库优化的帮助。错误日志由参数log_error指定,默认位于数据目录下,名为“ 机器名.err ”。具体可以在配置文件或者运行中的MySQL下查看。

mysql> SHOW VARIABLES LIKE 'log_error'\G

  • 慢查询日志

     slow log。默认情况下MySQL并未开启慢查询日志,启动慢查询日志需要手动设置“ log_slow_queries ”(5.6版本以前)或者“ slow_query_log ”(5.6版本开始)参数为“ ON ”。开启慢查询日志后,MySQL会将运行时间超过一定阈值的SQL记录,该阈值由“ long_query_time ”参数指定,默认为10秒。慢查询日志可以帮助DBA定位有潜在问题的SQL语句,从而进行SQL语句层面的优化。读取慢查询日志文件,可以借助MySQL自带的mysqldumpslow命令行小公举。从MySQL5.1开始可以将慢查询日志记录到mysql系统库的“ slow_log ”表中(通过动态设置“ log_output ”参数为“ TABLE ”,其默认值“ FILE ”表示记录到文件)。

  • 查询日志

     general log。默认情况下MySQL并未开启查询日志,启动查询日志需要手动设置“ general_log ”参数为“ ON ”。查询日志记录了所有对MySQL数据库的请求信息,无论这些请求是否成功执行。同样地,从MySQL5.1开始可以将查询日志记录到mysql系统库的“ general_log ”表中。

  • 二进制日志

     binary log。默认情况下MySQL并未开启二进制日志,启动二进制日志需要手动设置“ log-bin ”参数。二进制日志记录了MySQL数据库所有的更改操作,无论这些操作最终有没有造成实际改动。因此,二进制日志可以用来备份、恢复以及高可用架构的复制(replication)。参考http://blog.youkuaiyun.com/sweeper_freedoman/article/details/73656481

  • 中继日志

     relay log。MySQL高可用复制(replication)架构下,从库(slave)的“ I/O thread ”读取主库(master)的二进制日志,并将其写为中继日志,然后“ SQL thread ”负责读取和执行中继日志来完成同步复制工作。

⑤数据文件

     数据文件是MySQL数据库的核心文件了,由参数“ datadir ”指定。具体可以在配置文件或者运行中的MySQL下查看。

mysql> SHOW VARIABLES LIKE 'datadir'\G

  • 表定义文件

     .frm文件。记录对表结构的定义(DDL)。

  • 数据索引文件

     不同的存储引擎之间会有差异。如MyISAM的.MYD数据文件和.MYI索引文件,InnoDB的.ibd文件。

  • 其他

     如InnoDB的重做日志文件(redo log file)ib_logfile,记录InnoDB存储引擎的事务日志。



参考:

https://dev.mysql.com/doc/refman/5.7/en/

《MySQL技术内幕》(https://book.douban.com/subject/26436525/

《MySQL技术内幕 InnoDB存储引擎》(https://book.douban.com/subject/24708143/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值