2018年七月笔记

09. July 2018 笔记 0

1.编译文件是出现bash: make: command not found。

原因:最小化安装linux没有预装编译环境。

方法:apt-get install build-essential

2.查看物理CPU个数

cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l

3.查看每个物理CPU中core的个数(即核数)

cat /proc/cpuinfo| grep "cpu cores"| uniq

4.查看逻辑CPU的个数

cat /proc/cpuinfo| grep "processor"| wc -l

5.查看CPU信息(型号)

cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c

6.PHP date 参数

各种参数详解:

  a - "am" 或是 "pm"

  A - "AM" 或是 "PM"

  d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31"

  D - 星期几,三个英文字母; 如: "Fri"

  F - 月份,英文全名; 如: "January"

  h - 12 小时制的小时; 如: "01" 至 "12"

  H - 24 小时制的小时; 如: "00" 至 "23"

  g - 12 小时制的小时,不足二位不补零; 如: "1" 至 12"

  G - 24 小时制的小时,不足二位不补零; 如: "0" 至 "23"

  i - 分钟; 如: "00" 至 "59"

  j - 几日,二位数字,若不足二位不补零; 如: "1" 至 "31"

  l - 星期几,英文全名; 如: "Friday"

  m - 月份,二位数字,若不足二位则在前面补零; 如: "01" 至 "12"

  n - 月份,二位数字,若不足二位则不补零; 如: "1" 至 "12"

  M - 月份,三个英文字母; 如: "Jan"

  s - 秒; 如: "00" 至 "59"

  S - 字尾加英文序数,二个英文字母; 如: "th","nd"

  t - 指定月份的天数; 如: "28" 至 "31"

  U - 总秒数

  w - 数字型的星期几,如: "0" (星期日) 至 "6" (星期六)

  Y - 年,四位数字; 如: "1999"

  y - 年,二位数字; 如: "99"

  z - 一年中的第几天; 如: "0" 至 "365"

7. Mysql创建组合索引的时候,范围查询后置,可使用in代替情况较少索引字段,可保证mysql尽可能多的使用索引。如 sex in (’m’,’f’)代替组合索引中的sex,防止在搜索条件中无sex的情况下依旧可尽可能多的使用索引查询。

避免多个范围查询,使用多个等值条件查询代替。

8.在很多数据中进行limit操作耗时,mysql需扫描废弃的数据,可使用延迟关联,通过使用覆盖索引查询返回需要的主键,在根据这些主键获得需要的行。

SELECT colleges.*,x.id FROM `colleges` INNER JOIN (SELECT id FROM colleges ORDER BY usnews_rank LIMIT 200,10)
as x USING(id);
在多个表关联查询的时候尤其有效。

9.索引的三星评价系统:1.尽可能选择合适的索引来避免单行查找。2.尽可能使用数据原生顺序从而避免额外的排序操作。3.尽可能使用覆盖索引查询。