Memcached安装-Memcached 1.6 for RHEL 9安装配置及升级迁移详细过程
1. 硬件环境检查
在安装Memcached之前,必须对服务器的硬件环境进行全面检查,确保满足Memcached 1.6的最低要求。更多学习教程www.fgedu.net.cn
# free -h
total used free shared buff/cache available
Mem: 8G 2.1G 5G 8.5M 1.8G 5.9G
Swap: 4G 0B 4G
# 检查磁盘空间
# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 4G 0 4G 0% /dev
tmpfs 4G 0 4G 0% /dev/shm
tmpfs 4G 8.5M 4G 1% /run
tmpfs 4G 0 4G 0% /sys/fs/cgroup
/dev/sda1 50G 15G 36G 30% /
# 检查CPU核心数
# nproc
4
# 检查系统架构
# uname -m
x86_64
2. 操作系统检查
Memcached 1.6支持RHEL 7.3+、RHEL 8.0+、RHEL 9.0+等操作系统。本文以RHEL 9为例。学习交流加群风哥微信: itpux-com
# cat /etc/redhat-release
Red Hat Enterprise Linux release 9.0 (Plow)
# 检查内核版本
# uname -r
5.14.0-70.22.1.el9_0.x86_64
# 检查SELinux状态
# getenforce
Disabled
# 关闭SELinux(如未关闭)
# vi /etc/selinux/config
SELINUX=disabled
# 检查防火墙状态
# systemctl status firewalld
# 关闭防火墙(生产环境建议开放特定端口而非完全关闭)
# systemctl stop firewalld
# systemctl disable firewalld
3. 安装准备
在安装Memcached之前,需要进行一系列准备工作,包括安装依赖、创建用户和组、配置网络等。
# yum install -y gcc gcc-c++ make libevent-devel
# 创建Memcached用户和组
# 创建组
# groupadd -g 1001 memcached
# 创建用户
# useradd -u 1001 -g memcached -s /sbin/nologin memcached
# 配置网络
# 确保服务器IP地址为192.168.1.51
# ip addr show eth0
2: eth0:
inet 192.168.1.51/24 brd 192.168.1.255 scope global noprefixroute eth0
valid_lft forever preferred_lft forever
inet6 fe80::5054:ff:fe12:3456/64 scope link noprefixroute
valid_lft forever preferred_lft forever
4. Memcached软件安装
现在开始安装Memcached 1.6软件,按照以下步骤进行。
# wget https://memcached.org/files/memcached-1.6.17.tar.gz
# 解压安装包
# tar -xzf memcached-1.6.17.tar.gz
# cd memcached-1.6.17
# 配置
# ./configure
# 编译
# make
# 安装
# make install
# 验证安装
# memcached -V
memcached 1.6.17
5. Memcached配置
配置Memcached,包括服务配置、参数配置等。
# vi /etc/systemd/system/memcached.service
[Unit]
Description=Memcached
After=network.target
[Service]
Type=simple
User=memcached
Group=memcached
ExecStart=/usr/local/bin/memcached -u memcached -p 11211 -m 2048 -c 1024 -l 192.168.1.51
Restart=always
[Install]
WantedBy=multi-user.target
# 重新加载系统服务
# systemctl daemon-reload
# 启动Memcached服务
# systemctl start memcached
# 设置Memcached服务开机自启
# systemctl enable memcached
# 验证Memcached服务状态
# systemctl status memcached
● memcached.service – Memcached
Loaded: loaded (/etc/systemd/system/memcached.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2026-03-31 10:00:00 CST; 1min ago
Main PID: 12345 (memcached)
Tasks: 10 (limit: 4915)
Memory: 2.0M
CGroup: /system.slice/memcached.service
└─12345 /usr/local/bin/memcached -u memcached -p 11211 -m 2048 -c 1024 -l 192.168.1.51
Mar 31 10:00:00 fgedudb01 systemd[1]: Started Memcached.
6. 测试验证
测试Memcached功能正常。学习交流加群风哥QQ113257174
# yum install -y telnet
# 连接Memcached
# telnet 192.168.1.51 11211
# 设置测试数据
try { set test_key 0 3600 10 }
data
Hello World
# 响应
STORED
# 获取测试数据
get test_key
# 响应
VALUE test_key 0 10
Hello World
END
# 退出
quit
# /usr/local/bin/memcached-tool 192.168.1.51:11211 stats
# 输出示例
# 127.0.0.1:11211 Field Value
# accept_conns 1
# auth_cmds 0
# auth_errors 0
# bytes 10
# bytes_read 15999
# bytes_written 16531
# cas_badval 0
# cas_hits 0
# cas_misses 0
# cmd_flush 0
# cmd_get 1
# cmd_set 1
# cmd_touch 0
# conn_yields 0
# curr_connections 1
# curr_items 1
# decr_hits 0
# decr_misses 0
# delete_hits 0
# delete_misses 0
# evicted_unfetched 0
# evictions 0
# expired_unfetched 0
# get_expired 0
# get_flushed 0
# get_hits 1
# get_misses 0
# incr_hits 0
# incr_misses 0
# libevent 2.1.12-stable
# limit_maxbytes 2097152
# listen_disabled_num 0
# max_connections 1024
# pid 12345
# pointer_size 64
# reclaimed 0
# rusage_system 0.004836
# rusage_user 0.004836
# threads 4
# time 1680276000
# total_connections 1
# total_items 1
# touch_hits 0
# touch_misses 0
# uptime 600
# version 1.6.17
7. 备份配置
配置Memcached备份策略,确保数据安全。
# mkdir -p /backup/memcached
# chown -R memcached:memcached /backup/memcached
# 配置自动备份脚本
# vi /root/backup_memcached.sh
#!/bin/bash
DATE=$(date +%Y%m%d)
BACKUP_DIR=”/backup/memcached”
# 创建备份目录(如果不存在)
mkdir -p $BACKUP_DIR
# 导出Memcached数据(使用memcached-dump工具)
# 注意:memcached-dump工具需要单独安装
# 这里使用示例命令,实际使用时需要根据具体工具调整
# memcached-dump -h 192.168.1.51 -p 11211 > $BACKUP_DIR/memcached_backup_$DATE.txt
# 备份配置文件
cp /etc/systemd/system/memcached.service $BACKUP_DIR/memcached.service_$DATE
# 保留最近7天的备份
find $BACKUP_DIR -name “memcached*” -mtime +7 -delete
# 给脚本添加执行权限
# chmod +x /root/backup_memcached.sh
# 添加到crontab
# crontab -e
# 添加以下内容(每天凌晨2点执行备份)
0 2 * * * /root/backup_memcached.sh
8. 升级迁移
Memcached的升级和迁移过程。
# 1. 备份数据和配置
# /root/backup_memcached.sh
# 2. 停止Memcached服务
# systemctl stop memcached
# 3. 下载新版本
# wget https://memcached.org/files/memcached-1.6.18.tar.gz
# 4. 解压并安装
# tar -xzf memcached-1.6.18.tar.gz
# cd memcached-1.6.18
# ./configure
# make
# make install
# 5. 启动Memcached服务
# systemctl start memcached
# 6. 验证升级结果
# memcached -V
memcached 1.6.18
# 从旧Memcached服务器迁移到新服务器
# 1. 在旧服务器上导出数据
# memcached-dump -h old-server-ip -p 11211 > memcached_data.txt
# 2. 将数据文件复制到新服务器
# scp memcached_data.txt root@192.168.1.51:/tmp/
# 3. 在新服务器上导入数据
# memcached-load -h 192.168.1.51 -p 11211 < /tmp/memcached_data.txt
# 4. 验证迁移结果
# telnet 192.168.1.51 11211
# get test_key
9. 总结
本文详细介绍了Memcached 1.6 for RHEL 9的安装、配置、升级和迁移过程。通过按照本文的步骤操作,可以成功部署Memcached服务并确保其稳定运行。from:fengge
– 定期备份Memcached配置文件
– 监控Memcached性能,定期检查服务状态
– 定期更新Memcached版本,确保系统安全性和性能
– 配置合适的内存大小,避免内存不足
– 对于生产环境,建议部署多个Memcached节点,提高可用性和可靠性
– 考虑使用Memcached集群方案,如memcached-session-manager等
本文由风哥教程整理发布,仅用于学习测试使用,转载注明出处:http://www.fgedu.net.cn/10327.html
