Redis是当前比较热门的NOSQL系统之一,使用率已相当高。如何进行安装是使用的前提。且之前文章中有提到MySQL XA事务问题导致锁等待超时而影响应用正常使用的情况,因此,我们先来了解一下如何编译安装redis
1. 依赖包安装
yum -y install cpp binutils glibc glibc-kernheaders glibc-common glibc-devel gcc make gcc-c++ libstdc++-devel tcl
2. 安装包准备
可以从官网 https://redis.io下载最新版redis
wget http://download.redis.io/releases/redis-4.0.14.tar.gztar -zxvf redis-4.0.14.tar.gz
3. 编译、安装
cd redis-4.0.14makemake install
4. 创建目录、修改配置文件、启动redis
建议创建单独的redis目录
# 创建目录
mkdir -p /data/redis/redis6379# 拷贝配置文件
cp redis.conf /data/redis/redis6379/# 修改配置文件
vim redis.conf修改如下部分bind 0.0.0.0 可以指定所有地址均可访问,若指定对应网段或IP 修改此处即可daemonize yes 放在后台执行,建议修改为yespidfile /data/redis/redis6379/redis_6379.pid 指定pid文件目录及文件名logfile "/data/redis/redis6379/redis6379.log" 指定log文件目录及文件名
# 其他参数在生产环境中可适当调整
# 启动redis
redis-server redis.conf
5. 异常处理
1) 如果未安装依赖包,将有如下错误
MAKE hirediscd hiredis && make staticmake[3]: Entering directory `/usr/local/redis-4.0.14/deps/hiredis'gcc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb net.cmake[3]: gcc: Command not foundmake[3]: *** [net.o] Error 127make[3]: Leaving directory `/usr/local/redis-4.0.14/deps/hiredis'make[2]: *** [hiredis] Error 2make[2]: Leaving directory `/usr/local/redis-4.0.14/deps'make[1]: [persist-settings] Error 2 (ignored) CC adlist.o/bin/sh: cc: command not foundmake[1]: *** [adlist.o] Error 127make[1]: Leaving directory `/usr/local/redis-4.0.14/src'make: *** [all] Error 2
处理方法即按第一步 安装依赖包即可
2) make过程中出现如下错误时
cd src && make allmake[1]: Entering directory `/usr/local/redis-4.0.14/src' CC Makefile.depmake[1]: Leaving directory `/usr/local/redis-4.0.14/src'make[1]: Entering directory `/usr/local/redis-4.0.14/src' CC adlist.oIn file included from adlist.c:34:zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directoryzmalloc.h:55:2: error: #error "Newer version of jemalloc required"make[1]: *** [adlist.o] Error 1make[1]: Leaving directory `/usr/local/redis-4.0.14/src'make: *** [all] Error 2
处理方法:
cd deps/ make hiredis jemalloc linenoise lua geohash-int
之后再进行make && make install 即可
6. 重要提示
1) 不建议用root账号启动redis
因redis通常不设密码,且出现过通过6379端口突破主机后被挖矿等或进行恶意攻击等情况,所以不建议使用root账号启动redis。因此 建议创建redis单独的账号 并用该普通账号启动redis。
2) 建议设置redis数据库用户密码
默认情况下只要网络及对应端口可以访问,redis无需密码即可连接,此情况数据安全性存在风险,因此,建议设置redis用户密码