MySQL查看视图在创建时的SQL语句
最近因为要对一个用户表的每日用户增长量进行实时统计,因此使用了MySQL的视图功能。但创建视图后我发现需求有变,只需要输出每日超过30用户增长量的行,但却在『找视图背后的SQL语句』这里跌了跟头。本文将分享如何查看视图在创建时的SQL语句。
最近因为要对一个用户表的每日用户增长量进行实时统计,因此使用了MySQL的视图功能。但创建视图后我发现需求有变,只需要输出每日超过30用户增长量的行,但却在『找视图背后的SQL语句』这里跌了跟头。本文将分享如何查看视图在创建时的SQL语句。
在上一篇文章中,我们了解了索引的基本概念,也明白了索引存储着所有文件与对象的关联以及所有文件的基础信息。这篇文章我们来深入Git,从二进制的角度了解其索引结构。
在使用Git的过程中,经常会遇到需要直接在本地代码库进行编译、执行或配置文件修改的情况,但我们不希望这些配置被Git所记录,甚至被误上传到远端仓库。本文章即讲解如何在Git中忽略对本地特定已入库文件的修改。
监控在日常运维中非常重要,有助于提前发现问题,并及时进行系统优化。通常我们会使用第三方工具来对系统进行监控,但在个别场景下(例如Gravitational Teleport等工具所提供的动态label,可以自动执行Shell命令)使用Shell会更加灵活,只可惜相关资料太少,且大量谬误。本文将整理使用Shell Script输出CPU、内存、磁盘占用百分比的命令,方便读者查阅与使用。
在前一篇文章中,我简述了CentOS下安装旧版本软件的方法,该文章以
kubeadm
为例完成了安装,但不久后我发现该方法对Docker不奏效,需要额为的操作。因此我撰写这篇补充的文章,专门介绍如何安装旧版本Docker。
由于最近要做关于Kubernetes的一系列漏洞分析,需要安装大量旧版本的Kubernetes,通常安装旧版本软件的方法是直接找到旧版本源码,然后从源码进行构建,但该方案过于复杂,恰好测试环境是CentOS操作系统,那么能不能直接通过CentOS的包管理器yum来安装旧版本软件呢?方法其实很简单。
最近正在学习Kubernetes,但发现官方的文档仅限于配置单机集群(即Master和Node位于同一台机器上),依旧无法判断哪部分属于Master、哪部分属于Node,而互联网上的相关教程、资源大多还停留在1.3、1.7版本,与最新的版本存在大量差异,且内容不够详细。
在踩了无数坑,与Kubernetes激战了好几天后,我决定将1.14版本Kubernetes通过kubeadm的完整安装过程分享出来,希望对大家有所帮助。
在部署ThinkPHP业务时,我们经常需要将Web服务器根目录指向ThinkPHP源码的
public
目录,因为该目录内有ThinkPHP的启动脚本,即index.php
。但在某些情况下(虚拟主机或Docker甚至Kubernetes等环境下),我们无法直接修改配置文件来将根目录切换到public
。
但如果这个时候刚好使用Apache作为Web服务器,就可以利用其Rewrite配置来轻松解决这一问题。
在很多高校、组织、机构的网站里,我们经常会看到形如
http://example.com/~john/index.html
的URL,其中的~
符号异常显眼,但介于主流搜索引擎总是屏蔽特殊符号,且国内使用该URL规则的网站少之又少,想要搜索其源头异常困难。
最近需要将所在Team的一个静态资源库迁移到阿里云OSS,但在迁移过程中发现大量业务直接通过文件写入的方式向该静态资源库追加文件,这导致了静态资源库的迁移异常困难,而OSS的同步工具
ossutil
也不能做到实时同步。我灵机一动,想到使用Nginx的Fallback策略来变相完成无缝迁移,即在不影响业务的情况下,使用单点访问多地存储的文件。