CentOS 7部署redis 5.0.5

Redis基于内存存储的非关系型数据库,存储速度快,支持主从复制,支持字符串(string)列表(list)集合(set)散列(hash)有序集合(zset) 五种数据类型,

一、数据库安装

1、使用yum安装
[root@test ~]# yum install redis

[root@test ~]# redis-server --version
Redis server v=3.2.12 sha=00000000:0 malloc=jemalloc-3.6.0 bits=64 build=7897e7d0e13773f
[root@test ~]# redis-cli --version              //可以看出使用yum安装的版本都比较旧,下面我们安装最新的5.0.5版本的redis
redis-cli 3.2.12

2、编译安装最新版本redis

[root@test ~]# wget http://download.redis.io/releases/redis-5.0.5.tar.gz

[root@test ~]# tar -zxvf redis-5.0.5.tar.gz

[root@test ~]# yum install gcc -y       //gcc -v查看,如果没有需要安装

[root@test redis-5.0.5]# make MALLOC=lib

[root@test redis-5.0.5]# cd src && make all

[root@test src]# make install

[root@test src]# ./redis-server

21522:C 17 Jun 2019 15:36:52.038 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
21522:C 17 Jun 2019 15:36:52.038 # Redis version=5.0.5, bits=64, commit=00000000, modified=0, pid=21522, just started
21522:C 17 Jun 2019 15:36:52.038 # Warning: no config file specified, using the default config. In order to specify a config file use ./redis-server /path/to/redis.conf
                _._                                                  
           _.-``__ ''-._                                             
      _.-``    `.  `_.  ''-._           Redis 5.0.5 (00000000/0) 64 bit
  .-`` .-```.  ```/    _.,_ ''-._                                   
 (    '      ,       .-`  | `,    )     Running in standalone mode
 |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
 |    `-._   `._    /     _.-'    |     PID: 21522
  `-._    `-._  `-./  _.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |           http://redis.io        
  `-._    `-._`-.__.-'_.-'    _.-'                                   
 |`-._`-._    `-.__.-'    _.-'_.-'|                                  
 |    `-._`-._        _.-'_.-'    |                                  
  `-._    `-._`-.__.-'_.-'    _.-'                                   
      `-._    `-.__.-'    _.-'                                       
          `-._        _.-'                                           
              `-.__.-'                                               

出现以上界面说明安装成功

[root@test src]# ./redis-cli --version           //查询是安装的最新版本的redis
redis-cli 5.0.5
[root@test src]# ./redis-server --version
Redis server v=5.0.5 sha=00000000:0 malloc=libc bits=64 build=4db47e2324dd3c5

  二、配置启动数据库

1、第一种方法就是安装时候的./redis-server,但是这种启动方式需要一直打开窗口,不能进行其他操作,不太方便。

2、以后台进程方式启动redis

[root@test src]# vim /etc/redis-5.0.5/redis.conf   //默认安装好的配置文件并不在这个目录下,需要找到复制到该目录下

daemonize no 改为 daemonize yes        //以守护进程运行            

[root@test src]# ./redis-server /etc/redis-5.0.5/redis.conf
21845:C 17 Jun 2019 15:44:14.129 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
21845:C 17 Jun 2019 15:44:14.129 # Redis version=5.0.5, bits=64, commit=00000000, modified=0, pid=21845, just started
21845:C 17 Jun 2019 15:44:14.129 # Configuration loaded

关闭redis进程
[root@test src]# ps -ef|grep redis
root     21846     1  0 15:44 ?        00:00:00 ./redis-server 127.0.0.1:6379
root     22042  6950  0 15:46 pts/1    00:00:00 grep --color=auto redis

[root@test src]# kill -9 21846

此方法启动关闭较为麻烦,且不能设置开机自启动

  三、设置系统进程启动数据库

先编辑配置文件,然后在把配置文件拷贝到/etc/redis下
[root@test ~]# vim /root/redis-5.0.5/redis.conf 

#bind 127.0.0.1           //将bind 127.0.0.1注释掉,否则数据库只有本机能够使用

daemonize yes          //将no改为yes,使数据库能够以后台守护进程运行

protected-mode no      //把保护模式的yes改为no,否则会阻止远程访问

requirepass redis         //打开注释,设置密码

[root@test ~]# cp /root/redis-5.0.5/redis.conf /etc/redis/

开机自启动,将redis的启动脚本复制一份放到/etc/init.d目录下
[root@test redis]# vim /etc/init.d/redis

CONF="/etc/redis/redis.conf"                  //将conf的变量修改下,否则读不到配置文件

[root@test init.d]# cp /root/redis-5.0.5/utils/redis_init_script /etc/init.d/redis

[root@test ~]# cd /etc/init.d

[root@test init.d]# chkconfig redis on

下面就可以用systemctl管理redis
[root@test ~]# systemctl start redis

[root@test ~]# systemctl status redis
● redis.service - LSB: Redis data structure server
   Loaded: loaded (/etc/rc.d/init.d/redis; bad; vendor preset: disabled)
   Active: active (running) since Mon 2019-06-24 11:10:48 CST; 54s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 3184 ExecStop=/etc/rc.d/init.d/redis stop (code=exited, status=0/SUCCESS)
  Process: 3187 ExecStart=/etc/rc.d/init.d/redis start (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/redis.service
           └─3189 /usr/local/bin/redis-server *:6379

Jun 24 11:10:48 test systemd[1]: Starting LSB: Redis data structure server...
Jun 24 11:10:48 test redis[3187]: Starting Redis server...
Jun 24 11:10:48 test redis[3187]: 3188:C 24 Jun 2019 11:10:48.203 # oO0OoO0OoO0Oo R...0Oo
Jun 24 11:10:48 test redis[3187]: 3188:C 24 Jun 2019 11:10:48.203 # Redis version=5...ted
Jun 24 11:10:48 test redis[3187]: 3188:C 24 Jun 2019 11:10:48.203 # Configuration loaded
Jun 24 11:10:48 test systemd[1]: Started LSB: Redis data structure server.
Hint: Some lines were ellipsized, use -l to show in full.

  

  

  

本文为博主原创文章,转载请标注来源。
原文地址:https://www.cnblogs.com/liangyuntao-ts/p/11040127.html