一、常见安装方式

【0】环境

  OS:CentOS7.5

  Redis:4.0.14

  yum源:本地源

【1】检查安装 gcc 依赖环境

gcc -v
#如果没安装会报错类似于 command not find

#安装gcc环境(注意,这个需要自己配置yun源,如果是网络源需要网络保持畅通--yum源配置
yum install gcc-c++

【2】下载解压安装redis

【2.1】下载

  官网:https://redis.io/download (这里我用的是windows下载,然后上传,公司环境特殊 虚拟机没网络)

  linux下载:wget http://download.redis.io/releases/redis-4.0.14.tar.gz

【2.2】安装

下载之后

mkdir -p /data/redis/app
cd /data/redis/app
#然后拷贝redis文件过来
tar -zxvf redis-4.0..tar.gz
cd redis-4.0./
make
cd src/
make test
#这里报错了,说我需要tcl8.5版本以上才能使用这个(记得安装好之后,再运行一次make test啊!)  


#如果有网络yum源,则直接

yum -y install tcl

# 官网下载地址:https://sourceforge.net/projects/tcl/

# wget https://nchc.dl.sourceforge.net/project/tcl/Tcl/8.6.1/tcl8.6.1-src.tar.gz

#tcl安装tcl8.5.9-src.tar.gz
cd /tmp
tar -zxvf tcl8.6.1-src.tar.gz
cd tcl8.6.1/unix/
./configure --prefix=/usr/local/tcl/ --enable-shared
make
make install
echo "export PATH=${PATH}:/usr/local/tcl/bin" >> /etc/profile
source /etc/profile

#安装redis
cd
/data/redis/app/redis-4.0.14/
mkdir data
cd src
make PREFIX=/data/redis/app/redis-4.0.14/data install
  

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

 到这里就算完成了,但我们看看这几个命令分别是干什么用的呢?
redis-benchmark:性能测试工具
redis-check-aof:aof 文件修复工具
redis-check-rdb:rdb 文件检查工具(快照持久化文件)
redis-cli:命令行客户端
redis.cnf:复制过来的配置文件,用于后端启动
redis-sentinel:哨兵接口工具
redis-server:服务启动工具

【2.3】启动redis

#【2.3.1】前端启动
#切入到redis安装目录
cd /data/redis/app/redis-4.0./data/bin
./redis-server

OK

#【2.3.2】后端启动
#修改复制到redis安装目录的redis.conf配置文件
vim redis.conf
把如下图 daemonize 的 no 改为 yes

  

  

#正式启动,利用server与.conf

  ./redis-server ./redis.conf

  

 #【2.3.3】核验redis是否启动

  ps -ef|grep redis

    

【2.4】关闭redis

./redis-cli shutdown

ps -ef|grep redis

  

【2.5】相关常用操作

//首先链接客户端
[root@CO7 redis]# ./bin/redis-cli
//检查网络是否可以
127.0.0.1:> ping
PONG
//设置一个键值对
127.0.0.1:> set name cheny
OK
//获取刚刚设置的键值对
127.0.0.1:> get name
"cheny"
//查看所有的键
127.0.0.1:> keys *
) "name"
//删除name这个键
127.0.0.1:> del name
(integer)
127.0.0.1:> keys *
(empty list or set)
127.0.0.1:>

【3】常见连接使用故障

1、connect timed out----关闭防火墙或者开启6379端口
2、connection refused : connect------将redis.conf中的127.0.0.1改成虚拟机地址--注意是虚拟机地址啊

            vim把redis-conf的第68行的bind 127.0.0.1改为bind 0.0.0.0,然后重启redis即可

参考:https://blog.51cto.com/13719714/2175486

二、生产上的安装

  生产上必须要注意的是安全问题,要用redis用户安装不要用root用户安装,不要用127.0.0.1作为绑定地址。

【1】下载 redis 软件

官网:https://redis.io/download (这里我用的是windows下载,然后上传,公司环境特殊 虚拟机没网络)
linux下载:wget http://download.redis.io/releases/redis-4.0.14.tar.gz

【2】使用root 创建 redis 用户和组

groupadd -g  redis
useradd -u -g redis
id redis
passwd redis

【3】调整 redis 用户的 ulimit

vi /etc/security/limits.conf
#输入以下内容
redis  hard  nofile  
redis  soft  nofile  
redis  hard  nporc  
redis  soft  nproc  8192
#nproc 用户创建进程数 nofile 进程打开文件次数限制,更多参考《操作系统环境配置

【4】构建安装路径与数据路径

mkdir -p /data/redis
chown -R redis:redis /data/redis
mkdir -p /data/redis/log
mkdir -p /data/redis/conf
mkdir -p /data/redis/data
chown -R redis:redis /data/redis
chmod -R 777 /data/redis

【5】安装

#假设我们软件下载/上传在 /soft 目录下
chmod -R /soft
su -l redis
cd /soft
tar -zxvf redis-4.0.14.tar.gz
cd redis-4.0.14
make
cd ./src
make PREFIX=/data/redis/data install #注意,这里的 PREFIX 一定要大写
cd ../
cp redis.conf /data/redis/conf
#echo "export PATH=${PATH}:/data/redis/data/bin" >> /etc/profile
echo "export PATH=${PATH}:/data/redis/data/bin" >> ~/.bash_profile
source ~/.bash_profile #source /etc/profile
su -l root

【6】OS 调优

#【6.1】调整 vm.overcommit_memory
#vi /etc/sysctl.conf
echo "vm.overcommit_memory=1" >> /etc/sysctl.conf #改参数关注的是内存分配策略
#,标识内核将检查是否有足够的可用内存供应用进程使用;如果有则申请允许,否则内存申请失败,并返回错误给应用进程。
#,标识内核允许分配所有的物理内存,而不管当前的内存状态如何。
#,标识内核允许分配超过所有物理内存和交换空间(swap)的内存 #【6.2】调整 Transparent Huge Pages(THP)
#解决:redis 做 rdb 时会有部分请求超时的情况 echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo "never > /sys/kernel/mm/transparent_hugepage/enabled" >> /etc/rc.local #【6.3】TCP backlog设置(详情见后续redis配置参数)
echo > /proc/sys/net/core/somaxconn
echo "net.core.somaxconn=2048" >> /etc/sysctl.conf
#动态加载
sysctl -p #此参数确定了TCP连接中已完成队列(完成三次握手之后)的长度
#此值必须不大于linux系统定义的 /proc/sys/net/core/somaxconn的值,默认511
#而 linux 默认参数值是128,当系统并发量大并且客户端缓慢时,可以将这2个参数一起参考设置。

【7】调整redis配置文件  redis.conf(更多参考 redis 配置文件

vi /data/redis/conf/redis.conf
daemonize yes
logfile "/data/redis/log/redis.log"
#requirepass
bind 0.0.0.0
pidfile /data/redis/conf/redis.pid
dbfilename redis.rdb
dir /data/redis/conf/

【8】启动与连接及关闭

【8.1】启动
redis-server /data/redis/conf/redis.conf #默认端口是6379
【8.2】查看
ps -ef|grep redis
【8.3】连接登录
redis-cli -a 123456
【8.4】关闭redis
bash环境: redis-cli -a 123456 shutdown
redis环境: shutdown
Bash环境: pkill pid
【8.5】退出登录
exit/ctrl + c 都可以
【8.6】开机自启
vim /etc/rc.local
su -l redis -c "/data/redis/data/bin/redis-server /data/redis/conf/redis.conf"

【9】封装 redis 服务成系统服务(参考linux启动与关闭

#【9.1】构造文件
vi /usr/lib/systemd/system/redis.service #【9.2】文件内容
[unit]
Description=Redis
After=syslog.target network.target remote-fs.target nss-lookup.target [Service]
Type=forking
User=redis
Group=redis
PIDFile=/data/redis/conf/redis.pid
ExecStart=/data/redis/data/bin/redis-server /data/redis/conf/redis.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/data/redis/data/bin/redis-cli -a shutdown
PrivateTmp=true [Install]
WantedBy=multi-user.target #【9.3】刷新守护进程,设置为开机自启
systemctl daemon-reload #重载系统服务
systemctl enable redis #设置开机自启 #【9.4】把该文件给 redis用户授权
chown -R redis:redis /usr/lib/systemd/system/redis.service
chmod -R 755 /usr/lib/systemd/system/redis.service
#【9.5】封装成系统服务后 常用启动关闭 redis命令
systemctl start redis  #启动redis
systemctl stop redis   #关闭redis
systemctl restart redis #重启redis
systemctl status redis #查看redis服务状态

三、4.0以后的快速安装

#下载安装解压好之后
cd /soft/redis-4.0./utils
./install_server.sh

  

很明显,上面的 selected config:就是要我们输入实例的端口,配置文件,日志文件,数据目录,可执行命令。这些都是需要提前准备好目录和文件的。

这里就没写准备工作了,大家自行理解;

后面的Copied /tmp/6479.cnf => /etc/init.d/redis_6479  这个redis_6479就是我们的自定义系统服务名称了

倒数3-4行的Successfully..... 就是添加了开机自启了,不过这里用的是 centos6的自定义服务和自启方式。。不过没关系,这都是兼容的,就是自启可能会有点问题。


如何修改秘密?
  《1》修改配置文件,requirepass 后面的密码,然后重启
  《2》在线登录上客户端后修改:config set requirepass 123456   

四、redis图形化界面软件

  

Redis是一个超精简的基于内存的键值对NOSQL数据库(key-value),一般对并发有一定要求的应用都用其储存session,乃至整个数据库。不过它公自带一个最小化的命令行式的数据库管理工具redis-cli,但使用起来并不方便。所幸Github上面已经有了很多图形化的管理工具,如果你不想对着黑屏打码的话,这是一些选择。

Redis Desktop Manager

一款基于Qt5的跨平台Redis桌面管理软件

支持: Windows 7+, Mac OS X 10.10+, Ubuntu 14+

特点: C++ 编写,响应迅速,性能好。但不支持数据库备份与恢复。

项目地址: https://github.com/uglide/RedisDesktopManager

Redis Studio

国人开发的一款C++编写的redis管理工具,仅支持windows,支持xp操作系统。

项目地址: https://github.com/cinience/RedisStudio

  

Redis Client

国人开发的一款,用Java编写,功能丰富

项目地址: https://github.com/caoxinyu/RedisClient

Redis(1.1)linux下安装redis的更多相关文章

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

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

  2. Linux 下安装 Redis server

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

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

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

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

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

  5. Linux 下安装redis

    记录一下linux下的安装步骤,还是比较复杂的 1. 下载redis-2.8.19.tar.gz: ftp传到linux01上: 解压: tar –zxvf redis-2.8.19.tar.gz 2 ...

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

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

  7. linux下安装Redis以及phpredis模块

    一:redis的安装 1. 首先上官网下载Redis 压缩包,地址:http://redis.io/download 下载 2. 通过远程管理工具,将压缩包拷贝到Linux服务器中,执行解压操作 3. ...

  8. windows下与linux下安装redis及redis扩展

    1.        Redis的介绍 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起 ...

  9. redis 系列1 linux下安装说明

    一. 安装环境 操作系统:centos 7 ,redis版本4.06,客户端windows 7 ,vs2015. 1.1 安装前的条件 yum -y install gcc-c++ 判断是否安装了gc ...

  10. Linux下安装redis的详细过程(redis版本为4.0.10)

    1.安装redis步骤 1.推荐进入到linux路径/usr/local/src 2.$ wget http://download.redis.io/releases/redis-4.0.10.tar ...

随机推荐

  1. SpringBoot+Mybatis-Plus两种分页方法

    用到的依赖: <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus ...

  2. [Luogu] 选择客栈

    https://www.luogu.org/problemnew/show/P1311 思路就是,从1到n枚举,输入color和price的值,我们需要记录一个距离第二个客栈最近的咖啡厅价钱合理的客栈 ...

  3. NOIP模拟9

    #rank3,开心 话说这次考试时,心态并不是很好,考试前一天看了DeepinC大佬的博客,上次他rank15就 感觉炸成那样,那我上次rank30算什么?反正内心虚得一比;昨天晚上做梦梦到自己模拟赛 ...

  4. Django基础之初识视图

    编写视图 一个视图函数,或者简短来说叫做视图,是一个简单的Python函数,它接受web请求,并且返回web响应. 响应可以是一个网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一 ...

  5. Codeforces 1246D/1225F Tree Factory (构造)

    题目链接 https://codeforces.com/contest/1246/problem/D 题解 首先考虑答案的下界是\(n-1-dep\) (\(dep\)为树的深度,即任何点到根的最大边 ...

  6. hdu6568 Math (概率dp)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=6568 题意: 在$0$到$L$的坐标轴运输货物,在每个整数点可能丢失货物,丢失概率为$p$,丢失后可 ...

  7. 1 - ImageNet Classification with Deep Convolutional Neural Network (阅读翻译)

    ImageNet Classification with Deep Convolutional Neural Network 利用深度卷积神经网络进行ImageNet分类 Abstract We tr ...

  8. LeetCode 122. 买卖股票的最佳时机 II(Best Time to Buy and Sell Stock II)

    题目描述 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格. 设计一个算法来计算你所能获取的最大利润.你可以尽可能地完成更多的交易(多次买卖一支股票). 注意:你不能同时参与多笔交易(你 ...

  9. POJ 3083 -- Children of the Candy Corn(DFS+BFS)TLE

    POJ 3083 -- Children of the Candy Corn(DFS+BFS) 题意: 给定一个迷宫,S是起点,E是终点,#是墙不可走,.可以走 1)先输出左转优先时,从S到E的步数 ...

  10. HTTP 与 HTTPS协议

    HTTP 协议 通讯协议:服务器和客户端进行数据交互的形式 HTTP 工作原理:HTTP 协议工作于客户端-服务端架构为上.浏览器作为 HTTP 客户端通过 URL 向 HTTP 服务端即 Web 服 ...