目錄
- 安裝依賴
- 編譯安裝Memcached
- 配置環境變數
- systemctl管理memcached
- 多載daemon
- 開機自啟
- memcached管理常用命令
安裝依賴
在Linux下編譯,需要gcc、make、cmake、autoconf、libtool、libevent等工具,在Linux聯網狀態下我們可以使用yum命令來安裝鎖需要的依賴
yum -y install gcc gcc-c++ make cmake autoconf libtool libevent libevent-devel
編譯安裝Memcached
# 切換到資源包目錄(我個人所有的資源包都是放在/usr/local/src目錄下)
cd /usr/local/src
# 下載Memcached
wget http://www.memcached.org/files/memcached-1.6.6.tar.gz
# 解壓
tar -zxvf memcached-1.6.6.tar.gz
# 編譯 && 安裝
./configure --prefix=/usr/local/memcached-1.6.6
make && make install
# 創建memcached的軟連接
ln -s memcached-1.6.6 memcached
創建軟鏈接的好處
為什么要創建軟連接?因為以后可能會升級到其它版本,在環境變數和開機自啟這些地方都使用軟連接,這樣可以方便以后升級的時候只需要洗掉舊的軟連接重新對新版本創建一個軟連接就好了,不需要在去到環境變數和開機自啟的這些配置的地方再去修改,
配置環境變數
編輯/etc/profile檔案,/usr/local/memcached/bin添加到環境變數中
export PATH="$PATH:/usr/local/memcached/bin"
添加后執行source /etc/profile使修改立即生效
systemctl管理memcached
在以前我們來管理Memcached的開機自啟的時候我們都是使用的rc.local的方式來設定,但是這樣的方式已經過時,在CentOS7中我們應當使用systemctl來管理
首先我們來看一下使用yum方式安裝的memcached都做了啥
-
創建一個sbin/nologin型別的名為memcached的用戶
useradd memcached -s /sbin/nologin -M -
安裝memcached并采用systemctl來管理,memcached.service檔案內容如下
[Unit] Description=Memcached Before=httpd.service After=network.target [Service] Type=simple EnvironmentFile=-/etc/sysconfig/memcached ExecStart=/usr/bin/memcached -u $USER -p $PORT -m $CACHESIZE -c $MAXCONN $OPTIONS [Install] WantedBy=multi-user.target -
組態檔放在/etc/sysconfig/memcached
PORT="11211" USER="memcached" MAXCONN="1024" CACHESIZE="64" OPTIONS=""
我們使用的是編譯安裝,不過我們可以仿照yum方式的行為來管理我們自己編譯安裝的Memcached服務
首先,創建一個memcached用戶,專門用來管理memcached服務
useradd memcached -s /sbin/nologin -M
然后在我們的memcached安裝目錄下創建一個組態檔,添加我們自己的個人配置
# 創建配置目錄
mkdir /usr/local/memcached/conf
touch /usr/local/memcached/conf/memcached
# 修改檔案所屬用戶和組
chown -R memcached:memcached /usr/local/memcached/conf/memcached
# 在/usr/local/memcached/conf/memcached檔案中添加如下內容
PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS=""
然后,在/usr/lib/systemd/system/目錄下創建一個memcached.service檔案
touch /usr/lib/systemd/system/memcached.service
并在memcached.service添加如下內容(就是把yum方式的EnvironmentFile和啟動路徑改了)
[Unit]
Description=Memcached
Before=httpd.service
After=network.target
[Service]
Type=simple
EnvironmentFile=-/usr/local/memcached/conf/memcached
ExecStart=/usr/local/memcached/bin/memcached -u $USER -p $PORT -m $CACHESIZE -c $MAXCONN $OPTIONS
[Install]
WantedBy=multi-user.target
多載daemon
執行下面的命令重新載入 systemd,掃描新的或有變動的單元
systemctl daemon-reload
開機自啟
systemctl enable memcached.service # 設定開機自啟
systemctl disable memcached.service # 取消開機自啟服務
memcached管理常用命令
systemctl status memcached.service # 查看Memcached狀態
systemctl start memcached.service # 開啟Memcached
systemctl stop memcached.service # 關閉Memcached
systemctl reload memcached.service # 多載配置
systemctl restart memcached.service # 重啟Memcached(相當于stop&start)
可以使用lsof -i:埠號查看Memcached服務

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/1128.html
標籤:NoSQL
上一篇:redis~lua腳本的使用
