一.redis是什么
redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)和zset(有序集合)
更多的介绍就不copy了,直接看官网https://redis.io/topics/introduction

二.yum安装redis

  1.安装前环境说明

  系统基于CentOS-6.7-x86_64-minimal.iso

  2.安装epel源、redis

#安装epel源
[root@localhost ~]# rpm -ivh http://mirrors.ustc.edu.cn/centos/6/extras/x86_64/Packages/epel-release-6-8.noarch.rpm #安装redis
[root@localhost ~]# yum install -y reids

  3.启动redis

[root@localhost ~]# /etc/init.d/redis start
Starting redis-server: [ OK ] #查看启动日志
[root@localhost ~]# cat /var/log/redis/redis.log [1425] 07 Dec 17:41:12 * Server started, Redis version 2.4.10
[1425] 07 Dec 17:41:12 # 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.
[1425] 07 Dec 17:41:12 * DB loaded from disk: 0 seconds
[1425] 07 Dec 17:41:12 * The server is now ready to accept connections on port 6379 #修复报错信息
[root@localhost ~]# echo "vm.overcommit_memory = 1" >> /etc/sysctl.conf
[root@localhost ~]# sysctl vm.overcommit_memory=1
vm.overcommit_memory = 1 #重启redis
[root@localhost ~]# /etc/init.d/redis restart
Stopping redis-server: [ OK ]
Starting redis-server: [ OK ] #再次查看日志,已经没有报错了
[1425] 07 Dec 17:45:33 # Received SIGTERM, scheduling shutdown...
[1425] 07 Dec 17:45:33 # User requested shutdown...
[1425] 07 Dec 17:45:33 * Saving the final RDB snapshot before exiting.
[1425] 07 Dec 17:45:33 * DB saved on disk
[1425] 07 Dec 17:45:33 * Removing the pid file.
[1425] 07 Dec 17:45:33 # Redis is now ready to exit, bye bye...
[1446] 07 Dec 17:45:33 * Server started, Redis version 2.4.10
[1446] 07 Dec 17:45:33 * DB loaded from disk: 0 seconds
[1446] 07 Dec 17:45:33 * The server is now ready to accept connections on port 6379

  4.redis一些基本的配置说明

[root@localhost ~]# grep -vE "^$|#" /etc/redis.conf
daemonize yes #以deamon形式运行在后台
pidfile /var/run/redis/redis.pid #进程id文件
port 6379 #监听端口
bind 127.0.0.1 #绑定地址
timeout 0
loglevel notice
logfile /var/log/redis/redis.log #redis日志
databases 16 #创建的数据库数据
save 900 1
save 300 10
save 60 10000
rdbcompression yes
dbfilename dump.rdb #数据文件名
dir /var/lib/redis/ #数据目录

  5.客户端连接读写测试

[root@localhost ~]# redis-cli
redis 127.0.0.1:6379> set name user1
OK
redis 127.0.0.1:6379> get name
"user1"
redis 127.0.0.1:6379> exit

三.源码安装redis

  0.卸载前文yum安装的包

[root@localhost ~]# /etc/init.d/redis stop
Stopping redis-server: [ OK ]
[root@localhost ~]# yum remove -y redis

  1.下载源码包,版本选择访问http://download.redis.io/releases

[root@localhost ~]# cd /usr/local/src
[root@localhost src]# wget http://download.redis.io/releases/redis-3.2.4.tar.gz

  2.安装redis

# 详细安装内容可以参考readme
[root@localhost src]# cd /usr/local/src/
[root@localhost src]# tar zxvf redis-3.2.4.tar.gz
[root@localhost src]# cd redis-3.2.4
[root@localhost redis-3.2.4]# more README.md #minimal系统缺少组件gcc
[root@localhost ~]# yum install -y gcc #安装到自定义路径,方便卸载
[root@localhost redis-3.2.4]# make PREFIX=/usr/local/redis install #修改配置文件
[root@localhost redis-3.2.4]# mkdir /etc/redis
[root@localhost redis-3.2.4]# cp redis.conf /etc/redis/6379.conf
[root@localhost redis-3.2.4]# vim /etc/redis/6379.conf
daemonize yes #no改成yes
logfile "/var/log/redis_6379.log" #日志文件
dir /var/lib/redis #数据目录
requirepass mima #开启密码认证 #服务启动脚本
[root@localhost redis-3.2.4]# cp /usr/local/src/redis-3.2.4/utils/redis_init_script /etc/init.d/redis
[root@localhost redis-3.2.4]# chmod +x /etc/init.d/redis
[root@localhost redis-3.2.4]# vim /etc/init.d/redis
7 EXEC=/usr/local/redis/bin/redis-server
8 CLIEXEC=/usr/local/redis/bin/redis-cli
30 $CLIEXEC -p $REDISPORT -a mima shutdown

  3.启动服务

[root@localhost ~]# /etc/init.d/redis start
[root@localhost ~]# cat /var/log/redis_6379.log
1613:M 07 Dec 18:25:47.132 * Increased maximum number of open files to 10032 (it was originally set to 1024).
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 3.2.4 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 1613
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-' 1613:M 07 Dec 18:25:47.134 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
1613:M 07 Dec 18:25:47.134 # Server started, Redis version 3.2.4
1613:M 07 Dec 18:25:47.134 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. 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 setting after a reboot. Redis must be restarted after THP is disabled.
1613:M 07 Dec 18:25:47.134 * DB loaded from disk: 0.000 seconds
1613:M 07 Dec 18:25:47.134 * The server is now ready to accept connections on port 6379 #修复报错
[root@localhost ~]# echo 512 > /proc/sys/net/core/somaxconn
[root@localhost ~]# echo never > /sys/kernel/mm/transparent_hugepage/enabled
[root@localhost ~]# echo "echo 512 > /proc/sys/net/core/somaxconn" >> /etc/rc.local
[root@localhost ~]# echo "echo never > /sys/kernel/mm/transparent_hugepage/enabled" >> /etc/rc.local
#如果在yum安装方式中已修改以下问题,就不用重复操作
[root@localhost ~]# echo "vm.overcommit_memory = 1" >> /etc/sysctl.conf
[root@localhost ~]# sysctl vm.overcommit_memory=1 #重启redis
[root@localhost ~]# /etc/init.d/redis restart
Please use start or stop as first argument
[root@localhost ~]# /etc/init.d/redis stop
Stopping ...
Redis stopped
[root@localhost ~]# /etc/init.d/redis start
Starting Redis server...

  4.客户端连接读写测试

[root@localhost ~]# /usr/local/redis/bin/redis-cli
127.0.0.1:6379> auth mima
OK
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> set name user2
OK
127.0.0.1:6379> get name
"user2"
127.0.0.1:6379> exit

[redis] linux下安装篇(1)的更多相关文章

  1. Redis linux 下安装

    Redis linux 下安装 下载Redis安装包,可以从Redis中文网站中下载 下载地址:http://www.redis.cn/download.html Redis4.0 稳定版本 使用&l ...

  2. Redis linux 下安装 及扩展配置

    1.首先在/usr/local/ 创建文件夹 reids Cd /usr/local/ mkdir redis 2.把redis安装包放在redis目录下面进行解压phpredis-2.2.4.tar ...

  3. [redis] linux下哨兵篇(3)

    一.前言1.为何部署sentinel哨兵前文redis主从架构中,当主服务故障时,需要手动将从服务切换为主服务,sentinel服务就是将这个过程自动化.主要功能有:1)不时监控主从服务正常运行2)可 ...

  4. [redis] linux下主从篇(2)

    一.前言1.为何要主从架构避免单机故障,主服务器挂掉后,还可以手动切换从服务为主服务继续工作,保持缓存数据完整. 2.主从同步的原理步骤从服务器连接主服务器,发送SYNC命令:主服务器接收到SYNC命 ...

  5. linux 下安装redis以及php Redis扩展

    [php] view plaincopy在CODE上查看代码片派生到我的代码片 linux 下安装redis以及php Redis扩展 环境配置: centos6. nginx/ php/ mysql ...

  6. mac mamp环境 和linux下 安装redis 和可视化工具 Redis Desktop Manager

    mac下安装 第一步:安装redis 1. brew install redis 2.启动服务/usr/local/opt/redis/bin/redis-server 3.配置redis密码访问 编 ...

  7. Linux 下安装 Redis server

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/defonds/article/details/30047611         本文简介了 Linu ...

  8. Linux下安装Redis及搭建主从

    Linux下安装Redis 首先在官网下载对应版本的redis包,这里本人使用的是redis-4.0.8.tar.gz.   然后在服务器中存放redis包的路径下执行tar –vxf redis-4 ...

  9. Linux下安装Redis以及遇到的问题

    参考链接:https://www.cnblogs.com/zdd-java/p/10288734.html https://www.cnblogs.com/uncleyong/p/9882843.ht ...

随机推荐

  1. 使用echart的雷达图的时候,如果文字越界的解决办法记录,标签文字自动换行

    使用echart的雷达图的时候,如果文字越界的解决办法记录,标签文字自动换行 前几天项目中有一个图表的是用echart生成的,遇到一个问题,就是在手机端显示的售时候,如果文字太长就会超出div,之前的 ...

  2. MongoDB 数据类型查询 — $type使用

    MongoDB 使用过程中经常需要根据字段的类型来查询数据, 而MongoDB中查询字段类型是通过$type操作符来实现. $type使用法语: db.集合名.find({$type:类型值}); / ...

  3. Delphi高效定制格式的FormatDateTime

    本人根据歼10博主的此博文的思路进行改进,目的是高效的实现FormatDateTime('YYYY-MM-DD HH:NN:SS.ZZZ', Now); 在DelphiXE3 32Bits环境测试10 ...

  4. 如何通过审计安全事件日志检测密码喷洒(Password Spraying)攻击

    许多渗透测试人员和攻击者通常都会使用一种被称为“密码喷洒(Password Spraying)”的技术来进行测试和攻击.对密码进行喷洒式的攻击,这个叫法很形象,因为它属于自动化密码猜测的一种.这种针对 ...

  5. 数据结构与算法之排序(2)选择排序 ——in dart

    选择排序的算法复杂度与冒泡排序类似,其比较的时间复杂度仍然为O(N2),但减少了交换次数,交换的复杂度为O(N),相对冒泡排序提升很多.算法的核心思想是每次选出一个最小的,然后与本轮循环中的第一个进行 ...

  6. 20155322 2016-2017-2 《Java程序设计》第4周学习总结

    20155322 2016-2017-2 <Java程序设计>第4周学习总结 教材学习内容总结 本周的学习内容为课本第六章与第七章: 第六章主要讲继承和多态.首先是我们为什么要学习继承和多 ...

  7. 单线程的redis为什么吞吐量可以这么大

    原文:单线程的redis为什么吞吐量可以这么大 一.Redis的高并发和快速原因 1.redis是基于内存的,内存的读写速度非常快: 2.redis是单线程的,省去了很多上下文切换线程的时间: 3.r ...

  8. 浅入tcp

    1.认识TCP tcp协议是传输层协议,它的最主要的3个特点是面向连接.可靠保证.基于字节流.当应用层把数据给tcp层时,注意如果数据大于MSS是要在tcp层进行分段的.tcp协议为了保证不丢包会给每 ...

  9. 【转载】C/C++杂记:虚函数的实现的基本原理

    原文:C/C++杂记:虚函数的实现的基本原理 1. 概述 简单地说,每一个含有虚函数(无论是其本身的,还是继承而来的)的类都至少有一个与之对应的虚函数表,其中存放着该类所有的虚函数对应的函数指针.例: ...

  10. Luogu2183【国家集训队】礼物

    题面 题解 易得答案为 $$ \sum_{i=1}^m\binom{n-\sum_{j=1}^{i-1}w_j}{\sum_{j=1}^iw_j} $$ 扩展$\text{Lucas}$即可 代码 # ...