官方地址:
https://redis.io/download#installation
安装步骤:
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make
安装异常处理:
前面3步应该没有问题,主要的问题是执行make的时候,出现了异常。
异常一:
make[2]: cc: Command not found
异常原因:没有安装gcc
解决方案:yum install gcc-c++
异常二:
zmalloc.h:51:31: error: jemalloc/jemalloc.h: No such file or directory
异常原因:一些编译依赖或原来编译遗留出现的问题
解决方案:make distclean。清理一下,然后再make。
在make成功以后,需要make test。在make test出现异常。
异常一:
couldn't execute "tclsh8.5": no such file or directory
异常原因:没有安装tcl
解决方案:yum install -y tcl。
配置:
在make成功以后,会在src目录下多出一些可执行文件:redis-server,redis-cli等等。
方便期间用cp命令复制到/usr/local/bin目录下运行,便于直接在命令行中任意位置调用。
cp redis-server /usr/local/bin/
cp redis-cli /usr/local/bin/
然后新建目录,存放配置及运行时文件
mkdir /user/local/redis # 存放配置文件
mkdir /var/redis # 存放运行时文件
mkdir /var/redis/log # 存放LOG文件
mkdir /var/redis/run # 存放PID文件
mkdir /var/redis/6379 # 存放数据库文件
在redis解压根目录中找到配置文件模板,复制到如下位置:
cp redis.conf /usr/local/redis/redis.conf
通过vim命令修改redis.conf
daemonize yes # 支持后台运行
pidfile /var/redis/run/redis_6379.pid # 设置pid文件
logfile /var/redis/log/redis_6379.log # 设置log文件
dir /var/redis/6379 # 设置数据库目录
最后可如下运行redis:
$ redis-server /usr/local/redis/redis.conf
建议运行方式优化如下:
编写脚本,vim /etc/init.d/redis
# chkconfig: 2345 10 90
# description: Start and Stop redis
PATH=/usr/local/bin:/sbin:/usr/bin:/bin
REDISPORT=6379 #实际环境而定
EXEC=/usr/local/bin/redis-server #实际环境而定
REDIS_CLI=/usr/local/bin/redis-cli #实际环境而定
PIDFILE=/var/redis/run/redis_6379.pid
CONF="/usr/local/redis/redis.conf" #实际环境而定
# AUTH="1234" # 若有密码需配置此项
case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed."
else
echo "Starting Redis server..."
$EXEC $CONF
fi
if [ "$?"="0" ]
then
echo "Redis is running..."
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE exists, process is not running."
else
PID=$(cat $PIDFILE)
echo "Stopping..."
$REDIS_CLI -p $REDISPORT SHUTDOWN
while [ -x $PIDFILE ]
do
echo "Waiting for Redis to shutdown..."
sleep 1
done
echo "Redis stopped"
fi
;;
restart|force-reload)
${0} stop
${0} start
;;
*)
echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2
exit 1
esac
设置执行权限:
chmod +x /etc/init.d/redis
设置开机启动:
# 开启服务自启动
chkconfig redis on
手动执行方式:
# 尝试启动或停止redis
service redis start
service redis stop
service redis restart
编译php的redis扩展
tar zxvf 扩展包
cd 扩展包
/php/bin/phpize 执行ize 根据php内核版本生成配置文件
执行命令:./configure --with-php-config=/php/bin/php-config
执行命令:make && make install
复制生成的redis.so文件的目录路径(make结束后会显示)
vim /php/lib/php.ini
extension=生成的路径/redis.so
service php-fpm restart
参考: