MySQL 执行加载顺序MySQL 执行加载顺序 这篇文章算是 “水” 一下吧,本想以文字的方式展示出来的,发现以文字的方式写出来太乱了,刚好找到了几张截图,索性就直接截图了。截图也更加清晰明了。 MySQL 手写 sql 时的语句 MySQL 机读 s2021-07-30 MySQLMySQL MySQL 锁机制MySQL 锁机制锁的概念 从对数据操作的类型(读/写)来分 读锁(共享锁):针对同一份数据,多个读操作可以同时进行而不会互相影响。 写锁(排它锁):当前写操作没有完成前,它会阻断其他写锁和读锁。 锁相关命令 # 查看是否有表已经2021-07-29 MySQLMySQL 锁 MySQL 三范式MySQL 三范式第一范式(1NF):表中的每列的属性不可再分比如: 学号(主键) 姓名 性别 就读信息 20200101 张三 男 大一,土木工程 上表中可以看到,(就读信息)这一列,其实还可以分解成(年级)和(专业),2021-07-28 MySQLMySQL MySQL 主从复制MySQL 主从复制 主从复制原理 主从复制的基本原则 每个 slave 只有一个 master 每个 slave 只能有一个唯一的服务器 ID 每个 master 可以有多个 salve 一主一从常见配置 mysql 版本一致2021-07-27 MySQLMySQL 主从复制 开启 redis 远程连接开启 redis 远程连接 编辑 redis 配置文件 redis.conf # 如果需要开启连个访问连接时,一个是本地连接,一个是远程连接 bind 127.0.0.1 192.168.174.174 # 如果是希望任何一台主机都可2021-07-26 RedisRedis Cache 缓存 Redis 的持久化Redis 的持久化两种持久化方式 RDB 指定的时间间隔内保存数据快照 AOF 先把命令追加到操作日志的尾部,保存所有历史操作命令 RDB 模式 优点 适合用于进行备份 fork 出子进程进行备份,主进程没有任何 IO 操作 恢复大2021-07-25 RedisRedis Cache 缓存 Redis Cluster 集群解决方案Redis Cluster 集群解决方案 多个 Redis 实例协同进行 采用 slot (槽)分割数据,是 CRC16 与 16384 取模后分散 主从结构和选举算法,保证每个节点的可靠性 客户端可以连接任意一个 node 进行操作2021-07-24 RedisRedis Cache 分布式集群 使用 Memcached 实现分布式算法使用 Memcached 实现分布式算法分布式算法 余数计算分散法 根据 key 来计算 CRC,然后结果对服务器数进行取模得到 memcached 服务器节点。 服务器无法连接的时候,将尝试的连接次数加到 key 后面重新计算。 缺2021-07-23 CacheCache 缓存 Memcached memcached 简单使用memcached 简单使用Memcached 工作原理和内存管理 memcache 的回收机制会采用 最近最少算法 将很久没有使用的数据进行清除 Ubuntu 下安装 如果需要编译安装的话,需要先安装 libmemcached2021-07-22 CacheCache 缓存 Memcached 使用 Memcached 实现 Session 共享使用 Memcached 实现 Session 共享 应用场景 当有很多用户的时候,这些用户的登录位置在各个不同的服务器上,因为 session 是生成在服务器上的,当用户互访的时候,有的时候发现自己有权限,有时候发现自己没有权限。因为缓存2021-07-19 CacheCache 缓存 Memcached Session 文件缓存(模板缓存)文件缓存(模板缓存)从页面片段缓存到 facebook 的 BigPipe 技术 将页面划分成一个个小块 利用 ob_flush() 与 flush() 将缓冲区的内容提前输出给浏览器 浏览器在一个请求中不断接收并渲染到页面,逐个小块显示。2021-07-18 CacheCache 缓存 服务器应用程序程序缓存服务器应用程序程序缓存Web Server 服务器之 Apache Apache 的过期模块 mod_expires.so 通过配置文件控制 HTTP 的 “Expires:” 和 “Cache-Control:” 头内容 # 启用 e2021-07-17 CacheCache 缓存