快来学Redis | Linux下的安装

一、安装 gcc

Redis在Linux上的安装首先必须先安装gcc,这个是用来编译redis的源文件的。

[root@peipei3514 src]# yum install gcc-c++ -y
二、下载并解压 Redis
[root@peipei3514 src]# wget http://download.redis.io/releases/redis-4.0.9.tar.gz

[root@peipei3514 src]# tar zxvf redis-4.0.9.tar.gz
三、进入 Redis 目录并编译 Redis
[root@peipei3514 src]# cd redis-4.0.9

[root@peipei3514 redis-4.0.9]# make


出现以下信息即是编译成功
    CC adlist.o
    CC quicklist.o
    ......
    CC childinfo.o
    CC defrag.o
    CC siphash.o
    CC rax.o
    LINK redis-server
    INSTALL redis-sentinel
    CC redis-cli.o
    LINK redis-cli
    CC redis-benchmark.o
    LINK redis-benchmark
    INSTALL redis-check-rdb
    INSTALL redis-check-aof
四、运行 make test 测试是否可以安装
[root@peipei3514 redis-4.0.9]# make test

...
  118 seconds - unit/geo
  159 seconds - unit/obuf-limits

\o/ All tests passed without errors! #这里显示测试通过

注意:运行 make test 命令需要 TCL 的支持。所以运行 make test 命令前先安装或升级一下 TCL( yum install -y tcl.x86_64)。

TCL(Tool Command Language)工具脚本语言,是Linux内的一种语言包。

五、安装 Redis
[root@peipei3514 redis-4.0.9]# make PREFIX=/usr/local/redis install # 使用PREFIX指定安装目录
cd src && make install
make[1]: 进入目录“/usr/local/src/redis-4.0.9/src”

Hint: It's a good idea to run 'make test' ;)

    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install
make[1]: 离开目录“/usr/local/src/redis-4.0.9/src”

安装成功!(框框中标出的都是一个个工具命令)
这里写图片描述

  • redis-server:Redis服务器
  • redis-cli:Redis命令行客户端
  • redis-bemchmark:Redis性能测试工具
  • redis-check-aof:AOF文件修复工具
  • redis-check-dump:RDB文件检查工具
六、添加配置文件

把解压的redis路径下的redis.conf文件拷贝到安装路径下面

[root@peipei3514 redis-4.0.9]# cp redis.conf /usr/local/redis/
[root@peipei3514 redis-4.0.9]# ll /usr/local/redis/
总用量 60
drwxr-xr-x. 2 root root   134 527 17:09 bin
-rw-r--r--. 1 root root 58766 527 17:16 redis.conf

到这里redis已经安装成功了。

七、启动 Redis
第一种方法:进入安装路径下的bin(前端启动)
[root@peipei3514 redis-4.0.9]# cd /usr/local/redis/bin/
[root@peipei3514 bin]# ./redis-server

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

8519:M 27 May 17:19:39.747 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
8519:M 27 May 17:19:39.747 # Server initialized
8519:M 27 May 17:19:39.748 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory                                                                       = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
8519:M 27 May 17:19:39.748 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redi                                                                      s. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the sett                                                                      ing after a reboot. Redis must be restarted after THP is disabled.
8519:M 27 May 17:19:39.748 * Ready to accept connections

这样其实已经启动成功了,但是这属于前端启动,启动redis之后,我们的控制台就不能进行任何操作了。只能ctrl+c停止启动。

第二种方法: 后端启动

1、首先编辑 redis.conf

[root@peipei3514 redis]# vim redis.conf

2、找到daemonize no将其改为yes(在vim中插入数据按键盘上的i或者insert)

这里写图片描述

3、再次启动

[root@peipei3514 redis]# ./bin/redis-server ./redis.conf
8531:C 27 May 17:30:36.610 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
8531:C 27 May 17:30:36.610 # Redis version=4.0.9, bits=64, commit=00000000, modified=0, pid=8531, just started
8531:C 27 May 17:30:36.610 # Configuration loaded

这样redis就启动了

[root@peipei3514 redis]# ps -ef | grep -i redis
root       8532      1  0 17:30 ?        00:00:00 ./bin/redis-server 127.0.0.1:6379
root      10418   1254  0 17:32 pts/0    00:00:00 grep --color=auto -i redis
八、简单的使用
//首先链接客户端
[root@peipei3514 redis]# ./bin/redis-cli
//检查网络是否可以
127.0.0.1:6379> ping
PONG
//设置一个键值对
127.0.0.1:6379> set name cheny
OK
//获取刚刚设置的键值对
127.0.0.1:6379> get name
"cheny"
//查看所有的键
127.0.0.1:6379> keys *
1) "name"
//删除name这个键
127.0.0.1:6379> del name
(integer) 1
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> 


----------
到这里简单的redis安装就好了,我也是利用周日的时候学习了一下,接下来还要深入学习,再加一句996还是比较苦的。。。

在最后提供一个redis的在线测试的网站,适合初学者使用,不需要安装自己的环境:redis测试网站

九、安装 Redis 为系统服务

安装完成后,Redis的启动脚本为:/usr/local/src/redis-4.0.9/utils/redis_init_script

1、将启动脚本复制到 /etc/rc.d/init.d/ 目录下,并命名为 redis
[root@peipei3514 redis]# cp /usr/local/src/redis-4.0.9/utils/redis_init_script /etc/rc.d/init.d/redis
2、修改脚本
[root@peipei3514 redis]# vim /etc/rc.d/init.d/redis
  • 在脚本的第一行后面添加一行内容如下:#chkconfig: 2345 80 90
    如果不添加上面的内容,在注册服务时会提示:service redis does not support chkconfig

  • REDISPORT 端口改为 6379

  • EXEC=/usr/local/bin/redis-server 改为 EXEC=/usr/local/redis/bin/redis-server
  • CLIEXEC=/usr/local/bin/redis-cli 改为 CLIEXEC=/usr/local/redis/bin/redis-cli
  • CONF=”/etc/redis/${REDISPORT}.conf” 改为 CONF=”/usr/local/redis/redis.conf”

修改的/etc/rc.d/init.d/redis脚本内容为:

这里写图片描述

3、将 Redis 注册成为服务

以上配置操作完成后,便可将 Redis 注册成为服务:

[root@peipei3514 redis]# chkconfig --add redis
[root@peipei3514 redis]# chkconfig --list redis

redis           0:1:2:3:4:5:6:
4、修改Redis配置文件
[root@peipei3514 redis]# vim redis.conf
参数说明
daemonizeyes使Redis以守护进程模式运行
pidfile/var/run/redis_port.pid设置Redis的PID文件位置
port端口号设置Redis的监听端口号
dir/usr/local/redis/persistence设置持久化文件的存放位置,需要mkdir该路径
bindIp地址By default Redis listens for connections from all the network interfaces
logfile/usr/local/redis/logs/redis.log日志文件

修改端口号
这里写图片描述
设置持久化文件的存放位置
这里写图片描述
设置Ip地址
这里写图片描述
设置日志文件
这里写图片描述

  • 创建持久化文件保存路径,需要提前mkdir
[root@peipei3514 redis]# mkdir /usr/local/redis/persistence
  • 将Redis添加到环境变量中
[root@peipei3514 redis]# vim /etc/profile

#Set Redis 4.0.9 Environment
export REDIS_HOME=/usr/local/redis/
export PATH=$REDIS_HOME/bin:$PATH
export PATH


[root@peipei3514 redis]# source /etc/profile #使配置文件立即生效

这里写图片描述

5、启动Redis服务
[root@peipei3514 redis]# service redis start
Starting Redis server...
10564:C 27 May 18:46:56.781 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
10564:C 27 May 18:46:56.781 # Redis version=4.0.9, bits=64, commit=00000000, modified=0, pid=10564, just started
10564:C 27 May 18:46:56.781 # Configuration loaded
6、关闭Redis服务
[root@peipei3514 redis]# service redis stop
Stopping ...
Redis stopped

考虑 Redis 可能在执行内存数据持久化到硬盘中,强行停止 Redis 可能导致数据丢失,正确方式停止 Redis 使用发送 SHUTDOWN 命令:

[root@peipei3514 redis]# redis-cli SHUTDOWN
[root@peipei3514 redis]# redis-cli -h ip -p 6379 shutdown

redis 先断开所有客户端链接,然后根据配置执行持久化,最后完成退出

[root@peipei3514 redis]# redis-cli SHUTDOWN
[root@peipei3514 redis]# ps -ef | grep -i redis
root      10764   1254  0 19:08 pts/0    00:00:00 grep --color=auto -i redis

使用 kill pid 也可以正常结束redis进程,效果等同shutdown

至此,Redis服务全部安装,测试完成。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值