Linux Memcached 安装指南(2025 最新版)
下面提供 主流发行版(Ubuntu / Debian / CentOS / RHEL / AlmaLinux / Rocky Linux)的 完整安装 + 配置 + 开机启动 + 验证 步骤。
1. Ubuntu / Debian 系列
1.1 一键安装(推荐)
sudo apt update
sudo apt install memcached libmemcached-tools -y
memcached:服务端libmemcached-tools:提供memcstat、memccat等命令行工具
1.2 手动编译安装(需要最新版)
# 安装依赖
sudo apt install build-essential libevent-dev -y
# 下载最新版(官网:https://www.memcached.org)
cd /tmp
wget https://www.memcached.org/files/memcached-1.6.29.tar.gz
tar -zxf memcached-1.6.29.tar.gz
cd memcached-1.6.29
# 编译安装
./configure --prefix=/usr/local/memcached
make && sudo make install
# 创建软链
sudo ln -s /usr/local/memcached/bin/memcached /usr/local/bin/memcached
2. CentOS / RHEL / AlmaLinux / Rocky Linux
2.1 使用 yum/dnf 安装(推荐)
# CentOS 7
sudo yum install epel-release -y
sudo yum install memcached libmemcached -y
# CentOS 8 / AlmaLinux / Rocky Linux
sudo dnf install epel-release -y
sudo dnf install memcached libmemcached -y
2.2 手动编译安装(同上)
sudo yum groupinstall "Development Tools" -y
sudo yum install libevent-devel -y
# 后续步骤同 Ubuntu 编译部分
3. 开机自启 & 服务管理
| 系统 | 命令 |
|---|---|
| systemd(Ubuntu 16.04+ / CentOS 7+) | sudo systemctl enable --now memcached |
| 启动 | sudo systemctl start memcached |
| 停止 | sudo systemctl stop memcached |
| 重启 | sudo systemctl restart memcached |
| 查看状态 | sudo systemctl status memcached |
4. 修改默认配置(推荐生产调整)
配置文件路径:
/etc/memcached.conf # Debian/Ubuntu
/etc/sysconfig/memcached # CentOS/RHEL
示例:生产环境配置(memcached.conf)
# 启动参数
-d # 以守护进程运行
-m 1024 # 分配 1GB 内存(根据服务器调整)
-p 11211 # 监听端口
-u memcache # 运行用户(默认)
-l 10.0.0.100 # 绑定内网 IP(禁止 0.0.0.0)
-c 4096 # 最大连接数
-I 1m # 单个 item 最大 1MB(默认 1MB)
-vv # 详细日志(调试用)
# 推荐安全加固
-U 0 # 禁用 UDP(防止 DDoS 反射攻击)
修改后重启
sudo systemctl restart memcached
5. 防火墙 & 安全加固
# 允许 Web 服务器访问 11211(例如 10.0.1.0/24)
sudo ufw allow from 10.0.1.0/24 to any port 11211
# 或 firewalld
sudo firewall-cmd --add-port=11211/tcp --source=10.0.1.0/24 --permanent
sudo firewall-cmd --reload
强烈建议:不要暴露 11211 到公网!
6. 验证安装成功
6.1 检查服务
sudo systemctl status memcached
输出应包含:
● memcached.service - memcached daemon
Active: active (running)
6.2 检查端口监听
ss -tlnp | grep 11211
# 或
netstat -tlnp | grep 11211
输出示例:
tcp LISTEN 0 1024 10.0.0.100:11211 0.0.0.0:* users:(("memcached",pid=1234,fd=10))
6.3 命令行测试(telnet)
telnet 10.0.0.100 11211
输入:
stats
quit
应返回统计信息。
6.4 使用 memcstat 工具
memcstat --servers=10.0.0.100:11211
输出:
Server: 10.0.0.100 (11211)
pid: 1234
uptime: 125
...
7. 自定义启动脚本(systemd 方式)
如果想用非默认配置启动,创建 override:
sudo systemctl edit memcached
输入:
[Service]
ExecStart=
ExecStart=/usr/bin/memcached -m 2048 -p 11211 -u memcache -l 10.0.0.100 -c 8192 -I 1m
保存后:
sudo systemctl daemon-reload
sudo systemctl restart memcached
8. 卸载 Memcached
# Ubuntu/Debian
sudo apt remove --purge memcached -y
sudo rm -rf /var/run/memcached*
# CentOS/RHEL
sudo yum remove memcached -y
# 或 dnf
sudo dnf remove memcached -y
一键安装脚本(适用于新服务器)
#!/bin/bash
OS=$(awk -F= '/^ID=/{print $2}' /etc/os-release | tr -d '"')
if [[ "$OS" == "ubuntu" || "$OS" == "debian" ]]; then
sudo apt update && sudo apt install memcached libmemcached-tools -y
elif [[ "$OS" == "centos" || "$OS" == "rhel" || "$OS" == "almalinux" || "$OS" == "rocky" ]]; then
sudo dnf install epel-release -y 2>/dev/null || sudo yum install epel-release -y
sudo dnf install memcached libmemcached -y 2>/dev/null || sudo yum install memcached libmemcached -y
fi
sudo systemctl enable --now memcached
echo "Memcached 安装完成!访问:$(hostname -I | awk '{print $1}'):11211"
保存为 install_memcached.sh,运行:
chmod +x install_memcached.sh
sudo ./install_memcached.sh
小结
| 步骤 | 命令 |
|---|---|
| 1. 安装 | apt install memcached 或 dnf install memcached |
| 2. 配置 | 编辑 /etc/memcached.conf |
| 3. 启动 | systemctl enable --now memcached |
| 4. 验证 | ss -tlnp | grep 11211 |
| 5. 安全 | 绑定内网 IP + 防火墙 |
下一步建议:
- 连接 Python/PHP 客户端测试读写
- 部署多节点集群
- 使用 Prometheus 监控
memcached_exporter
需要 Docker 部署、多实例运行、高可用方案?继续问我!
I am sure this post has touched all the internet
viewers, its really really good post on building up new web site.