Chen Blog

Mysql批量更新

看我如何将两小时的SQL语句优化到只需要2秒

我有一张订单表,订单表里面有百万条数据左右。 某一天,发现我们订单表里面缺失一些数据,需要补充这些数据上去。 补充的方法是,从Excel表格里面导入数据到数据库中。一导就是几万条的更新数据。 遇到这种需求,你会怎么做? 背景(创建一张订单表) 订单表,order_id不唯一 因为历史原因,除了ID唯一,其他都不唯一,所以没办法创建唯一索引。 CREATE TABLE `orde...

解析Mysql Binlog

如果你有一个mysql binlog文件,你要怎么才能看到它里面的内容啦? 这个文件是一个二进制文件,不可以直接用文本文件查看的,必须用一些解析工具可以看到里面的内容。 下面就演示如何使用mysqlbinlog工具查看日志内容。 下载mysqlbinlog工具 下载自己电脑版本和你得到的mysql binlog文件对应的版本号。 例如,我是Mac OS。 mysql是5.7的版本。...

Github Actions

github自动化部署 自动化脚本

我们经常写完代码,推送到代码仓库的时候,就希望它自动部署到线上。 其实github就能够支持这个功能。 这个有个专有名词叫CI/CD(持续集成/持续交付) 下面简单讲解一下github怎么做自动部署。 基本概念 workflow(工作流) 在项目的.github/workflows目录下的yml文件就是一个flow。 当你仓库下存在这个文件时,github就会自动解析,在你指定...

Brew国内源

一键安装脚本 /bin/bash -c "$(curl -fsSL https://gitee.com/ineo6/homebrew-install/raw/master/install.sh)" 切换源脚本 # 清华源 git -C "$(brew --repo)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn...

Fiddler手机抓包

抓取手机的所有HTTP数据包

如何使用工具抓取手机的所有的HTTP和HTTPS的数据包。 背景 作为后端开发,经常需要使用到调试工具。 但有时候,我们并不能直观的看到程序访问了什么接口,也更加不知道返回了什么数据。 所以,我们只能借助第三方工具,帮我们把所有的HTTP通讯包都抓下来,然后方便我们分析。 本文就简单讲解如何使用Fiddler抓取手机的数据包。 正文 1、下载工具 目前该工具只有免费版本的Wi...

Sublime-Text关闭所有窗口不提示保存

Sublime-Text关闭所有窗口不提示保存

在Sublime-Text中新建了很多窗口,都没有保存。 在关闭Sublime-Text时,它会挨个提示你保存文件。 因为太多没有保存的文件了。所以我不想它提示我,直接全部关闭就可以了。 背景 Sublime-Text是一款很好用的文本工具。 我有任何文本,我都会跑到Sublime-Text里面来进行编辑。 例如给字符串加序号啊。给字符串前后都加上一个双引号啊。多行操作非常方便。...

Postman脚本使用

Postman自动生成签名

Postman这个工具,我想大家应该并不陌生。 我们经常会使用它来调试我们的接口。 但是有时我们的接口是需要签名才可以访问的。 这篇文章就是教大家怎么在发出请求之前自动生成签名 下列文中{ {中间的空格应该删掉。因为文章框架原因才加了一个空格 步骤 1、使用环境变量 在Postman中,环境变量的写法为 { {variable}} 2、在请求前执行脚本赋值环境变量 /...

Mac永久新增虚拟IP

我想开开机启动的时候,给我的本地电脑新增一个虚拟IP地址 步骤 新增文件/Library/LaunchDaemons/org.my.ifconfig.plist (或许你需要sudo运行) <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIS...

GoLand破解

在本机的mac上面破解GoLand 2022.2. 按道理来说,全系列的jetbrains全家桶都可以适用。 步骤 下载GoLand https://www.jetbrains.com/go/download/other.html 在这里可以下载到历史的版本。这篇文章使用的是2022.2的版本。 下载ja-netfilter https://gitee.com/Z_Chen/j...

PHP调优之Profiling

本次使用的工具是Xdebug profiling & KCacheGrind 环境准备 这次演示我就使用我最熟悉的yii2来做演示了。 安装yii2 如果一切顺利的话,你不会遇到问题。 你也可以使用自己熟悉的框架或者项目。只要能启动就行 # composer安装yii2 composer create-project --prefer-dist yiisoft/yii...