1773673030
This commit is contained in:
+36
-36
@@ -1,5 +1,41 @@
|
||||
{
|
||||
"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-配管任务限流问题",
|
||||
"path": "work/移动杭研/问题处理/2026-03/0316-配管任务限流问题.md"
|
||||
@@ -68,10 +104,6 @@
|
||||
"basename": "ibs-ai 项目梳理",
|
||||
"path": "work/移动杭研/AI 项目/ibs-ai 项目梳理.md"
|
||||
},
|
||||
{
|
||||
"basename": "IBS 智能体具体落实技术方案",
|
||||
"path": "work/移动杭研/AI 项目/IBS 智能体具体落实技术方案.md"
|
||||
},
|
||||
{
|
||||
"basename": "开发备注",
|
||||
"path": "work/移动杭研/AI 项目/开发备注.md"
|
||||
@@ -124,10 +156,6 @@
|
||||
"basename": "开发笔记",
|
||||
"path": "work/移动杭研/开发记录/7.19.0/开发笔记.md"
|
||||
},
|
||||
{
|
||||
"basename": "常用命令",
|
||||
"path": "resource/常用命令.md"
|
||||
},
|
||||
{
|
||||
"basename": "20260312105716",
|
||||
"path": "000-Inbox/20260312105716.md"
|
||||
@@ -171,34 +199,6 @@
|
||||
{
|
||||
"basename": "20260311083458",
|
||||
"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": [
|
||||
|
||||
Vendored
+22
-28
@@ -4,22 +4,17 @@
|
||||
"type": "split",
|
||||
"children": [
|
||||
{
|
||||
"id": "c4199d3ab7cd8c94",
|
||||
"id": "b29f1eccf46b0980",
|
||||
"type": "tabs",
|
||||
"children": [
|
||||
{
|
||||
"id": "1ef6df6ffb644e27",
|
||||
"id": "431eb252187a1635",
|
||||
"type": "leaf",
|
||||
"state": {
|
||||
"type": "markdown",
|
||||
"state": {
|
||||
"file": "calendar/diary/2026-03-16.md",
|
||||
"mode": "source",
|
||||
"source": false,
|
||||
"backlinks": false
|
||||
},
|
||||
"type": "empty",
|
||||
"state": {},
|
||||
"icon": "lucide-file",
|
||||
"title": "2026-03-16"
|
||||
"title": "新标签页"
|
||||
}
|
||||
}
|
||||
]
|
||||
@@ -55,7 +50,7 @@
|
||||
"state": {
|
||||
"type": "search",
|
||||
"state": {
|
||||
"query": "话单下发",
|
||||
"query": "培训",
|
||||
"matchingCase": false,
|
||||
"explainSearch": true,
|
||||
"collapseAll": false,
|
||||
@@ -97,7 +92,7 @@
|
||||
}
|
||||
],
|
||||
"direction": "horizontal",
|
||||
"width": 259.5
|
||||
"width": 222.5
|
||||
},
|
||||
"right": {
|
||||
"id": "ca733f6d5936ae40",
|
||||
@@ -114,13 +109,12 @@
|
||||
"state": {
|
||||
"type": "outline",
|
||||
"state": {
|
||||
"file": "calendar/diary/2026-03-16.md",
|
||||
"followCursor": true,
|
||||
"showSearch": false,
|
||||
"searchQuery": ""
|
||||
},
|
||||
"icon": "lucide-list",
|
||||
"title": "2026-03-16 的大纲"
|
||||
"title": "大纲"
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -232,10 +226,22 @@
|
||||
"obsidian-excalidraw-plugin:New drawing": false
|
||||
}
|
||||
},
|
||||
"active": "1ef6df6ffb644e27",
|
||||
"active": "c8718c0c63702202",
|
||||
"lastOpenFiles": [
|
||||
"calendar/diary/2026-03-13.md",
|
||||
"calendar/diary/2026-03-17.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/weeks/2026-W11.md",
|
||||
"calendar/diary/2026-03-14.md",
|
||||
@@ -249,20 +255,8 @@
|
||||
"000-Inbox/0316-配管任务限流问题.md",
|
||||
"work/移动杭研/问题处理/2025-11/1107-试用单删除问题.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/Prompt 高级彩虹屁.md",
|
||||
"resource/ai/prompts/cosmic",
|
||||
"resource/ai/prompts/Prompt 考勤数据规整助手 小杨.md",
|
||||
"work/移动杭研/AI 项目/RAG Flow.md",
|
||||
"resource/ai/prompts/临时",
|
||||
"resource/工具/rime",
|
||||
"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)
|
||||
- [ ] 开发:开发 IBS V7.19.0 需求。(新业务平面引入与系统集成实施 50% 李春良 7)
|
||||
- [x] 开发:参加 IBS 项目晨会,同步昨日问题跟进事项。(李春良 0.5)
|
||||
- [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