zoukankan      html  css  js  c++  java
  • 【MySQL】Linux安装和逻辑架构

    linux下安装mysql

    mysql的存放位置 /var/lib/mysql/

    mysql.server和配置文件存放位置 /usr/share/mysql

    mysql的相关命令存放位置 /usr/bin

    启停相关脚本 /etc/init.d/mysql

    配置文件存放位置 /etc/my.cnf

    相关文件

    log-bin是二进制日志用于主从复制

    log-error是错误日志,默认是关闭的,记录严重的警告和错误信息,每次启动和关闭的详细信息。

    log是查询日志:默认关闭,记录查询的sql语句

    数据文件

    • frm文件,存放表结构
    • myd文件,存放表数据
    • myi文件,存放表索引

    MySQL逻辑架构

    连接层:最上层是客户端和连接服务,包含本地sock通信和大多数基于客户端、服务端工具是实现的tcp/ip的通信。主要完成一些类似于连接处理、授权认证及相关的安全方案。在该层上引入了线程池的概念,为通过认证安全接入的客户端提供线程。同样在该层上可以是实现基于SSL的安全连接。服务器也会为安全接入的每个客户端验证它所具有的操作权限。

    服务层:主要完成核心服务人物:SQL接口、缓存查询、SQL分析和优化及部分内置函数的执行。所有跨存储引擎功能也在这一层实现,如过程、函数等。在服务层会解析查询并创建相应的内部解析树,并完成优化,例如确定查询表的顺序,是否利用索引等,最后生成相应的执行操作。对于select语句还会查询内部缓存,如果缓存足够大,可以在大量读操作环境中提升性能。

    引擎层:存储引擎负责MySQL的存储和提取,服务器通过API和存储引擎进行通信,不同的存储引擎功能不同,可以根据需要选取。常用MyISAM和InnoDB。

    存储层:主要将数据存储在运行于裸设备的文件系统上,并完成与存储引擎的交互。

  • 相关阅读:
    [慢查优化]建索引时注意字段选择性 & 范围查询注意组合索引的字段顺序
    telnet报“Unable to connect to remote host:Connection refused”错误
    问题总结-2016
    vim保存文件时,生成.un~文件
    用uniq来处理文件重复数据--交集,差集,计数等(转)
    ThinkPHP的URL访问
    PHP中Exception异常
    Git Stash紧急处理问题,需要切分支
    git 命令学习
    gdb调试PHP扩展错误
  • 原文地址:https://www.cnblogs.com/xdcat/p/13066759.html
Copyright © 2011-2022 走看看