xsge

Linux系统发行版ContOS7演示安装Redis

为防止操作权限不足,建议切换root用户,当然如果你对Linux命令熟悉,能够自主完成权限更新操作,可以不考虑此推荐。

更多命令学习推荐:

Linux安装JDK分为两种:手动安装和yum安装。

1、下载Redis安装程序包

  Redis官方网站手动下载,或命令下载:(也可以选择Redis中文网下载),或直接参考Redis官网下载安装说明

1 [xsge@localhost downfiles]$ wget http://download.redis.io/releases/redis-6.0.8.tar.gz

  如果是手动下载,请使用XFTP将文件上传至Linux系统中。

Reids官网版本更新早与Redis中文网!!!

  查看文件:ll

  解压文件:tar -xvf redis-6.0.8.tar.gz

1 [xsge@localhost downfiles]$ ll      ####查看文件
2 总用量 190616
3 -rw-rw-r--. 1 xsge xsge  11282879 10月  6 22:33 apache-tomcat-9.0.39.tar.gz
4 -rw-r--r--. 1 root root      1664 4月   8 2020 CentOS-Base.repo.backup
5 -rw-rw-r--. 1 xsge xsge      4131 10月 15 11:25 jdk-8u261-linux-x64.tar.gz
6 -rw-rw-r--. 1 xsge xsge     26024 4月  25 2019 mysql80-community-release-el7-3.noarch.rpm
7 -rw-rw-r--. 1 xsge xsge 181613808 6月   3 18:08 mysql-community-server-5.7.31-1.el7.x86_64.rpm
8 -rw-rw-r--. 1 xsge xsge   2247528 9月  10 19:11 redis-6.0.8.tar.gz
9 [xsge@localhost downfiles]$ tar -xvf redis-6.0.8.tar.gz      ####解压Redis安装包

  解压redis-6.0.8.tar.gz ,并把redis-6.0.8目录移动到/usr/local目录(或者opt目录:通常程序文件放置在/opt目录下)

1 [root@localhost downfiles]#  mv  redis-6.0.8   /usr/local/redis-6.x    #推荐(如果redis-6.x目录不存在,请进入local目录新建:mkdir  redis-6.x)
  或者
2 [root@localhost downfiles]# mv redis-6.0.8 /opt

2、安装

  1、环境安装

  Redis是C语言开发,安装Redis需要先将Redis的源码进行编译,编译依赖gcc环境。因此需要安装GCC,安装过程中有提示时,输入Y即可。(make命令必须在Redis程序目录下执行)

####安装GCC环境
[root@localhost ~]# yum install gcc-c++
####查看GCC版本(ContOS7默认安装4.8.5版本)
[root@localhost ~]# gcc -v

####进入Redis程序目录
cd  /usr/local/redis-6.x
####make命令,下载环境并编译Redis程序(CentOS7执行会报错)
make

  常见错误如下图:原因是因为gcc版本过低,yum安装的gcc是4.8.5的。因此需要升级gcc。升级gcc到5.3以上版本。(如果没有此错误忽略不计)

CentOS7安装有默认GCC环境,默认4.8.5版本!编译 redis-6.x,要求 C5.3以上 编译器,否则会遇到大量的错误。主要原因是从 redis-6.x 开始的多线程代码依赖C标准库中的新增类型 _Atomic 。但是注意 gcc 从 4.9 版本才开始正式和完整地支持 stdatomic(gcc-4.8.5 部分支持)。centos7默认的 gcc 版本为:4.8.5 < 5.3 无法编译

  2、升级GCC环境

    虽然此次编译出错,但是仍有一些文件已经编译生成,所以建议清除已经编译的文件。(如果没有编译出错,忽略不计)(make命令必须在Redis程序目录下执行)

 1 # 当Redis编译出错时,使用命令清除已编译生成的文件(不执行也可以:不推荐)     
 2 make  distclean
 3 ####升级GCC环境为9版本
 4 yum  -y  install  centos-release-scl
 5 yum  -y  install  devtoolset-9-gcc  devtoolset-9-gcc-c++  devtoolset-9-binutils
 6 
 7 -------环境设置----------
 8 #临时有效,退出 shell 或重启会恢复原 gcc 版本
 9 scl enable devtoolset-9 bash
10 
11 #长期有效
12 echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile

    参考:GCC源码地址里面有GCC的各个版本,进入Redis中文网评论里也有网友说明GCC升级方式方法。

 2、Redis安装

  参考官网安装说明!

  1、进入Redis程序目录:cd  /usr/local/redis-6.x/

  2、编译Redis程序:make

  3、安装Redis:make install

 1 ####进入Redis程序目录。
 2 [root@localhost redis-6.0.8]# cd  /usr/local/redis-6.x/redis-6.0.8
 3 
 4 ####执行Redis程序编译
 5 [root@localhost redis-6.0.8]# make  
 6  
 7 ####执行安装
 8 [root@localhost redis-6.0.8]#  make  install      ##将Redis安装在Linux默认位置:/usr/local/bin
 9 或者(推荐)
10 [root@localhost redis-6.0.8]# make  install  PREFIX=/usr/local/redis-6.x     ##将Redis安装在指定位置: /usr/local/redis-6.x/bin   (bin是安装自动生成的)
11 
12 ####进入redis-6.x目录
13 [root@localhost redis-6.0.8]# cd  /usr/local/redis-6.x
14 ####查看所有文件
15 [root@localhost redis6.x]# ls
16 bin  redis-6.0.8
17 ####进入bin目录:查看安装的Redis命令
18 [root@localhost redis6.x]# cd bin
19 [root@localhost bin]# ll
20 总用量 46088
21 -rwxr-xr-x. 1 root root 6399120 10月 20 14:50 redis-benchmark
22 -rwxr-xr-x. 1 root root 11351968 10月 20 14:50 redis-check-aof
23 -rwxr-xr-x. 1 root root 11351968 10月 20 14:50 redis-check-rdb
24 -rwxr-xr-x. 1 root root 6727200 10月 20 14:50 redis-cli
25 lrwxrwxrwx. 1 root root 12 10月 20 14:50 redis-sentinel -> redis-server
26 -rwxr-xr-x. 1 root root 11351968 10月 20 14:50 redis-server

  4、配置Redis。

  复制redis核心配置文件在安装命令目录中(默认位置在/usr/local/bin)。我在安装时选择了安装在指定位置(/usr/local/redis-6.x/bin),redis配置文件需要放在名录目录下。

  说明redis配置文件:在redis程序目录中

 1 ####进入redis安装目录bin
 2 [root@localhost bin]# cd /usr/local/redis6.x/bin/
 3 ####创建目录conf:用于存放配置文件
 4 [root@localhost bin]# mkdir conf
 5 ####查看创建结果
 6 [root@localhost bin]# ll
 7 总用量 46088
 8 drwxr-xr-x. 2 root root 6 10月 20 15:10 conf
 9 -rwxr-xr-x. 1 root root 6399120 10月 20 14:50 redis-benchmark
10 -rwxr-xr-x. 1 root root 11351968 10月 20 14:50 redis-check-aof
11 -rwxr-xr-x. 1 root root 11351968 10月 20 14:50 redis-check-rdb
12 -rwxr-xr-x. 1 root root 6727200 10月 20 14:50 redis-cli
13 lrwxrwxrwx. 1 root root 12 10月 20 14:50 redis-sentinel -> redis-server
14 -rwxr-xr-x. 1 root root 11351968 10月 20 14:50 redis-server
15 ####复制Redis程序目录中的配置文件放入到redis命令所在conf目录中
16 [root@localhost bin]# cp /usr/local/redis6.x/redis-6.0.8/redis.conf /usr/local/redis6.x/bin/conf/
17 ####进入redis命令conf目录
18 [root@localhost bin]# cd conf/
19 ####查看配置文件
20 [root@localhost conf]# ll
21 
22 -rw-r--r--. 1 root root 84642 10月 20 15:10 redis.conf

3、Redis启动测试

  1、进入Redis安装目录bin

  2、使用命令启动Redis服务(测试Redis服务会占用一个窗口)

 1 ####进入redis命令目录
 2 [root@localhost ~]# cd /usr/local/redis6.x/bin/
 3 ####启动reidis服务:并指定使用的配置文件
 4 [root@localhost bin]# ./redis-server conf/redis.conf
 5 2414:C 20 Oct 2020 15:53:10.901 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
 6 2414:C 20 Oct 2020 15:53:10.901 # Redis version=6.0.8, bits=64, commit=00000000, modified=0, pid=2414, just started
 7 2414:C 20 Oct 2020 15:53:10.901 # Configuration loaded
 8 2414:M 20 Oct 2020 15:53:10.902 * Increased maximum number of open files to 10032 (it was originally set to 1024).
 9                 _._                                                  
10            _.-``__ \'\'-._                                             
11       _.-``    `.  `_.  \'\'-._           Redis 6.0.8 (00000000/0) 64 bit
12   .-`` .-```.  ```\/    _.,_ \'\'-._                                   
13  (    \'      ,       .-`  | `,    )     Running in standalone mode
14  |`-._`-...-` __...-.``-._|\'` _.-\'|     Port: 6379
15  |    `-._   `._    /     _.-\'    |     PID: 2414
16   `-._    `-._  `-./  _.-\'    _.-\'                                   
17  |`-._`-._    `-.__.-\'    _.-\'_.-\'|                                  
18  |    `-._`-._        _.-\'_.-\'    |           http://redis.io        
19   `-._    `-._`-.__.-\'_.-\'    _.-\'                                   
20  |`-._`-._    `-.__.-\'    _.-\'_.-\'|                                  
21  |    `-._`-._        _.-\'_.-\'    |                                  
22   `-._    `-._`-.__.-\'_.-\'    _.-\'                                   
23       `-._    `-.__.-\'    _.-\'                                       
24           `-._        _.-\'                                           
25               `-.__.-\'                                               

  3、新开连接窗口,启动客户端连接redis服务器

 1 ####进入reids命令目录
 2 [root@localhost ~]# cd /usr/local/redis6.x/bin/
 3 ####启动客户端连接服务器:并指定端口
 4 [root@localhost bin]# ./redis-cli -p  6379
 5 ####测试连接
 6 127.0.0.1:6379> ping
 7 PONG
 8 ####停止Redis服务,并断开连接
 9 127.0.0.1:6379> shutdown
10 not connected> exit  #### 退出redis
11 [root@localhost bin]# 

4、配置Redis为后台启动

  以上的Redis安装和启动可以算是临时服务,当开启服务后,Redis服务窗口是无法在使用的,可以将Redis服务设置为后台启动服务,避免Linux窗口连接的浪费。

  1、VIM编译Redis配置文件redis.conf

  2、开启Redis后台服务(默认是关闭的)

  步骤1:vim   /usr/local/redis6.x/bin/conf/redis.conf  #打开编辑

    (键入命令 :set nu 显示行号)

  步骤2:输入i、I、a等进入插入模式

  步骤3:将daemonize no 改成daemonize yes(表示开启redis后台服务:约225行)

  步骤4:按ESC退出插入模式,输入:wq 保存退出

   3、测试

1 ####启动redis服务
2 [root@localhost bin]# ./redis-server conf/redis.conf  
3 ####此时redis服务已经作为后台服务启动,不再占用窗口,直接在本窗口启用客户端测试连接
4 [root@localhost bin]# ./redis-cli -p 6379
5 127.0.0.1:6379> ping
6 PONG
7 127.0.0.1:6379> 

  4、查看Redis服务进程

1 ####查看进程服务,过滤获取redis的
2 [root@localhost bin]# ps -ef | grep redis
3 root       2811      1  0 16:23 ?        00:00:00 ./redis-server 127.0.0.1:6379
4 root       2824   2352  0 16:23 pts/1    00:00:00 ./redis-cli -p 6379
5 root       2854   1769  0 16:27 pts/0    00:00:00 grep --color=auto redis
6 [root@localhost bin]# 

  5、Redis的关闭

  Redis客户端关闭或进程关闭(pkill redis)

1 [root@localhost bin]# ./redis-cli -p 6379    ##启动客户端连接Redis服务
2 127.0.0.1:6379> ping
3 PONG
4 127.0.0.1:6379> shutdown      ##关闭服务端连接
5 not connected> exit         ##退出 

或者
6 [root@localhost bin]# pkill redis    ##结束Redis进程

 5、卸载

  删除Redis安装和Redis解压的文件即可

1 #删除安装目录
2 rm  -rf  /usr/local/redis-6.x/redis-6.0.8
3 #删除所有redis相关命令脚本
4 rm  -rf  /usr/local/redis-6.x/bin/redis-* 

 

 

 

  

  

 

分类:

技术点:

相关文章: