Blame
|
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(源码编译)。安装完成后,记得配置密码和进行基本的安全设置,特别是如果你打算在生产环境中使用。 |
|||||||