小黑的自留地

写点技术,也写点别的

这里是我的个人博客。主要写开发过程中真正踩过的坑,偶尔也写点和代码无关的。

换完手机,GitHub 把我挡在了门外

换完手机,验证器的备份没把数据带回来,验证码一条没剩,我被自己的 GitHub 挡在门外好几天。这篇讲清 2FA 的备份困境,以及我最后换上的开源方案 EasyAuth。

#2FA#安全#开源#工具

CentOS7 Firewalld 防火墙常用命令

firewalld 的日常操作速查:开关服务、放行端口、端口转发、ipset 黑名单、丢弃 ICMP、重载配置。

#CentOS#运维#防火墙

MySQL 批量修改表名列名大小写

用 information_schema 生成批量 rename table / change column 语句,把大写的表名列名一次性改成小写。

#MySQL#数据库

新装 Win7 后 Windows Update 报 80072EE2 / 80072EFE

老电脑重装 Win7 后装不上补丁,报这两个错误码。按顺序打两个补丁就能救回来。

#Windows#运维

用 Nacos 分配 Snowflake 的 Worker ID

借 Nacos 的服务实例列表动态算出 workerId 和 datacenterId,不用自己维护 zookeeper 或数据库。

#Nacos#Snowflake#分布式#Java

记一次 GitLab-CE 跨版本从 11 升级到 13 踩的坑

从 11 升到 13 的路上踩了三个坑:不能跨大版本、pg_dump 版本不匹配,以及系统没装英文语言包导致 rpm 安装脚本失败。

#GitLab#运维#CentOS

基于 Maven 中心库,通过 Jar 包生成 POM 的 dependency

把非 Maven 项目转成 Maven 时,得给一堆本地 jar 补 dependency。这个工具先用 jar 的 SHA1 去 Maven 中心库反查坐标,查不到再退回解析 Manifest。

#Maven#Java#工具

解决 Flutter 的 Android sdkmanager tool not found

重装系统后 flutter doctor 一直报 Android license status unknown,找不到 sdkmanager。根因是被废弃的 Android SDK Tools 没装。

#Flutter#Android

解决 CentOS yum 安装 pgadmin4 报 nothing provides python3-*** 的问题

CentOS 8 上装 pgadmin4 一直缺 python3-alembic 之类的包,但 python3 明明装了。原因是官方 rpm 仓库没提供这些包,得先装 EPEL。

#CentOS#PostgreSQL#运维

通过 Jar 包生成 Maven POM.xml 的 dependency

给非 Maven 项目的一堆本地 jar 生成 dependency。用 jar 的 SHA1 去 Nexus OSS 2 的 lucene 接口反查坐标,查不到再退回解析 Manifest。

#Maven#Java#工具

ORACLE 正负数分开排序 SQL

用 SIGN() 把正数和负数分成两组,再各自按绝对值升序或降序排。附 RANK() 版本。

#Oracle#SQL

CentOS7 下 Hadoop 2.7.3 + Spark 2.1.0 集群环境搭建

1 个 NameNode + 2 个 DataNode 的最小集群从零搭起:装 JDK/Scala、配 SSH 免密、改 Hadoop 和 Spark 的各个配置文件,到启动 dfs / yarn / jobhistory / spark。

#Hadoop#Spark#大数据#CentOS

Facebook 开源预测工具 Prophet 安装方法

Win 下装 Prophet 不能用 pip install fbprophet,得先装 VC++ 2015 Build Tools 和 pystan,再从源码装。附两个踩坑记录。

#Python#Prophet#环境配置