1773673030
This commit is contained in:
+36
-36
@@ -1,5 +1,41 @@
|
|||||||
{
|
{
|
||||||
"recentFiles": [
|
"recentFiles": [
|
||||||
|
{
|
||||||
|
"basename": "tg-bot",
|
||||||
|
"path": "000-inbox/tg-bot.md"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basename": "Redis 安装",
|
||||||
|
"path": "000-inbox/Redis 安装.md"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basename": "杭州服务器-AI",
|
||||||
|
"path": "000-inbox/杭州服务器-AI.md"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basename": "常用命令",
|
||||||
|
"path": "resource/常用命令.md"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basename": "20260316213546",
|
||||||
|
"path": "000-Inbox/20260316213546.md"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basename": "IBS 智能体具体落实技术方案",
|
||||||
|
"path": "work/移动杭研/AI 项目/IBS 智能体具体落实技术方案.md"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basename": "20260316160264",
|
||||||
|
"path": "000-Inbox/20260316160264.md"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basename": "20260316102936",
|
||||||
|
"path": "000-Inbox/20260316102936.md"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"basename": "20260316105203",
|
||||||
|
"path": "000-Inbox/20260316105203.md"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"basename": "0316-配管任务限流问题",
|
"basename": "0316-配管任务限流问题",
|
||||||
"path": "work/移动杭研/问题处理/2026-03/0316-配管任务限流问题.md"
|
"path": "work/移动杭研/问题处理/2026-03/0316-配管任务限流问题.md"
|
||||||
@@ -68,10 +104,6 @@
|
|||||||
"basename": "ibs-ai 项目梳理",
|
"basename": "ibs-ai 项目梳理",
|
||||||
"path": "work/移动杭研/AI 项目/ibs-ai 项目梳理.md"
|
"path": "work/移动杭研/AI 项目/ibs-ai 项目梳理.md"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"basename": "IBS 智能体具体落实技术方案",
|
|
||||||
"path": "work/移动杭研/AI 项目/IBS 智能体具体落实技术方案.md"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"basename": "开发备注",
|
"basename": "开发备注",
|
||||||
"path": "work/移动杭研/AI 项目/开发备注.md"
|
"path": "work/移动杭研/AI 项目/开发备注.md"
|
||||||
@@ -124,10 +156,6 @@
|
|||||||
"basename": "开发笔记",
|
"basename": "开发笔记",
|
||||||
"path": "work/移动杭研/开发记录/7.19.0/开发笔记.md"
|
"path": "work/移动杭研/开发记录/7.19.0/开发笔记.md"
|
||||||
},
|
},
|
||||||
{
|
|
||||||
"basename": "常用命令",
|
|
||||||
"path": "resource/常用命令.md"
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
"basename": "20260312105716",
|
"basename": "20260312105716",
|
||||||
"path": "000-Inbox/20260312105716.md"
|
"path": "000-Inbox/20260312105716.md"
|
||||||
@@ -171,34 +199,6 @@
|
|||||||
{
|
{
|
||||||
"basename": "20260311083458",
|
"basename": "20260311083458",
|
||||||
"path": "000-Inbox/20260311083458.md"
|
"path": "000-Inbox/20260311083458.md"
|
||||||
},
|
|
||||||
{
|
|
||||||
"basename": "20260311084236",
|
|
||||||
"path": "000-Inbox/20260311084236.md"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"basename": "20260311090483",
|
|
||||||
"path": "000-Inbox/20260311090483.md"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"basename": "20260311100356",
|
|
||||||
"path": "000-Inbox/20260311100356.md"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"basename": "如何成为一个 React 工程师呢?",
|
|
||||||
"path": "resource/前端/如何成为一个 React 工程师呢?.md"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"basename": "20260310144341",
|
|
||||||
"path": "000-Inbox/20260310144341.md"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"basename": "20260310150987",
|
|
||||||
"path": "000-Inbox/20260310150987.md"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"basename": "20260310142396",
|
|
||||||
"path": "000-Inbox/20260310142396.md"
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"omittedPaths": [
|
"omittedPaths": [
|
||||||
|
|||||||
Vendored
+22
-28
@@ -4,22 +4,17 @@
|
|||||||
"type": "split",
|
"type": "split",
|
||||||
"children": [
|
"children": [
|
||||||
{
|
{
|
||||||
"id": "c4199d3ab7cd8c94",
|
"id": "b29f1eccf46b0980",
|
||||||
"type": "tabs",
|
"type": "tabs",
|
||||||
"children": [
|
"children": [
|
||||||
{
|
{
|
||||||
"id": "1ef6df6ffb644e27",
|
"id": "431eb252187a1635",
|
||||||
"type": "leaf",
|
"type": "leaf",
|
||||||
"state": {
|
"state": {
|
||||||
"type": "markdown",
|
"type": "empty",
|
||||||
"state": {
|
"state": {},
|
||||||
"file": "calendar/diary/2026-03-16.md",
|
|
||||||
"mode": "source",
|
|
||||||
"source": false,
|
|
||||||
"backlinks": false
|
|
||||||
},
|
|
||||||
"icon": "lucide-file",
|
"icon": "lucide-file",
|
||||||
"title": "2026-03-16"
|
"title": "新标签页"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -55,7 +50,7 @@
|
|||||||
"state": {
|
"state": {
|
||||||
"type": "search",
|
"type": "search",
|
||||||
"state": {
|
"state": {
|
||||||
"query": "话单下发",
|
"query": "培训",
|
||||||
"matchingCase": false,
|
"matchingCase": false,
|
||||||
"explainSearch": true,
|
"explainSearch": true,
|
||||||
"collapseAll": false,
|
"collapseAll": false,
|
||||||
@@ -97,7 +92,7 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"direction": "horizontal",
|
"direction": "horizontal",
|
||||||
"width": 259.5
|
"width": 222.5
|
||||||
},
|
},
|
||||||
"right": {
|
"right": {
|
||||||
"id": "ca733f6d5936ae40",
|
"id": "ca733f6d5936ae40",
|
||||||
@@ -114,13 +109,12 @@
|
|||||||
"state": {
|
"state": {
|
||||||
"type": "outline",
|
"type": "outline",
|
||||||
"state": {
|
"state": {
|
||||||
"file": "calendar/diary/2026-03-16.md",
|
|
||||||
"followCursor": true,
|
"followCursor": true,
|
||||||
"showSearch": false,
|
"showSearch": false,
|
||||||
"searchQuery": ""
|
"searchQuery": ""
|
||||||
},
|
},
|
||||||
"icon": "lucide-list",
|
"icon": "lucide-list",
|
||||||
"title": "2026-03-16 的大纲"
|
"title": "大纲"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -232,10 +226,22 @@
|
|||||||
"obsidian-excalidraw-plugin:New drawing": false
|
"obsidian-excalidraw-plugin:New drawing": false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"active": "1ef6df6ffb644e27",
|
"active": "c8718c0c63702202",
|
||||||
"lastOpenFiles": [
|
"lastOpenFiles": [
|
||||||
"calendar/diary/2026-03-13.md",
|
"calendar/diary/2026-03-17.md",
|
||||||
"calendar/diary/2026-03-16.md",
|
"calendar/diary/2026-03-16.md",
|
||||||
|
"000-inbox/tg-bot.md",
|
||||||
|
"000-inbox/Redis 安装.md",
|
||||||
|
"000-inbox/杭州服务器-AI.md",
|
||||||
|
"000-inbox/20260316213546.md",
|
||||||
|
"resource/常用命令.md",
|
||||||
|
"000-Inbox/20260316213546.md",
|
||||||
|
"work/移动杭研/AI 项目/IBS 智能体具体落实技术方案.md",
|
||||||
|
"000-Inbox/20260316160264.md",
|
||||||
|
"000-inbox/20260316105203.md",
|
||||||
|
"000-Inbox/20260316102936.md",
|
||||||
|
"000-Inbox/20260316105203.md",
|
||||||
|
"calendar/diary/2026-03-13.md",
|
||||||
"calendar/diary/2026-03-15.md",
|
"calendar/diary/2026-03-15.md",
|
||||||
"calendar/weeks/2026-W11.md",
|
"calendar/weeks/2026-W11.md",
|
||||||
"calendar/diary/2026-03-14.md",
|
"calendar/diary/2026-03-14.md",
|
||||||
@@ -249,20 +255,8 @@
|
|||||||
"000-Inbox/0316-配管任务限流问题.md",
|
"000-Inbox/0316-配管任务限流问题.md",
|
||||||
"work/移动杭研/问题处理/2025-11/1107-试用单删除问题.md",
|
"work/移动杭研/问题处理/2025-11/1107-试用单删除问题.md",
|
||||||
"000-Inbox/20260313151563.md",
|
"000-Inbox/20260313151563.md",
|
||||||
"resource/ai/prompts/cosmic/Prompt 02 COSMIC 功能过程.md",
|
|
||||||
"resource/ai/prompts/cosmic/Prompt 03 COSMIC 子过程.md",
|
|
||||||
"resource/ai/prompts/cosmic/Prompt 01 COSMIC 需求扩写.md",
|
|
||||||
"resource/ai/prompts/cosmic/Prompt 06 COSMIC 锐评.md",
|
|
||||||
"resource/ai/prompts/cosmic/Prompt 05 COSMIC 时序图.md",
|
|
||||||
"resource/ai/prompts/cosmic/Prompt 04 COSMIC PRD 文档.md",
|
|
||||||
"resource/ai/prompts/cosmic/Prompt 00 COSMIC v1.md",
|
|
||||||
"resource/ai/prompts/cosmic 业务版本/BUSI_REQUIREMENT_COSMIC.md",
|
|
||||||
"resource/ai/prompts/cosmic 业务版本/BUSI_REQUIREMENT_FLOWCHART.md",
|
|
||||||
"resource/ai/prompts/cosmic 业务版本",
|
"resource/ai/prompts/cosmic 业务版本",
|
||||||
"resource/ai/prompts/Prompt 高级彩虹屁.md",
|
|
||||||
"resource/ai/prompts/cosmic",
|
"resource/ai/prompts/cosmic",
|
||||||
"resource/ai/prompts/Prompt 考勤数据规整助手 小杨.md",
|
|
||||||
"work/移动杭研/AI 项目/RAG Flow.md",
|
|
||||||
"resource/ai/prompts/临时",
|
"resource/ai/prompts/临时",
|
||||||
"resource/工具/rime",
|
"resource/工具/rime",
|
||||||
"attachment/images-paste/image-20260304153545122.png",
|
"attachment/images-paste/image-20260304153545122.png",
|
||||||
|
|||||||
@@ -0,0 +1,824 @@
|
|||||||
|
下面给你一份**适用于 Anolis OS 8.6 / x86_64 / 源码包 redis-8.6.1.tar.gz** 的**标准安装文档**,包含:
|
||||||
|
|
||||||
|
- 安装编译依赖
|
||||||
|
- 源码编译安装
|
||||||
|
- 创建专用运行用户
|
||||||
|
- 配置目录与日志目录
|
||||||
|
- 设置 Redis 密码
|
||||||
|
- 配置 systemd 开机自启
|
||||||
|
- 启动、验证、常用维护命令
|
||||||
|
|
||||||
|
我按**生产环境标准化安装方式**写,你可以直接照着执行。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Redis 8.6.1 标准安装文档
|
||||||
|
|
||||||
|
适用系统:**Anolis OS 8.6 x86_64**
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 1. 安装规划
|
||||||
|
|
||||||
|
本安装文档采用如下标准目录:
|
||||||
|
|
||||||
|
| 项目 | 路径 |
|
||||||
|
| ---------- | ------------------------ |
|
||||||
|
| 安装包目录 | `/usr/local/src` |
|
||||||
|
| Redis 安装目录 | `/usr/local/redis-8.6.1` |
|
||||||
|
| 软链接 | `/usr/local/redis` |
|
||||||
|
| 配置目录 | `/etc/redis` |
|
||||||
|
| 数据目录 | `/data/redis` |
|
||||||
|
| 日志目录 | `/var/log/redis` |
|
||||||
|
| 运行用户 | `redis` |
|
||||||
|
| 服务名 | `redis` |
|
||||||
|
| 监听端口 | `6379` |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 2. 前置准备
|
||||||
|
|
||||||
|
## 2.1 切换 root 用户
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo -i
|
||||||
|
```
|
||||||
|
|
||||||
|
## 2.2 关闭或放通防火墙端口(如有需要)
|
||||||
|
|
||||||
|
如果 Redis 仅本机访问,可以不开放 6379。
|
||||||
|
|
||||||
|
若需要远程访问:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
firewall-cmd --permanent --add-port=6379/tcp
|
||||||
|
firewall-cmd --reload
|
||||||
|
```
|
||||||
|
|
||||||
|
查看:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
firewall-cmd --list-ports
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 3. 安装编译依赖
|
||||||
|
|
||||||
|
Anolis OS 8.6 与 RHEL/CentOS 8 系兼容,可使用 `dnf`。
|
||||||
|
|
||||||
|
```bash
|
||||||
|
dnf -y install gcc gcc-c++ make tar wget perl systemd-devel
|
||||||
|
```
|
||||||
|
|
||||||
|
建议再安装常用工具:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
dnf -y install vim net-tools lsof
|
||||||
|
```
|
||||||
|
|
||||||
|
验证 gcc:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
gcc --version
|
||||||
|
make --version
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 4. 上传并解压安装包
|
||||||
|
|
||||||
|
假设你已经将 `redis-8.6.1.tar.gz` 上传到 `/usr/local/src/`
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /usr/local/src
|
||||||
|
ls -lh redis-8.6.1.tar.gz
|
||||||
|
```
|
||||||
|
|
||||||
|
解压:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
tar -xzf redis-8.6.1.tar.gz
|
||||||
|
cd redis-8.6.1
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 5. 编译 Redis
|
||||||
|
|
||||||
|
执行编译:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
make -j$(nproc)
|
||||||
|
```
|
||||||
|
|
||||||
|
安装到指定目录:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
make PREFIX=/usr/local/redis-8.6.1 install
|
||||||
|
```
|
||||||
|
|
||||||
|
创建软链接:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ln -sfn /usr/local/redis-8.6.1 /usr/local/redis
|
||||||
|
```
|
||||||
|
|
||||||
|
验证:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
/usr/local/redis/bin/redis-server -v
|
||||||
|
/usr/local/redis/bin/redis-cli -v
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 6. 创建运行用户和目录
|
||||||
|
|
||||||
|
## 6.1 创建 redis 用户
|
||||||
|
|
||||||
|
```bash
|
||||||
|
id redis >/dev/null 2>&1 || useradd -r -s /sbin/nologin redis
|
||||||
|
```
|
||||||
|
|
||||||
|
## 6.2 创建配置、数据、日志目录
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mkdir -p /etc/redis
|
||||||
|
mkdir -p /data/redis
|
||||||
|
mkdir -p /var/log/redis
|
||||||
|
```
|
||||||
|
|
||||||
|
## 6.3 设置权限
|
||||||
|
|
||||||
|
```bash
|
||||||
|
chown -R redis:redis /data/redis
|
||||||
|
chown -R redis:redis /var/log/redis
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 7. 生成 Redis 配置文件
|
||||||
|
|
||||||
|
从源码目录复制默认配置:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cp /usr/local/src/redis-8.6.1/redis.conf /etc/redis/redis.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
备份一份:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cp /etc/redis/redis.conf /etc/redis/redis.conf.bak
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 8. 修改 Redis 配置
|
||||||
|
|
||||||
|
编辑配置文件:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
vim /etc/redis/redis.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
建议修改为以下关键项。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 8.1 基础配置
|
||||||
|
|
||||||
|
找到并修改:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
bind 0.0.0.0
|
||||||
|
protected-mode yes
|
||||||
|
port 6379
|
||||||
|
tcp-backlog 511
|
||||||
|
timeout 0
|
||||||
|
tcp-keepalive 300
|
||||||
|
daemonize no
|
||||||
|
supervised systemd
|
||||||
|
pidfile /var/run/redis_6379.pid
|
||||||
|
loglevel notice
|
||||||
|
logfile /var/log/redis/redis.log
|
||||||
|
databases 16
|
||||||
|
```
|
||||||
|
|
||||||
|
说明:
|
||||||
|
|
||||||
|
- `bind 0.0.0.0`:允许所有地址访问
|
||||||
|
如果你只允许本机访问,建议改成:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
bind 127.0.0.1
|
||||||
|
```
|
||||||
|
|
||||||
|
- `protected-mode yes`:建议保持开启
|
||||||
|
- `daemonize no`:使用 systemd 启动时必须为 `no`
|
||||||
|
- `supervised systemd`:推荐 systemd 管理
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 8.2 数据目录配置
|
||||||
|
|
||||||
|
修改:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
dir /data/redis
|
||||||
|
dbfilename dump.rdb
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 8.3 设置密码
|
||||||
|
|
||||||
|
### 方法一:兼容常见方式,使用 `requirepass`
|
||||||
|
|
||||||
|
在配置文件中加入或修改:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
requirepass 5sTb7fHFbsYl6KmI6pvC^XMw!7Y^Pbc1
|
||||||
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
/usr/local/redis/bin/redis-cli -a '5sTb7fHFbsYl6KmI6pvC^XMw!7Y^Pbc1' MODULE LIST
|
||||||
|
/usr/local/redis/bin/redis-cli -a '5sTb7fHFbsYl6KmI6pvC^XMw!7Y^Pbc1' FT._LIST
|
||||||
|
/usr/local/redis/bin/redis-cli -a '5sTb7fHFbsYl6KmI6pvC^XMw!7Y^Pbc1' INFO server
|
||||||
|
|
||||||
|
AUTH 5sTb7fHFbsYl6KmI6pvC^XMw!7Y^Pbc1
|
||||||
|
```
|
||||||
|
|
||||||
|
例如:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
requirepass Redis@2025#Strong
|
||||||
|
```
|
||||||
|
|
||||||
|
> 这是你最关心的“设置密码”方式,客户端连接时必须认证。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 8.4 建议配置 master 默认认证密码
|
||||||
|
|
||||||
|
有些版本推荐 ACL 方式,生产上也可以同时设置默认用户密码:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
aclfile /etc/redis/users.acl
|
||||||
|
```
|
||||||
|
|
||||||
|
然后创建 ACL 文件:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cat >/etc/redis/users.acl <<'EOF'
|
||||||
|
user default on >Redis@2025#Strong ~* &* +@all
|
||||||
|
EOF
|
||||||
|
```
|
||||||
|
|
||||||
|
设置权限:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
chown redis:redis /etc/redis/users.acl
|
||||||
|
chmod 640 /etc/redis/users.acl
|
||||||
|
```
|
||||||
|
|
||||||
|
> 如果你使用了 ACL 文件,推荐**不要同时混乱使用多套密码策略**。
|
||||||
|
> 对于标准简单部署:
|
||||||
|
> - **只用 `requirepass`** 就够了
|
||||||
|
> - 如果你明确要 ACL 管理,就用 `aclfile`
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 8.5 持久化建议
|
||||||
|
|
||||||
|
### RDB 快照
|
||||||
|
|
||||||
|
建议保留:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
save 900 1
|
||||||
|
save 300 10
|
||||||
|
save 60 10000
|
||||||
|
```
|
||||||
|
|
||||||
|
### AOF
|
||||||
|
|
||||||
|
建议开启:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
appendonly yes
|
||||||
|
appendfilename "appendonly.aof"
|
||||||
|
appendfsync everysec
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 8.6 内存策略建议
|
||||||
|
|
||||||
|
根据你的机器规格(8 vCPU,通常中小型实例),如果 Redis 不是独占整机,建议先限制最大内存。
|
||||||
|
|
||||||
|
例如:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
maxmemory 2gb
|
||||||
|
maxmemory-policy allkeys-lru
|
||||||
|
```
|
||||||
|
|
||||||
|
> 如果这台机器专门跑 Redis,可按实际内存再调整。
|
||||||
|
> 你没有提供内存大小,所以文档里给一个稳妥示例值。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 9. 配置文件示例(可直接替换)
|
||||||
|
|
||||||
|
下面是一份可直接使用的 `/etc/redis/redis.conf` 核心示例:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
bind 0.0.0.0
|
||||||
|
protected-mode yes
|
||||||
|
port 6379
|
||||||
|
tcp-backlog 511
|
||||||
|
timeout 0
|
||||||
|
tcp-keepalive 300
|
||||||
|
|
||||||
|
daemonize no
|
||||||
|
supervised systemd
|
||||||
|
pidfile /var/run/redis_6379.pid
|
||||||
|
|
||||||
|
loglevel notice
|
||||||
|
logfile /var/log/redis/redis.log
|
||||||
|
|
||||||
|
databases 16
|
||||||
|
|
||||||
|
dir /data/redis
|
||||||
|
dbfilename dump.rdb
|
||||||
|
|
||||||
|
save 900 1
|
||||||
|
save 300 10
|
||||||
|
save 60 10000
|
||||||
|
|
||||||
|
appendonly yes
|
||||||
|
appendfilename "appendonly.aof"
|
||||||
|
appendfsync everysec
|
||||||
|
|
||||||
|
requirepass Redis@2025#Strong
|
||||||
|
|
||||||
|
maxmemory 2gb
|
||||||
|
maxmemory-policy allkeys-lru
|
||||||
|
```
|
||||||
|
|
||||||
|
> 请把密码 `Redis@2025#Strong` 改成你自己的强密码。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 10. 配置 systemd 服务
|
||||||
|
|
||||||
|
创建 systemd 服务文件:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cat >/etc/systemd/system/redis.service <<'EOF'
|
||||||
|
[Unit]
|
||||||
|
Description=Redis In-Memory Data Store
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
User=redis
|
||||||
|
Group=redis
|
||||||
|
ExecStart=/usr/local/redis/bin/redis-server /etc/redis/redis.conf
|
||||||
|
ExecStop=/usr/local/redis/bin/redis-cli -a '5sTb7fHFbsYl6KmI6pvC^XMw!7Y^Pbc1' shutdown
|
||||||
|
Type=notify
|
||||||
|
TimeoutStopSec=30
|
||||||
|
Restart=always
|
||||||
|
LimitNOFILE=65535
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
EOF
|
||||||
|
```
|
||||||
|
|
||||||
|
> 注意:这里 `ExecStop` 中的密码要和 `redis.conf` 的 `requirepass` 一致。
|
||||||
|
> 如果你修改了密码,这里也要同步修改。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 11. 系统内核参数优化
|
||||||
|
|
||||||
|
生产环境建议设置 `vm.overcommit_memory`。
|
||||||
|
|
||||||
|
临时生效:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sysctl vm.overcommit_memory=1
|
||||||
|
```
|
||||||
|
|
||||||
|
永久生效:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
echo 'vm.overcommit_memory = 1' >/etc/sysctl.d/99-redis.conf
|
||||||
|
sysctl --system
|
||||||
|
```
|
||||||
|
|
||||||
|
关闭透明大页(建议):
|
||||||
|
|
||||||
|
临时关闭:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
echo never > /sys/kernel/mm/transparent_hugepage/enabled
|
||||||
|
echo never > /sys/kernel/mm/transparent_hugepage/defrag
|
||||||
|
```
|
||||||
|
|
||||||
|
如需开机自动关闭,可写入 rc.local 或 systemd 脚本。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 12. 启动 Redis
|
||||||
|
|
||||||
|
重新加载 systemd:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
systemctl daemon-reload
|
||||||
|
```
|
||||||
|
|
||||||
|
设置开机自启:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
systemctl enable redis
|
||||||
|
```
|
||||||
|
|
||||||
|
启动服务:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
systemctl start redis
|
||||||
|
```
|
||||||
|
|
||||||
|
查看状态:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
systemctl status redis --no-pager -l
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 13. 验证安装和密码
|
||||||
|
|
||||||
|
## 13.1 查看监听端口
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ss -lntp | grep 6379
|
||||||
|
```
|
||||||
|
|
||||||
|
## 13.2 本地连接测试
|
||||||
|
|
||||||
|
```bash
|
||||||
|
/usr/local/redis/bin/redis-cli
|
||||||
|
```
|
||||||
|
|
||||||
|
执行:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ping
|
||||||
|
```
|
||||||
|
|
||||||
|
如果设置了密码,会返回:
|
||||||
|
|
||||||
|
```text
|
||||||
|
(error) NOAUTH Authentication required.
|
||||||
|
```
|
||||||
|
|
||||||
|
认证:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
auth Redis@2025#Strong
|
||||||
|
```
|
||||||
|
|
||||||
|
再执行:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ping
|
||||||
|
```
|
||||||
|
|
||||||
|
返回:
|
||||||
|
|
||||||
|
```text
|
||||||
|
PONG
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 13.3 一条命令带密码连接
|
||||||
|
|
||||||
|
```bash
|
||||||
|
/usr/local/redis/bin/redis-cli -a 'Redis@2025#Strong'
|
||||||
|
```
|
||||||
|
|
||||||
|
测试:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
set test hello
|
||||||
|
get test
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 14. 设置环境变量(可选)
|
||||||
|
|
||||||
|
为了直接使用 `redis-cli`、`redis-server` 命令:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cat >/etc/profile.d/redis.sh <<'EOF'
|
||||||
|
export PATH=/usr/local/redis/bin:$PATH
|
||||||
|
EOF
|
||||||
|
source /etc/profile.d/redis.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
验证:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
redis-cli -v
|
||||||
|
redis-server -v
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 15. 常用运维命令
|
||||||
|
|
||||||
|
## 启动
|
||||||
|
|
||||||
|
```bash
|
||||||
|
systemctl start redis
|
||||||
|
```
|
||||||
|
|
||||||
|
## 停止
|
||||||
|
|
||||||
|
```bash
|
||||||
|
systemctl stop redis
|
||||||
|
```
|
||||||
|
|
||||||
|
## 重启
|
||||||
|
|
||||||
|
```bash
|
||||||
|
systemctl restart redis
|
||||||
|
```
|
||||||
|
|
||||||
|
## 查看状态
|
||||||
|
|
||||||
|
```bash
|
||||||
|
systemctl status redis
|
||||||
|
```
|
||||||
|
|
||||||
|
## 查看日志
|
||||||
|
|
||||||
|
```bash
|
||||||
|
tail -f /var/log/redis/redis.log
|
||||||
|
```
|
||||||
|
|
||||||
|
## 登录 Redis
|
||||||
|
|
||||||
|
```bash
|
||||||
|
redis-cli -a 'Redis@2025#Strong'
|
||||||
|
```
|
||||||
|
|
||||||
|
## 查看配置
|
||||||
|
|
||||||
|
```bash
|
||||||
|
redis-cli -a 'Redis@2025#Strong' CONFIG GET requirepass
|
||||||
|
redis-cli -a 'Redis@2025#Strong' INFO
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 16. 修改 Redis 密码的方法
|
||||||
|
|
||||||
|
如果后续要改密码,有两种方式。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 方法一:修改配置文件后重启
|
||||||
|
|
||||||
|
编辑:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
vim /etc/redis/redis.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
修改:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
requirepass NewStrongPassword@456
|
||||||
|
```
|
||||||
|
|
||||||
|
然后同步修改 systemd 文件里的 `ExecStop` 密码:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
vim /etc/systemd/system/redis.service
|
||||||
|
```
|
||||||
|
|
||||||
|
修改:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
ExecStop=/usr/local/redis/bin/redis-cli -a 'NewStrongPassword@456' shutdown
|
||||||
|
```
|
||||||
|
|
||||||
|
重载并重启:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
systemctl daemon-reload
|
||||||
|
systemctl restart redis
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 方法二:运行时修改(临时 + 持久化)
|
||||||
|
|
||||||
|
先认证登录:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
redis-cli -a '旧密码'
|
||||||
|
```
|
||||||
|
|
||||||
|
执行:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
CONFIG SET requirepass NewStrongPassword@456
|
||||||
|
CONFIG REWRITE
|
||||||
|
```
|
||||||
|
|
||||||
|
> 如果你用了 ACL,密码修改方式会不同。
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 17. 卸载方法
|
||||||
|
|
||||||
|
停止服务:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
systemctl stop redis
|
||||||
|
systemctl disable redis
|
||||||
|
```
|
||||||
|
|
||||||
|
删除服务文件:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
rm -f /etc/systemd/system/redis.service
|
||||||
|
systemctl daemon-reload
|
||||||
|
```
|
||||||
|
|
||||||
|
删除安装目录:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
rm -rf /usr/local/redis-8.6.1
|
||||||
|
rm -f /usr/local/redis
|
||||||
|
```
|
||||||
|
|
||||||
|
删除配置和数据(谨慎):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
rm -rf /etc/redis
|
||||||
|
rm -rf /data/redis
|
||||||
|
rm -rf /var/log/redis
|
||||||
|
```
|
||||||
|
|
||||||
|
删除用户:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
userdel redis
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 18. 推荐的密码规范
|
||||||
|
|
||||||
|
建议 Redis 密码满足:
|
||||||
|
|
||||||
|
- 长度不少于 16 位
|
||||||
|
- 包含:
|
||||||
|
- 大写字母
|
||||||
|
- 小写字母
|
||||||
|
- 数字
|
||||||
|
- 特殊字符
|
||||||
|
- 不使用弱密码,如:
|
||||||
|
- `123456`
|
||||||
|
- `redis123`
|
||||||
|
- `admin@123`
|
||||||
|
|
||||||
|
示例强密码:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Rds@8.6.1_2025#X9pL
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# 19. 最简安装命令汇总版
|
||||||
|
|
||||||
|
如果你想快速执行,下面是精简版流程。
|
||||||
|
|
||||||
|
## 19.1 安装依赖
|
||||||
|
|
||||||
|
```bash
|
||||||
|
dnf -y install gcc gcc-c++ make tar wget perl vim net-tools lsof
|
||||||
|
```
|
||||||
|
|
||||||
|
## 19.2 编译安装
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /usr/local/src
|
||||||
|
tar -xzf redis-8.6.1.tar.gz
|
||||||
|
cd redis-8.6.1
|
||||||
|
make -j$(nproc)
|
||||||
|
make PREFIX=/usr/local/redis-8.6.1 install
|
||||||
|
ln -sfn /usr/local/redis-8.6.1 /usr/local/redis
|
||||||
|
```
|
||||||
|
|
||||||
|
## 19.3 创建用户和目录
|
||||||
|
|
||||||
|
```bash
|
||||||
|
useradd -r -s /sbin/nologin redis
|
||||||
|
mkdir -p /etc/redis /data/redis /var/log/redis
|
||||||
|
chown -R redis:redis /data/redis /var/log/redis
|
||||||
|
cp /usr/local/src/redis-8.6.1/redis.conf /etc/redis/redis.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
## 19.4 修改配置
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cat >/etc/redis/redis.conf <<'EOF'
|
||||||
|
bind 0.0.0.0
|
||||||
|
protected-mode yes
|
||||||
|
port 6379
|
||||||
|
tcp-backlog 511
|
||||||
|
timeout 0
|
||||||
|
tcp-keepalive 300
|
||||||
|
daemonize no
|
||||||
|
supervised systemd
|
||||||
|
pidfile /var/run/redis_6379.pid
|
||||||
|
loglevel notice
|
||||||
|
logfile /var/log/redis/redis.log
|
||||||
|
databases 16
|
||||||
|
dir /data/redis
|
||||||
|
dbfilename dump.rdb
|
||||||
|
save 900 1
|
||||||
|
save 300 10
|
||||||
|
save 60 10000
|
||||||
|
appendonly yes
|
||||||
|
appendfilename "appendonly.aof"
|
||||||
|
appendfsync everysec
|
||||||
|
requirepass Rds@8.6.1_2025#X9pL
|
||||||
|
maxmemory 2gb
|
||||||
|
maxmemory-policy allkeys-lru
|
||||||
|
EOF
|
||||||
|
```
|
||||||
|
|
||||||
|
## 19.5 systemd
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cat >/etc/systemd/system/redis.service <<'EOF'
|
||||||
|
[Unit]
|
||||||
|
Description=Redis In-Memory Data Store
|
||||||
|
After=network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
User=redis
|
||||||
|
Group=redis
|
||||||
|
ExecStart=/usr/local/redis/bin/redis-server /etc/redis/redis.conf
|
||||||
|
ExecStop=/usr/local/redis/bin/redis-cli -a 'Rds@8.6.1_2025#X9pL' shutdown
|
||||||
|
Type=notify
|
||||||
|
Restart=always
|
||||||
|
LimitNOFILE=65535
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
EOF
|
||||||
|
```
|
||||||
|
|
||||||
|
## 19.6 启动
|
||||||
|
|
||||||
|
```bash
|
||||||
|
echo 'vm.overcommit_memory = 1' >/etc/sysctl.d/99-redis.conf
|
||||||
|
sysctl --system
|
||||||
|
systemctl daemon-reload
|
||||||
|
systemctl enable redis
|
||||||
|
systemctl start redis
|
||||||
|
systemctl status redis --no-pager -l
|
||||||
|
```
|
||||||
|
|
||||||
|
## 19.7 测试
|
||||||
|
|
||||||
|
```bash
|
||||||
|
/usr/local/redis/bin/redis-cli -a 'Rds@8.6.1_2025#X9pL' ping
|
||||||
|
```
|
||||||
|
|
||||||
|
返回:
|
||||||
|
|
||||||
|
```text
|
||||||
|
PONG
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
如果你愿意,我还可以继续给你补两份内容之一:
|
||||||
|
|
||||||
|
1. **一份可直接执行的自动化安装脚本 install_redis_8.6.1.sh**
|
||||||
|
2. **一份更严格的生产环境配置版(限制 IP、ACL 用户、systemd 安全加固、日志轮转)**
|
||||||
|
|
||||||
|
如果你要,我可以直接继续输出。
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
```
|
||||||
|
测试云主机信息 172.21.30.23 用户名:root 密码:Melo@3023
|
||||||
|
测试mysql: 172.21.33.224 用户名:cosmic_ai 密码:Cosmic@3306
|
||||||
|
测试redis: 172.21.43.68:6379 密码:chRdw@redis
|
||||||
|
|
||||||
|
1.DeepSeek-671B http://36.137.208.165:5020/v1/chat/completions
|
||||||
|
2.Qwen3-8B http://172.21.9.104:31554/v1/chat/completions
|
||||||
|
|
||||||
|
redis-cli -h 127.0.0.1 -p 6379 -a '5sTb7fHFbsYl6KmI6pvC^XMw!7Y^Pbc1'
|
||||||
|
```
|
||||||
|
|
||||||
|
| 项目 | 配置 |
|
||||||
|
| --- | ------------------ |
|
||||||
|
| 系统 | Anolis OS 8.6 |
|
||||||
|
| 内核 | 4.18 |
|
||||||
|
| CPU | Intel Xeon Skylake |
|
||||||
|
| 核心 | **8 vCPU** |
|
||||||
|
| 主频 | 2.2 GHz |
|
||||||
|
| 虚拟化 | KVM |
|
||||||
|
| 架构 | x86_64 |
|
||||||
@@ -1,8 +1,59 @@
|
|||||||
# 任务
|
# 任务
|
||||||
|
|
||||||
- [ ] 开发:参加 IBS 项目晨会,同步昨日问题跟进事项。(李春良 0.5)
|
- [x] 开发:参加 IBS 项目晨会,同步昨日问题跟进事项。(李春良 0.5)
|
||||||
- [ ] 开发:开发 IBS V7.19.0 需求。(新业务平面引入与系统集成实施 50% 李春良 7)
|
- [x] 开发:开发 IBS V7.19.0 需求。(新业务平面引入与系统集成实施 50% 李春良 5)
|
||||||
|
- [x] 项目:cosmic ai 部署。(张鹏豪 3)
|
||||||
|
|
||||||
# 日志
|
# 日志
|
||||||
|
|
||||||
|
咪咕视讯
|
||||||
|
|
||||||
|
中移互联网公司
|
||||||
|
|
||||||
|
中移(杭州)信息技术有限公司
|
||||||
|
|
||||||
|
中移在线服务公司
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
前端可以访问了。
|
||||||
|
|
||||||
|
问题 1:无权限创建 MySQL 表。
|
||||||
|
|
||||||
|
```
|
||||||
|
[2026-03-16 11:38:19] [42000][1142] CREATE command denied to user 'cosmic_ai'@'172.21.9.19' for table 'ai_provider'
|
||||||
|
```
|
||||||
|
|
||||||
|
问题 2:项目无法启动 Redis 无 RediSearch 模块。Redis 8.0+ 内置集成 Redis Stack。Redis 7.x 前 RediSearch 需单独安装模块。目前提供的是 5.0.10。
|
||||||
|
|
||||||
|
问题 3:是否有嵌入模型。
|
||||||
|
|
||||||
|
OpenResty:`/apprun/openresty/nginx/conf/conf.d/excalicode-ai.conf`
|
||||||
|
|
||||||
|
openjdk-25.0.2:`/opt/java/jdk-25.0.2`
|
||||||
|
|
||||||
|
前端:`/var/www/excalicode-ai`
|
||||||
|
|
||||||
|
后端:`/opt/excalicode-ai`
|
||||||
|
|
||||||
|
配置信息:`/etc/excalicode-ai/excalicode-ai.env`
|
||||||
|
|
||||||
# 总结
|
# 总结
|
||||||
|
|
||||||
|
今天到公司之后,和小杨讨论了一些关于工作上的问题,关于是否可以下个月直接离职。其实自己还是有一些冲动的,应该多考虑一下,先看好市场,做一些充分的准备,至少去尝试过之后再去准备离职的相关事情。
|
||||||
|
|
||||||
|
上午的工作内容主要是:
|
||||||
|
|
||||||
|
1. 给杭州的 Cosmic AI 工具进行部署。
|
||||||
|
2. 在安装 Redis 的过程中,我发现如果通过普通编译,我所需要的向量数据库 RedisSearch 功能是没有的。
|
||||||
|
3. 由于公司提供的机器比较老旧且没有联网,最终采取了 Docker 的形式进行安装。
|
||||||
|
4. 发现公司的 Docker 也没有 Compose 功能,最终是直接运行 Docker 容器完成的。
|
||||||
|
|
||||||
|
白天还对一些需求进行了梳理,完成了查询 crs 的实时监控部分。
|
||||||
|
|
||||||
|
下班之后,春良约了一个 AI 会议。感觉这次会议没有实际的进展,还是在梳理之前的内容,可能春良他们对这些概念不是很清晰:
|
||||||
|
|
||||||
|
1. 关于智能体这块,先伏更倾向于自实现。
|
||||||
|
2. 我认为如果有不错的工具,应该先以工具为主,但需要调研工具的可行性以及能使用到什么程度。
|
||||||
|
|
||||||
|
下班回来已经很晚了,晚上八点多去国铁局买了一些凉皮和焖面,回来和田宝一起吃的。田宝真吃了不少。小杨晚上去做指甲,回来的时候买了一个汉堡。
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
# 任务
|
||||||
|
|
||||||
|
- [ ] 开发:参加 IBS 项目晨会,同步昨日问题跟进事项。(李春良 0.5)
|
||||||
|
- [ ] 开发:开发 IBS V7.19.0 需求。(新业务平面引入与系统集成实施 50% 李春良 5)
|
||||||
|
|
||||||
|
# 日志
|
||||||
|
|
||||||
|
# 总结
|
||||||
Reference in New Issue
Block a user