存档

2018 年 03 月 - 3 文章

MySQL 慢查询优化

 

建立索引的五大原则 最左前缀匹配原则。 “=” 和 “in” 可以乱序。 尽量选择区分度高的列作为索引。 索引列不能参与计算。 尽量扩展索引,不要新建索引。 查询优化神器 - explain命令 慢查询优化基本步骤 先运行看看是否真的很慢,注意设置 SQL_NO_CACHE where条件单表查,锁定最小返回记录表。这句话的意思是把查询语句的where都应用到表中返回的记录数最小的表开始查起,单表每个字段分别查询,看哪个字段的区分度最高 explain查看执行计划,是否与1预期一致(从锁定记录较少的表开始查询) order by limit 形式的 sql 语句让排序的表优先查 了解业务方使用场景 加索引时参照建索引的几大原则 观察结果,不符合预期继续从0分析

More...

Linux 设置系统时间及同步网络时间

 

Linux 的时间分为 System Clock (系统时间)和 Real Time Clock (硬件时间,简称 RTC)。 系统时间:指当前 Linux Kernel 中的时间。 硬件时间:指主板上有电池供电的时间。 1. 查看系统时间bash # date # 例: ➜ ~ date # Output 2018年 3月 7日 星期三 12时01分15秒 CST 设置系统时间: # date --set "月/日/年 时:分:秒" # 例: ➜ ~ date --set "01/01/2049 00:00:00" # Output 2049年 1月 1日 星期五 00时00分00秒 CST 同步网络时间 除了手动设置系统时间外,也可与采用和网络时间进行同步的方式。下面介绍一下不同发行版本如何与时间服务器上的时间同步的方法 安装 nptdate 工具 CentOS $ sudo yum -y install ntp ntpdate Ubuntu $ sudo apt-get install ntp ntpdate 设....

More...

从多任务到专注思考:如何让生活化繁为简?

 

有步骤的分解任务 每天留出一段黄金时间,不受任何打扰,什么都不干——就算还有许多事情没做完,也不要急着开工,而是静下心来,安静地冥想。 在冥想的时候,我会按照这几个步骤思考: @复盘 我今天做了什么? 近段时间里,各个项目的进展如何?是否按照预想的方向前进? 在项目的执行中,遇到了什么问题,分别是由什么原因造成的?可以如何去规避? @策略 我接下去要做些什么 通过这些事情,我要达到什么目的 这个方向是最好的吗?有没有别的方向? @规划 我要如何达到第二步目标 如何把这个任务分解成小任务,分别在什么时候完成? 有哪些信息需要了解,我需要在什么时候确定这些信息? 具体操作 通常,这些问题很难一下子全部都得到答案。我会打开 Onenote,将想到的各个点记下来,画成层次图,不断修正、调整,整理自己的思维。 也许,思考的结果,会推翻昨天得到的某个结论。这个时候,就会重新打开昨天的笔记,进行审视和对比,然后将修改结果重新写下来。 最后,我会留下某几个问题,放到一则叫做「聚焦」的笔记里面——它们就是我经过分析之后,需要去思考和处理的最重要的问题。 这也就是我第二天工作和思考的重心。 简....

More...