MySQL基本功能与参数文件管理
MySQL 数据库文件分类介绍
redolog
undolog
binlog(复制时还有 relaylog)
errorlog
querylog
slowlog
data
index
MySQL 参数文件管理
mysql 数据库启动时会去读取参数配置文件,以此来确定一些初始化参数。数据库启动的时候,读取的第一个文件,默认在/etc/my.cnf
如果/etc/my.cnf 没有内容,这时所有的参数值取决于编译MySQL时指定的默认值和源代码中指定参数的默认值。但是,mysql如果在默认的数据库目录下找不到mysql参数文件,则启动会失败。
参数分类
按照 Mysql的分发,分为服务器变量(静态变量、动态变量)、服务器状态变量(各种运行时统计,类似 Oracle v$视图)
静态参数
在 MySQL服务运行的过程中不能修改,即只读,只能通过 my.cnf参数文件修改。
动态参数
可以在mysql服务运行的过程中进行修改
会话级别
修改的影响范围只是针对该会话,如果再有一个客户端和服务器建立连接,则该属性不会造成影响;修改使用:
set session var_name = value
set @@session.var_name = value
全局级别
修改的影响范围是针对整个服务的生命周期;修改使用:
set global var_name = value;
set @@global.var_name = value;
MySQL参数的查看
show variables; 显示当前mysql的所有参数,无隐含参数
show variables like "%innodb%"; 这个很像sq语句,意思是显示jon开头的变量。
select @@session.autocommit;
select @@autocommit;
select @@global.autocommit;
show slave statusG
g的作用是分号和在sql语句中写';'是等效的
G的作用是将查到的结构旋转90度变成纵向
mysql 日志分析工具介绍
mysqldumpslow
mysql 官方提供的慢查询日志分析工具
出现次数(Count)
执行耗费的平均时间和累计总耗费时间(Time)
等待锁耗费的时间(Lock)
发送给客户端的行总数(Rows)
扫描的行总数(Rows)
用户以及sql语句本身
mysqlbinlog
binlog 二进制日志分析工具
pt-query-digest
pt-query-digest 是用于分析mysql慢查询的一个工具,它可以分析 binlog、 General log、slowlog
mysqlsla
可以分析所有日志,包括自定义日志
mysql 默认数据库介绍
nysql 数据库
mysql:这个是mysql的核心数据库,类似于 sql server中的 master库,主要负责存储数据库的用户、权限设置等mysql自己需要使用的控制和管理信息。
不可以删除,如果对mysql不是很了解,也不要轻易修改这个数据库里面的表信息。
sys数据库
Sys库所有的数据源来自:performance_schema。目标是把 performance_schema 的复杂度降低,让DBA能更好的阅读这个库里的内容,让DBA更快的了解DB的运行情况。
performance_schema
主要用于收集数据库服务器性能参数
INFORMATION_SCHEMA
information_schema 数据库是Mysql 自带的,它提供了访问数据库元数据的方式。如数据库名或表名,列的数据类型,或访问权限等