DQL - 数据库查询操作

示例表格 s sno sname sex age createtime address did S01 陈宇乐 男 21 2022-02-02 00:00:00 浙江义乌 1 S02 陈紫樱 女 20 2022-02-10 00:00:00 1 S03 杜陈宇 男 21 NULL NULL 1 S04 陈宇乐 男 23 NULL NULL 2 S05 陈樱 女 21 NULL NULL 2 S06 杜佳佳 男 19 NULL NULL NULL d did dname 1 计算机系 2 土木工程系 3 英语系 一、 查询基础 1.1 select 操作 #查询所有学生信息 SELECT * FROM student #查询学生表中的学号与姓名 SELECT sno,sname FROM student #查询学生表中的学号与姓名,并且给一个字段别名 SELECT sno AS studentNO,sname AS '姓名' FROM student #查询学生表中的姓名信息,并过滤掉相同姓名信息 SELECT DISTINCT sname FROM student #查询学生个数,年龄总和,平均年龄,最大年龄,最小年龄,并给他们一个别名 SELECT COUNT(*) AS '学生个数' ,SUM(age) AS sumage FROM student 1.2 where 参考SQL ...

August 2, 2026 · 4 min · HybridBlog

AI 日志分析模块实现记录

项目中增加了 AI 运维辅助模块,通过 Python 调用 Kubernetes API 获取应用 Pod 日志,并结合阿里云百炼大模型进行日志分析,实现异常原因定位和处理建议生成,降低人工排障成本。(本项目中采用阿里云百炼) 一、部署OpenAI SDK 保持如下结构: Gitea │ ▼ Jenkins │ ▼ Kubernetes / \ k8s-node1 k8s-node2 \ / \ / API Server ▲ │ kubectl logs │ AI Log Assistant (devops 主机) │ ▼ 阿里云百炼 1.1 安装依赖 百炼现在推荐兼容 OpenAI SDK 的方式调用,这样以后切换模型也方便。 安装: pip3 install -U openai 如果没有 python3或者pip3可以参考上一篇文章《在CentOS 7.9.2009上安装部署 Python3.9》。 检查: python3 -c "import openai;print(openai.__version__)" 1.2 配置 API Key 不要把 Token 写死到代码里。 创建: ...

August 1, 2026 · 3 min · HybridBlog

在CentOS 7.9.2009上安装部署 Python3.9

CentOS 上自带的 Python 版本是2.7.5,过于老旧,而现在许多项目诸如 AIOps 需要新的Python3环境,所以我们需要手动部署 Python3.9 来避免各种版本不匹配的问题,现以下是手动安装部署Python3.9 的操作记录。 一、安装依赖 yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel 二、下载python3.9安装包 yum install wget -y wget https://www.python.org/ftp/python/3.9.0/Python-3.9.0.tgz 三、解压并安装 # 解压压缩包 tar -zxvf Python-3.9.0.tgz # 进入文件夹 cd Python-3.9.0 # 配置安装位置 ./configure prefix=/usr/local/python3 # 安装 make && make install 四、添加软连接 ln -s /usr/local/python3/bin/python3.9 /usr/bin/python3 ln -s /usr/local/python3/bin/pip3.9 /usr/bin/pip3 #检查是否添加成功 python3 --version pip3 --version

August 1, 2026 · 1 min · HybridBlog

Hugo发布文章脚本编写

在本项目中,因为Hugo以Docker的方式进行部署,所以想要发布文章在操作流程上可能有些繁琐复杂而不人性化,因此我们可以编写Shell脚本来将这个流程简化 一、 原本发布 Hugo 文章的完整流程 当前目录结构类似: /root/HybridBlog ├── Dockerfile ├── Jenkinsfile └── blog ├── content │ └── posts │ ├── devops-platform.md │ └── xxx.md ├── themes │ └── PaperMod ├── hugo.toml └── public 所以以后发布文章需要修改 Git 仓库里的 blog/content/posts。 1.1 创建新文章 进入项目目录: cd /root/HybridBlog 进入 blog: cd blog 使用 Harbor 里的 Hugo 镜像生成文章: docker run --rm \ -v $(pwd):/src \ -w /src \ 192.168.10.20/hybridblog/hugo:exts \ hugo new content posts/4_Harbor_registry_deployment.md 成功: Content "/src/content/posts/4_Harbor_registry_deployment.md" created 1.2 编辑文章 例如: ...

July 27, 2026 · 4 min · HybridBlog

Kubernetes回滚导致Git代码与线上版本不一致问题分析

在基于 Kubernetes 的 CI/CD 流程中,版本管理是非常重要的一环。 在实际搭建 HybridBlog 混合云 DevOps 平台过程中,我遇到了一个典型问题: Git仓库中的文章已经删除,但是通过 Kubernetes 版本回滚后,线上网站中的文章又重新出现。 这个问题表面看起来像是 Kubernetes 回滚异常,实际上属于 源码版本与运行环境版本不一致问题。 本文记录问题产生原因、排查过程以及解决方案。 一、项目CI/CD流程 当前博客系统采用以下发布流程: Gitea | | git push ↓ Jenkins | | docker build ↓ Harbor | | image push ↓ Kubernetes Deployment | ↓ Hugo静态博客 具体过程: 开发者修改 Hugo Markdown 文件 提交代码到 Gitea Gitea Webhook 触发 Jenkins Jenkins 拉取代码并构建 Docker 镜像 镜像上传到 Harbor Jenkins 使用 kubectl 更新 Kubernetes Deployment Pod 使用新镜像提供网站服务 正常情况下: Git代码 Docker镜像 Kubernetes运行版本 三者保持一致。 ...

July 27, 2026 · 2 min · HybridBlog