Blame
| 1e9e09 | Terry | 2025-12-05 05:51:19 | 1 | # Ubuntu安装Redis |
| 2 | ||||
| 3 | 在 Ubuntu 24.04 上安装 Redis 有以下几种方法: |
|||
| 4 | ||||
| 5 | ## 方法 1:使用 APT 包管理器(最简单) |
|||
| 6 | ||||
| 7 | ### 1. 更新系统并安装 Redis |
|||
| 8 | ```bash |
|||
| 9 | # 更新包列表 |
|||
| 10 | sudo apt update |
|||
| 11 | ||||
| 12 | # 安装 Redis |
|||
| 13 | sudo apt install redis-server -y |
|||
| 14 | ``` |
|||
| 15 | ||||
| 16 | ### 2. 启动和启用 Redis 服务 |
|||
| 17 | ```bash |
|||
| 18 | # 启动 Redis 服务 |
|||
| 19 | sudo systemctl start redis-server |
|||
| 20 | ||||
| 21 | # 设置开机自启 |
|||
| 22 | sudo systemctl enable redis-server |
|||
| 23 | ||||
| 24 | # 检查服务状态 |
|||
| 25 | sudo systemctl status redis-server |
|||
| 26 | ``` |
|||
| 27 | ||||
| 28 | ### 3. 测试 Redis 是否正常工作 |
|||
| 29 | ```bash |
|||
| 30 | # 连接到 Redis |
|||
| 31 | redis-cli |
|||
| 32 | ||||
| 33 | # 在 Redis CLI 中测试 |
|||
| 34 | 127.0.0.1:6379> ping |
|||
| 35 | # 应该返回 PONG |
|||
| 36 | ||||
| 37 | 127.0.0.1:6379> set test "Hello Redis" |
|||
| 38 | 127.0.0.1:6379> get test |
|||
| 39 | # 应该返回 "Hello Redis" |
|||
| 40 | ||||
| 41 | # 退出 Redis CLI |
|||
| 42 | 127.0.0.1:6379> exit |
|||
| 43 | ``` |
|||
| 44 | ||||
| 45 | ## 方法 2:从源码编译安装(获取最新版本) |
|||
| 46 | ||||
| 47 | ### 1. 安装编译依赖 |
|||
| 48 | ```bash |
|||
| 49 | sudo apt update |
|||
| 50 | sudo apt install build-essential tcl -y |
|||
| 51 | ``` |
|||
| 52 | ||||
| 53 | ### 2. 下载最新版 Redis |
|||
| 54 | ```bash |
|||
| 55 | # 下载 Redis(这里以 7.2.4 为例,可访问 https://redis.io/download 查看最新版本) |
|||
| 56 | cd /tmp |
|||
| 57 | wget https://download.redis.io/releases/redis-7.2.4.tar.gz |
|||
| 58 | ||||
| 59 | # 解压 |
|||
| 60 | tar xzf redis-7.2.4.tar.gz |
|||
| 61 | cd redis-7.2.4 |
|||
| 62 | ``` |
|||
| 63 | ||||
| 64 | ### 3. 编译和安装 |
|||
| 65 | ```bash |
|||
| 66 | # 编译 |
|||
| 67 | make |
|||
| 68 | ||||
| 69 | # 测试编译(可选但推荐) |
|||
| 70 | make test |
|||
| 71 | ||||
| 72 | # 安装到系统目录 |
|||
| 73 | sudo make install |
|||
| 74 | ||||
| 75 | # 创建配置目录 |
|||
| 76 | sudo mkdir /etc/redis |
|||
| 77 | sudo mkdir /var/lib/redis |
|||
| 78 | ``` |
|||
| 79 | ||||
| 80 | ### 4. 配置 Redis |
|||
| 81 | ```bash |
|||
| 82 | # 复制配置文件 |
|||
| 83 | sudo cp redis.conf /etc/redis/ |
|||
| 84 | ||||
| 85 | # 编辑配置文件 |
|||
| 86 | sudo nano /etc/redis/redis.conf |
|||
| 87 | ``` |
|||
| 88 | ||||
| 89 | 修改以下关键配置: |
|||
| 90 | ``` |
|||
| 91 | # 启用守护进程模式(后台运行) |
|||
| 92 | daemonize yes |
|||
| 93 | ||||
| 94 | # 设置数据目录 |
|||
| 95 | dir /var/lib/redis |
|||
| 96 | ||||
| 97 | # 如果需要远程访问,注释掉这一行(默认只允许本地访问) |
|||
| 98 | # bind 127.0.0.1 ::1 |
|||
| 99 | ||||
| 100 | # 设置密码(可选,取消注释并修改) |
|||
| 101 | # requirepass your-strong-password-here |
|||
| 102 | ``` |
|||
| 103 | ||||
| 104 | ### 5. 创建 systemd 服务文件 |
|||
| 105 | ```bash |
|||
| 106 | sudo nano /etc/systemd/system/redis.service |
|||
| 107 | ``` |
|||
| 108 | ||||
| 109 | 添加以下内容: |
|||
| 110 | ```ini |
|||
| 111 | [Unit] |
|||
| 112 | Description=Redis In-Memory Data Store |
|||
| 113 | After=network.target |
|||
| 114 | ||||
| 115 | [Service] |
|||
| 116 | User=redis |
|||
| 117 | Group=redis |
|||
| 118 | ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf |
|||
| 119 | ExecStop=/usr/local/bin/redis-cli shutdown |
|||
| 120 | Restart=always |
|||
| 121 | ||||
| 122 | [Install] |
|||
| 123 | WantedBy=multi-user.target |
|||
| 124 | ``` |
|||
| 125 | ||||
| 126 | ### 6. 创建 Redis 用户和设置权限 |
|||
| 127 | ```bash |
|||
| 128 | # 创建 Redis 用户 |
|||
| 129 | sudo adduser --system --group --no-create-home redis |
|||
| 130 | ||||
| 131 | # 设置目录权限 |
|||
| 132 | sudo chown redis:redis /var/lib/redis |
|||
| 133 | sudo chmod 770 /var/lib/redis |
|||
| 134 | ``` |
|||
| 135 | ||||
| 136 | ### 7. 启动服务 |
|||
| 137 | ```bash |
|||
| 138 | # 重新加载 systemd |
|||
| 139 | sudo systemctl daemon-reload |
|||
| 140 | ||||
| 141 | # 启动 Redis |
|||
| 142 | sudo systemctl start redis |
|||
| 143 | ||||
| 144 | # 启用开机自启 |
|||
| 145 | sudo systemctl enable redis |
|||
| 146 | ||||
| 147 | # 检查状态 |
|||
| 148 | sudo systemctl status redis |
|||
| 149 | ``` |
|||
| 150 | ||||
| 151 | ## 方法 3:使用 Snap(最简单但可能不是最新版) |
|||
| 152 | ||||
| 153 | ```bash |
|||
| 154 | # 安装 Redis Snap 包 |
|||
| 155 | sudo snap install redis |
|||
| 156 | ||||
| 157 | # 启动服务 |
|||
| 158 | sudo snap start redis |
|||
| 159 | ``` |
|||
| 160 | ||||
| 161 | ## 基本配置和安全设置 |
|||
| 162 | ||||
| 163 | ### 1. 配置 Redis 安全(强烈建议) |
|||
| 164 | ```bash |
|||
| 165 | # 编辑配置文件 |
|||
| 166 | sudo nano /etc/redis/redis.conf |
|||
| 167 | ``` |
|||
| 168 | ||||
| 169 | 设置以下安全选项: |
|||
| 170 | ``` |
|||
| 171 | # 设置密码(取消注释并设置强密码) |
|||
| 172 | requirepass your-strong-password-here |
|||
| 173 | ||||
| 174 | # 重命名危险命令(可选但建议) |
|||
| 175 | rename-command FLUSHDB "" |
|||
| 176 | rename-command FLUSHALL "" |
|||
| 177 | rename-command CONFIG "" |
|||
| 178 | ||||
| 179 | # 只允许本地访问(默认) |
|||
| 180 | bind 127.0.0.1 |
|||
| 181 | ||||
| 182 | # 启用保护模式 |
|||
| 183 | protected-mode yes |
|||
| 184 | ``` |
|||
| 185 | ||||
| 186 | ### 2. 重启 Redis 使配置生效 |
|||
| 187 | ```bash |
|||
| 188 | sudo systemctl restart redis-server # APT 安装 |
|||
| 189 | # 或 |
|||
| 190 | sudo systemctl restart redis # 源码编译安装 |
|||
| 191 | ``` |
|||
| 192 | ||||
| 193 | ### 3. 使用密码连接 |
|||
| 194 | ```bash |
|||
| 195 | # 连接到 Redis(使用密码) |
|||
| 196 | redis-cli -a your-password |
|||
| 197 | ||||
| 198 | # 或者在连接后认证 |
|||
| 199 | redis-cli |
|||
| 200 | 127.0.0.1:6379> AUTH your-password |
|||
| 201 | ``` |
|||
| 202 | ||||
| 203 | ## 验证安装 |
|||
| 204 | ||||
| 205 | ### 1. 检查 Redis 版本 |
|||
| 206 | ```bash |
|||
| 207 | redis-server --version |
|||
| 208 | # 或 |
|||
| 209 | redis-cli --version |
|||
| 210 | ``` |
|||
| 211 | ||||
| 212 | ### 2. 测试 Redis 性能 |
|||
| 213 | ```bash |
|||
| 214 | redis-benchmark -q -n 1000 -c 50 |
|||
| 215 | ``` |
|||
| 216 | ||||
| 217 | ### 3. 监控 Redis 状态 |
|||
| 218 | ```bash |
|||
| 219 | # 查看基本信息 |
|||
| 220 | redis-cli INFO |
|||
| 221 | ||||
| 222 | # 查看内存使用 |
|||
| 223 | redis-cli INFO memory |
|||
| 224 | ||||
| 225 | # 查看客户端连接 |
|||
| 226 | redis-cli INFO clients |
|||
| 227 | ``` |
|||
| 228 | ||||
| 229 | ## 防火墙设置(如果需要远程访问) |
|||
| 230 | ||||
| 231 | ```bash |
|||
| 232 | # 如果使用 UFW 防火墙 |
|||
| 233 | sudo ufw allow 6379/tcp |
|||
| 234 | sudo ufw reload |
|||
| 235 | ||||
| 236 | # 重要:确保在 redis.conf 中配置了密码和绑定 IP |
|||
| 237 | ``` |
|||
| 238 | ||||
| 239 | ## 卸载 Redis |
|||
| 240 | ||||
| 241 | ```bash |
|||
| 242 | # 停止服务 |
|||
| 243 | sudo systemctl stop redis-server |
|||
| 244 | ||||
| 245 | # 卸载包(APT 安装) |
|||
| 246 | sudo apt remove redis-server --purge |
|||
| 247 | ||||
| 248 | # 删除配置文件和数据 |
|||
| 249 | sudo rm -rf /etc/redis |
|||
| 250 | sudo rm -rf /var/lib/redis |
|||
| 251 | ``` |
|||
| 252 | ||||
| 253 | ## 推荐方法 |
|||
| 254 | ||||
| 255 | 对于大多数用户,**推荐使用方法 1(APT 安装)**,因为: |
|||
| 256 | 1. 最简单快捷 |
|||
| 257 | 2. 自动管理服务和更新 |
|||
| 258 | 3. Ubuntu 24.04 软件源中的 Redis 版本通常是稳定版 |
|||
| 259 | ||||
| 260 | 如果需要最新功能,可以使用方法 2(源码编译)。安装完成后,记得配置密码和进行基本的安全设置,特别是如果你打算在生产环境中使用。 |