一、常见安装方式

【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. PHP mysqli_fetch_fields() 函数

    mysqli_fetch_fields() 函数返回结果集中代表字段(列)的对象的数组. 返回结果集中代表字段(列)的对象的数组,然后输出每个字段名称.表格和最大长度: <?php // 假定数 ...

  2. 在Postman脚本中发送请求(pm.sendRequest)

    Postman的Collection(集合)/Folder(集合的子文件夹)/Request(请求)都有Pre-request script和Tests两个脚本区域, 分别可以在发送请求前和请求后使用 ...

  3. 利用状态机(FSM)进行简单的uart串口发送数据

    module uart_tx(clk,rst_n,key,txd); input clk; input rst_n; input key; output reg txd; :] state; :] b ...

  4. Nginx之configure选项

    1. 通用配置项 --prefix=<path>:Nginx 安装的根路径,所有其他的路径都要依赖于该选项. --sbin-path=<path>:指定 Nginx 二进制文件 ...

  5. QAbstractTableModel中的data()到底执行几遍???

    发现问题的过程  1.一个普通的继承 QAbstractTableModel 的类 class CurrencyModel : public QAbstractTableModel { public: ...

  6. springboot内置分页技术

    1,在pom.xml中注入分页的配置 <dependency> <groupId>com.github.pagehelper</groupId> <artif ...

  7. 3.ibatis4种事务类型浅析

    ibatis中Transaction有四个实现类 其中spring的SqlMapClientFactoryBean类中 private Class transactionConfigClass = E ...

  8. debian上搭建私有docker仓库

    docker官方仓库是docker hub.虽然很好用,但是无法满足私密性的要求. 如果只需要在局域网内或者朋友圈内分享各自制作的image,那么,搭建属于自己的docker仓库变得很有必要. 一.环 ...

  9. LC 979. Distribute Coins in Binary Tree

    Given the root of a binary tree with N nodes, each node in the tree has node.val coins, and there ar ...

  10. 有关react-native的最常用的库(文件、样式、UI组件)

    一.对文件的处理 1.react-native-fs 2.react-native-file-selector 3.MaterialFilePicker 二.React-Native 样式指南 1.r ...