Memcached:Win/Linux环境安装及一键部署脚本

本文详细介绍了在Linux和Windows上安装Memcached的步骤,包括安装依赖、下载和编译源码、配置启动参数、创建系统服务以及解决sudo执行失败的问题。还提供了一个一键部署脚本,简化安装流程。
摘要由CSDN通过智能技术生成

1. Win安装

Windows安装Memcached

2. Linux安装

2.1 安装依赖环境

sudo yum install -y libevent-devel

2.2 下载 Memcached

cd /tmp
wget https://memcached.org/files/memcached-1.6.12.tar.gz

2.3 解压 Memcached

tar xzf memcached-1.6.12.tar.gz

2.4 编译安装 Memcached

cd memcached-1.6.12
./configure && make && sudo make install

2.5 配置 Memcached

创建一个 Memcached 配置文件 /etc/memcached.conf,并添加以下内容:

# 监听的 IP 地址和端口号
-l 127.0.0.1
-p 11211

# 内存限制(单位是 MB)
-m 64

# 后台运行
-d

2.6 赋权

sudo chmod +x /usr/local/bin/memcached

2.7 启动 Memcached

memcached -d -m 64 -u root -l 127.0.0.1 -p 11211

2.8 验证 Memcached 是否启动成功

sudo netstat -lnpt | grep memcached

如果看到输出中有 127.0.0.1:11211,则表示 Memcached 启动成功。

2.9 添加到系统服务

(1)创建systemd服务文件

使用root权限创建/usr/lib/systemd/system/memcached.service文件,文件内容如下:

[Unit]
Description=memcached daemon

[Service]
Type=simple
ExecStart=/usr/local/bin/memcached -m 64 -u root -l 127.0.0.1 -p 11211
ExecReload=/bin/kill -s HUP $MAINPID
Restart=always
User=root

[Install]
WantedBy=multi-user.target

(2)启用服务,执行以下命令:

sudo systemctl daemon-reload
sudo systemctl enable memcached
sudo systemctl start memcached

(3)确认服务是否已经启动,执行以下命令:

sudo systemctl status memcached

如果服务状态显示为"active (running)",则表示服务已经正常运行。

2.10 sudo 命令执行失败问题

问题描述

[root@linkhot01 memcached-1.6.12]# sudo memcached -d -m 64 -u root -l 127.0.0.1 -p 11211
sudo: memcached:找不到命令

报错说明:这个错误提示显示系统找不到 memcached 命令,有可能是因为 memcached 没有正确安装或者没有正确配置系统环境变量。

分析结果:如果将sudomemcached命令连在一起执行,会导致系统无法找到memcached命令。这是因为在使用sudo时,系统会默认使用root用户环境变量中的PATH变量,而非当前用户的环境变量。

因此,在使用sudo命令时,需要使用绝对路径或者将memcached命令加入root用户的环境变量中,才能够正常执行memcached命令。

3. 一键部署脚本

#!/bin/bash

# 安装依赖库
sudo yum install libevent-devel -y

# 下载、编译和安装 memcached
cd /usr/local/src
sudo wget http://www.memcached.org/files/memcached-1.6.12.tar.gz
sudo tar -zxvf memcached-1.6.12.tar.gz
cd memcached-1.6.12/
sudo ./configure --prefix=/usr/local/memcached
sudo make && sudo make install

# 添加 memcached 环境变量
echo 'export PATH=$PATH:/usr/local/memcached/bin' | sudo tee -a /etc/profile
source /etc/profile

# 创建 memcached 用户
sudo useradd -s /sbin/nologin -d /dev/null memcached

# 生成服务文件
sudo sh -c "cat > /usr/lib/systemd/system/memcached.service << EOF
[Unit]
Description=Memcached
After=network.target

[Service]
Type=simple
User=memcached
Group=memcached
Environment='PATH=/usr/local/memcached/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin'
ExecStart=/usr/local/memcached/bin/memcached -d -m 64 -u memcached -l 127.0.0.1 -p 11211
ExecStop=/usr/local/memcached/bin/memcached -d -m 64 -u memcached -l 127.0.0.1 -p 11211 -s /tmp/memcached.sock -S -X
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF
"

# 启动 memcached 服务并设置开机自启
sudo systemctl start memcached
sudo systemctl enable memcached

这个脚本会下载、编译和安装 memcached,添加 memcached 环境变量,创建 memcached 用户,生成服务文件,启动 memcached 服务并设置开机自启。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值