centos环境安装单机版redis
安装redis之前借鉴过很多人的文章,有些文章写的很好,但并不全面。鉴于此,特将安装的详细步骤做以记录,方便日后参考。
1.安装redis之前需要有gcc
检查方式: gcc -v
安装命令:
[root@localhost local]# yum install -y gcc
版本过低会导致redis安装失败,本人使用上述命令安装gcc后gcc的版本也只是4.x,安装redis时执行make的时候同样报错,原因是版本过低,因此在执行完上述命令后再次输入gcc-v确认一下
2.升级gcc的方法
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash
#修改环境变量
echo "source /opt/rh/devtoolset-9/enable" >> /etc/profile
gcc -v
=======================================Redis 安装过程===============================
一、安装gcc依赖
由于 redis 是用 C 语言开发,安装之前必先确认是否安装 gcc 环境(gcc -v)
安装过程上文已讲,不再赘述
二、下载并解压安装包
[root@localhost local]# wget http://download.redis.io/releases/redis-6.0.0.tar.gz
[root@localhost local]# tar -zxvf redis-6.0.0.tar.gz
三、cd切换到redis解压目录下,执行编译
[root@localhost local]# cd redis-6.0.0
[root@localhost redis-6.0.0]# make
四、安装并指定安装目录
[root@localhost redis-6.0.0]# make install PREFIX=/usr/local/redis
五、启动服务
前台启动方式----这种方式在退出当前命令后就会杀掉redis进程(当然你可以在命令后面加上 &,但不推荐)
[root@localhost redis-6.0.0]# cd /usr/local/redis/bin/
[root@localhost bin]# ./redis-server
后台启动方式----推荐的方式
从 redis 的源码目录中复制 redis.conf 到 redis 的安装目录
[root@localhost bin]# cp /usr/local/redis-6.0.0/redis.conf /usr/local/redis/bin/
修改 redis.conf 文件,把 daemonize no 改为 daemonize yes
[root@localhost bin]# vi redis.conf
[root@localhost bin]# ./redis-server redis.conf
六、测试 redis
[root@localhost bin]# ./redis-cli
127.0.0.1:6379> PING
PONG
七 、设置开机自启(生产环境启动方式)
vi /etc/init.d/redis
将下面内容粘贴到文件中:
1 #!/bin/sh 2 #chkconfig: 2345 90 10 3 #description: Redis is a persistent key-value database 4 PATH=/usr/local/bin:/sbin:/usr/bin:/bin 5 6 REDISPORT=6379 7 EXEC=/usr/local/bin/redis-server 8 REDIS_CLI=/usr/local/bin/redis-cli 9 PIDFILE=/var/run/redis_6379.pid 10 CONF="/myredis/redis.conf" 11 12 case "$1" in 13 start) 14 if [ -f $PIDFILE ] 15 then 16 echo "$PIDFILE exists, process is already running or crashed" 17 else 18 echo "Starting Redis server..." 19 $EXEC $CONF 20 fi 21 if [ "$?"="0" ] 22 then 23 echo "Redis is running..." 24 fi 25 ;; 26 stop) 27 if [ ! -f $PIDFILE ] 28 then 29 echo "$PIDFILE does not exist, process is not running" 30 else 31 PID=$(cat $PIDFILE) 32 echo "Stopping ..." 33 $REDIS_CLI -p $REDISPORT SHUTDOWN 34 while [ -x ${PIDFILE} ] 35 do 36 echo "Waiting for Redis to shutdown ..." 37 sleep 1 38 done 39 echo "Redis stopped" 40 fi 41 ;; 42 restart|force-reload) 43 ${0} stop 44 ${0} start 45 ;; 46 *) 47 echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2 48 exit 1 49 esac
修改下面的配置为自己的信息:
1 REDISPORT=6379 # 端口号 2 EXEC=/usr/local/redis/bin/redis-server # 执行脚本的地址 3 REDIS_CLI=/usr/local/redis/bin/redis-cli # 客户端执行脚本的地址 4 PIDFILE=/var/run/redis_6379.pid # 进程id文件地址,启动redis后才能看见 5 CONF="/var/local/redis/bin/redis.conf" #配置文件地址
设置权限:
chmod 755 /etc/init.d/redis
执行如下命令
chkconfig redis on #开机启动
有关chkconfig的理解--------
关于chkconfig的一些命令详解,可以参考这篇文章https://blog.csdn.net/zsg88/article/details/75246502
就像文中提到的,当chkconfig --add script_name 可以添加指定的服务随开机启动,对这个脚本有一些约束
脚本中必须有start stop的命令参数可选择,开头的注释也必须有
执行完chkconfig redis on命令以后就相当于开机的时候系统会调用这个脚本并且加上start参数
创建 redis 命令软链接(创建软连接以后可以在任意目录使用 redis-cli 命令启动redis客户端)
ln -s /usr/local/redis/bin/redis-cli /usr/bin/redis-cli
重启系统查看redis是否已经运行 : ps -ef | grep redis