一条SQL查询语句是如何执行的?
MySQL的主要组成 MySQL逻辑框架图 MySQL 可以分为 Server 层和存储引擎层两部分。 Server 层包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等。 存储引擎层负责数据的…
MyISAM InnoDB存储引擎
MyISAM InnoDB存储引擎 存储引擎结构 MyISAM InnoDB存储引擎是针对于表的存储引擎 MYISAN索引结构(索引文件和数据文件是分离的【非聚集性】):.frm文件->表结构,*.MYI文件->索引 、\.MYD文件->数据 非叶子结点读入RAM,折半查找,找到key所在的叶子结点,然后叶子结点的value就是数…
2022春招实习美团复盘
笔试 签到题:判断一个数是否是好数,使用if、else进行判断即可 数字是11的整数倍。 数字中至少包含两个1 给你若干数字,希望你回答这个数字是不是幸运数 例如:132是11的12倍,满足条件1,101有两个1,满足条件2 如果是幸运数,输出yes,不是,输出no。 乘积为正 有一个序列,序列中仅包含1和-1两种数字 有多少个连续的子序列,序列中…
C++资源管理:堆、栈、RAII
基础概念 C++中的内存管理概要说明 栈:由编译器管理分配和回收,存放局部变量和函数参数。 堆:由程序员管理,需要⼿动 new malloc delete free 进⾏分配和回收,空间较⼤,但可能会出现内存泄漏和空闲 碎⽚的情况。 全局/静态存储区:分为初始化和未初始化两个相邻区域,存储初始化和未初始化的全局变量和静态变量。 常量存储区:存储常量…
协程、线程、进程【ing】
引言:多进程和多线程的应用场景 多进程健壮性:nginx杀死进程后,会自动启动新进程。 通信效率较低 每个进程做的事情比较独立 资源隔离、安全 多线程:redis6.0,提高io的性能:主线程拿到fd后,让io处理线程做数据的存取,然后主线程操作key-value,再发送给客户端。 改用多进程(不同进程、虚拟内存都是独立的):不好。 适用场景: 多…
摩根士丹利笔试
今晚两道题,都差一点点就写好了,结果一道没A,复盘一下。 第一次写笔试,说实话有点紧张。40分钟两道题,时间有点紧,都是有思路会写的,结果第一题cpp的编译器gcc好像直接隐式转换了,第二题忘记除2了。 下次继续努力 给定target字符串,要让与target字符转等长的全零字符串翻转成target,求解最小翻转次数,其中翻转规则如下: 将给定位置…
MySQL技术内幕【ing】
第1章 MySQL体积结构和存储引擎 1.1 定义数据库和实例 MySQL被设计成一个单进程多线程的数据库,通过ps -ef | grep mysqld查看当前mysql进程
动态规划【ing】
509. 斐波那契数 递归 class Solution { public: int fib(int n) { if(n
Ubuntu开机自启动脚本【hycx-manager自启动】
Manager项目环境依赖开机自启动配置 背景 由于ppai项目需要fastdfs的依赖,nginx需要手动编译该模块,导致所有项目的nginx首先需要先启动nginx,所以单独写了一个脚本【附录中的manager项目启动nginx以及fastdfs】。 配置方法 sh脚本 使用vim书写,脚本内容见附录 双击运行可视化配置,在属性里配置启动方式E…
回溯
模板 void backtracking(参数) { if (终止条件) { 存放结果; return; } for (选择:本层集合中元素(树中节点孩子的数量就是集合的大小)) { 处理节点; backtracking(路径,选择列表); // 递归 回溯,撤销处理结果 } } 77. 组合 基本 class Solution { private…