1.在服务器中创建你的安装位置,我是在/usr/software/redis/ 中
mkdir /usr/software/redis/
2.下载 redis 安装包 ,并解压
进入刚刚创建的安装位置:
cd /usr/software/redis/
下载安装包:
wget http://download.redis.io/releases/redis-4.0.1.tar.gz
下载完后进行解压:
tar xzf redis-4.0.1.tar.gz
3.进入解压后的文件夹,执行安装install命令进行安装
cd redis-4.0.1
make PREFIX=/usr/software/redis/redis-4.0.1 install
PREFIX=指定的安装路径,我是和安装文件放在一起,可以分开放,指定好路径就可以了。
等待安装完成, 安装完成后,指定的安装路径下会多一个 bin 文件夹。
进入bin文件夹,使用命令./redis-server 启动,出现如下图下半部分所示,即为安装成功。
./redis-server
但此时若linux关闭当前会话,退出当前页面,redis服务随即关闭,在日常开发过程中,我们要做得是让redis能在后台运行。
配置Redis
1. 打开 redis-conf 配置文件,可以选择下载到本地,修改完后,在上传上来,这样比较方便。
如果是安装在新的文件夹中,修改完后直接上传到新安装文件夹中,在本地修改,使用搜索修改会更方便。
修改配置文件:
由 daemonize no 修改为 daemonize yes #开启守护进程
bind 127.0.0.1 #注释该行即允许远程访问权限
由 #bind 127.0.0.1 修改为 bind 127.0.0.1
由 #requirepass foobared 修改为 requirepass 新密码 #设置redis数据库连接密码
修改完记得保存,如果是下载的,重新上传覆盖。
2.上传保存完后,重新启动redis
进入bin 文件夹,使用命令重启
./redis-server ../redis.conf
../redis.conf 为我当前 redis.conf 的存放路径。
以后为修改redis配置文件 redis.conf 后重启成功,现在是后台运行。
设置环境变量:
设置全局变量,这样就可以直接使用 redis-cli 等命令了。
将redis添加到环境变量中:
vi /etc/profile
按 i 进入编辑模式,然后在最底下添加
# Redis
export PATH=$PATH:/usr/software/redis/redis-4.0.1/bin
/usr/software/redis/redis-4.0.1/bin 为我当前install redis时生成的bin文件夹
使用命令,使配置生效
source /etc/profile
这样就可以全局使用 redis-cli 等命令了,我们做个简单的小验证
redis-cli -a 设置的登录密码 进入redis控制台。
配置redis开机自启动
上面设置完后,linux安装redis算是已经搞定了,但现在仍然存在一个问题,当我们的服务器重启后,redis 需要我们手动重启,不能自动重启,这个算是一个不方便的地方,在网上查阅前人的配置,找到了满意的答案:
参考文章:https://www.jianshu.com/p/a73e0565e2a1
基本原理为:
系统开机启动时会去加载/etc/init.d/下面的脚本,通常而言每个脚本文件会自定义实现程序的启动;若想将新的程序开机自启动,只需在该目录下添加一个自定义启动程序的脚本,然后设置相应规则即可。
如在这里我们在/etc/init.d/下新建一个 redis 的脚本,开机启动时会去加载执行该脚本。
vim /etc/init.d/redis
脚本内容,我用了大佬文章中的内容,但不成功,会报错,在做一点点修改后生效了,下面贴上我的脚本内容
#!/bin/sh
#chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
REDISPORT=6379 #端口号,这是默认的,如果你安装的时候不是默认端口号,则需要修改
REDISPATH=/usr/redis-4.0.1/bin #redis-server启动脚本的所在目录,你如果忘了可以用find / -name redis-server 或whereis redis-server找到
EXEC=${REDISPATH}/redis-server
CLIEXEC=${REDISPATH}/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid #在redis.conf中可找到该路径
CONF="${REDISPATH}/redis.conf" #redis.conf的位置, 如果不和redis-server在同一目录要修改成你的redis.conf所在目录
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
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$CLIEXEC -p $REDISPORT shutdown
while [ -x /proc/${PID} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
*)
echo "Please use start or stop as first argument"
;;
esac
上述脚本,注意两个点:
一个是路径末尾的文件分隔符,还有就是 bin文件夹和 redis.conf 的相对位置
把上面的路径改成自己的,然后 esc -- :wq! -- 回车 保存退出
设置可执行权限:
chmod 777 /etc/init.d/redis
启动redis:
/etc/init.d/redis start
执行结束之后用redis-cli 或者 ps aux|grep redis 查看redis是否成功启动.
设置开机启动:
chkconfig redis on
服务器关机重启测试:
reboot
重启之后,用管理工具连接redis 或者是 使用命令查看redis是否自动重启
ps -ef |grep redis
查阅和参考文章:https://www.jianshu.com/p/a73e0565e2a1