在Linux环境安装redis

开发环境搭建

云服务器部署redis

安装过程

下载

1
wget http://download.redis.io/releases/redis-stable.tar.gz 

这样就直接下载好了稳定版本。

解压

1
tar zxvf redis-stable.tar.gz

编译

1
2
3
#进入到redis的src目录下
cd redis/src
make

报错处理方法

  • 出现了 zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory

    • make MALLOC=libc
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22



      - 出现了serve.c方面的报错

      {%asset_image 01.png%}



      gcc的版本太低,因为redis本身使用C语言写的,在编译时需要用到GCC编译器,版本过低的话,就会报这个错。

      >[root@localhost redis-6.0.1]# gcc -v # 查看gcc版本
      >[root@localhost redis-6.0.1]# yum -y install centos-release-scl # 升级到9.1版本
      >[root@localhost redis-6.0.1]# yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
      >[root@localhost redis-6.0.1]# scl enable devtoolset-9 bash
      >以上为临时启用,如果要长期使用gcc 9.1的话:
      >[root@localhost redis-6.0.1]# echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile

      再执行编译,PREFIX 安装目录

      ```shell
      [root@localhost redis-6.0.1]# make install PREFIX=/usr/local/redis

安装成功

启动redis服务

1
2
3
cd redis/src
#运行以下命令
./redis-server

启动成功界面

接下来就可以愉快的使用redis了。

配置过程

redis的启动方式

  • 直接启动

    进入到redis根目录,执行以下命令,其中,加上‘&’号可以使redis以后台程序运行

    1
    . /redis-server  &
  • 通过指定配置文件来启动

    可以为redis服务启动指定配置文件,例如配置为/etc/redis/6379.conf。当然,配置文件不是绝对的,可以通过个人来指定。

    最好不要在原来的redis-conf上进行修改,最好复制一个新的配置文件。

1
. /redis-server  /etc/redis/6379 .conf

​ 如果更改了端口,使用redis-cli客户端连接时,也需要指定端口,例如

1
redis-cli -p 6380
  • 使用redis启动脚本来设置开机自启动

    启动脚本 redis_init_script 位于位于Redis的 /utils/ 目录下,redis_init_script脚本代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
 #!/bin/sh
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.

### BEGIN INIT INFO
# Provides: redis_6379
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Redis data structure server
# Description: Redis data structure server. See https://redis.io
### END INIT INFO

#redis服务器监听端口
REDISPORT=6379
#服务端所处位置
EXEC=/usr/local/bin/redis-server
#客户端位置
CLIEXEC=/usr/local/bin/redis-cli

#redis的PID文件位置,需要修改
PIDFILE=/var/run/redis_${REDISPORT}.pid
#redis的配置文件位置,需将${REDISPORT}修改为文件名
CONF="/etc/redis/${REDISPORT}.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"
Type :quit<Enter> to exit Vim

此处直接配置开启自启动 chkconfig redisd on 将报错误: service redisd does not support chkconfig

在启动脚本开头添加如下两行注释以修改其运行级别:

1
2
3
4
#!/bin/sh
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
#

设置即可成功。

1
2
3
4
5
6
#设置为开机自启动服务器
chkconfig redisd on
#打开服务
service redisd start
#关闭服务
service redisd stop

远程连接工具

谢谢你的支持哦,继续加油.