美文网首页运维
mysql 体系结构与管理

mysql 体系结构与管理

作者: 麟之趾a | 来源:发表于2020-03-04 00:11 被阅读0次

MySQL基本概念

C/S 架构
TCP/IP 和socket 连接
实例:mysqld(守护进程)+ master thread(管理进程) + 干活的thread + 被分配给mysql的内存
mysql的专有内存: 是mysql的一种机制,为了让mysql在一启动就能,在内存中。划出自己的专有内存,来更快的响应SQL语句

SQL语句

  • DQL
  • DML
  • DDL
  • DCL

MySQL的层次结构

image.png

SQL 语句执行过程

只有了解SQL语句执行过程,才能知道如何优化SQL语句


image.png

MySQL的逻辑存储

库 
表
   表属性
   列/字段
       列属性
   数据行/记录

MySQL的物理存储

库: 文件系统上的目录
表: MyISAM: .frm 存储表结构 .MYD 存储表数据 .MYI 存储索引InnoDB: .frm 存储表结构 .ibd 存储表数据和表索引 ibdata1:数据库字典信息

MySQL InnoDB 的 段区页

MySQL默认给idb一次 64个连续的page,放数据,一个page放索引
page: 默认16kb,可以调整大小。但调整后区大小不变 16*64 变成 32*32
区:默认连续的64个page,即1M
段:一个或几个区,默认一个表为一个段

用户和权限

创建用户create user wordpress@'10.0.0.%' identified by '123';
修改用户密码:alter user wordpress@'10.0.0.%' identified by ‘123’;
删除用户: drop user wordpress@'10.0.0.%';
授权用户: grant 权限 on 库名.表名 to 用户名@'IP地址' identified by '123';
回收权限:revoke 权限 on 库名.表名 from 用户名@'IP地址'
查看权限: show grants for 用户名@'IP地址'

权限列表

ALL (……)
with grant option(给别人授权的权限,一般为本地管理员才会有,加在授权语句末尾

MySQL启动方式

  • 脚本启动
  • systemctl启动
  • mysqld_safe
  • mysqld
    其中mysqld_safe 可以加启动参数,用于维护型任务,而且命令行的优先级最高,但同时也会读取/etc/my.cnf

关闭数据库

  • 脚本关闭
  • systemctl 关闭
  • mysqladmin -uroot -p123 shutdown

初始化配置

初始化配置是mysql安装后初始化后,启动之前的配置

初始化配置作用

  • 影响数据库的启动,以及数据库的配置
  • 影响客户端功能

初始化配置的方法

  • 初始化配置文件(/etc/my.cnf)
  • 启动命令行进行设置(mysqld_safe,mysqld)
  • 预编译配置(仅限于编译安装)

初始化配置文件书写格式

[标签]
xxx=xxx
xxx=xxx
xxx=xxx
[标签]
xxx=xxx
xxx=xxx
xxx=xxx
---------------------------------------------------------------------------
# 服务端标签
[mysqld]
[mysqld_safe]
[server]    //包含上面两个
# 客户端标签
[mysql]
[mysqladmin]
[mysqldump]
[client]     //包含上面的标签
# 生产中建议使用集合小的标签,不要使用范围性标签[server][client]

MySQL 配置文件简易模板

[mysqld]
user=mysql
basedir=/application/mysql/
datadir=/data/mysql/data
port=3306
socket=/tmp/mysql.socket
[mysql]
socket=/tmp/mysql.socket

MySQL 配置文件依次读取顺序(了解)

/etc/my.cnf===>/etc/mysql/my.cnf===>/usr/local/mysql/my.cnf====>~/.my.cnf

myqld --defaults-file=xxx.cnf 强制使用配置文件

MySQL连接管理

  • TCP/IP
  • SOCKET
    当TCP/IP和SOCKET 同时使用连接数据库时,数据用TCP/IP连接
    show processlist 查看当前连接的线程 localhost 则为socket连接

多实例配置

相关文章

网友评论

    本文标题:mysql 体系结构与管理

    本文链接:https://www.haomeiwen.com/subject/yjmvkhtx.html