【redis】linux上的安装与配置(详细图解)
转载自:https://blog.csdn.net/yjqyyjw/article/details/73293455;经过个人测试也适用于当前最新稳定的3.x的版本,顺便填了几个坑。
1、下载
http://redis.io/download
2、解压至任一目录
tar xzf redis-2.8.17.tar.gz
3、编译并安装
cd redis-2.8.17
make
cd src
make install PREFIX=/usr/local/redis
注意:make编译如果失败,因为没有安装gcc服务(这里补充,还可能导致出错的地方是没有安装jemalloc,可以yum install -y jemalloc安装[安装完还要配置些东西用后者吧]或make时用make MALLOC=libc)
yum install gcc
云安装gcc服务,之后提示下载文件y确认
开始下载,提示安装y确认
rpm -qa |grep gcc查看安装是否成功
这里补充,安装完gcc然后make后(make MALLOC=libc)和后续make install后会出现四行蓝色的INSTALL install;此时可以用ll(ls -l)看看src里有哪些东西
4、将配置文件移动到redis安装目录下(补充,此文件在src上级目录里先cd ..;而且etc需要先mkdir才有)
mv redis.conf /usr/local/redis/etc
5、启动服务、配置
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf(注意,如果执行命令的bash路径就在redis/bin下,那么可以都用相对路径,第二个参数可以是../etc/redis.conf,个人的理解是在终端运行程序那么启动程序时程序会认为自己所在的位置就是终端的当前路径
,这个比如java里用classLoader.getResource("aa.txt")那么其实这个classLoader在创建时就已经设置了它的路径,而对于可执行程序而言就是启动时就设置了终端所在的路径,然后程序里用到的相对路径都是基于那个值的,这个值可以理解为private变量我们无法感知到但它确实存在某处,而
且也不提供对外查询或设置该值的接口,只是程序里如果用到了相对路径保存或读取文件系统能知道;个人再次猜测是程序启动时操作系统都会记录此进程的工作目录,即bash的当前目录,然后此进程调用系统api如保存文件,操作系统执行这个请求时会判断是相对路径还是绝对路径,如果是相对路径则用
注册的工作目录进行补全。这里的重点是无论读文件还是写文件最终都是由操作系统api完成也就是需要操作系统出马(黑客技术除外),自然它能用到此进程的相关启动信息)
第一个是启动redis服务器
第二个是启动服务器所需的配置(补充,这里的解释是有问题的,可以通过file redis.conf发现它只是个文本文件,这里应该是第二个redis.conf是第一个redis-server的参数)
补充,这里会发现按下Ctrl + C退出不了,提示saving DB失败由于权限不够;这是因为你用的不是root用户,而如果你的某个用户等同于root(个人的就是这样虽然不是root但对我而言创建的第一个账户就类似我的root)可以chown -R username redis
将redis的所有者改为username,然后还退出不了可以chmod -R 771 redis(这里只需要第一个是7即可表示文件所有者对这些文件具备rwx的权限)
6、默认情况,Redis不是在后台运行,我们需要把redis放在后台运行
vim /usr/local/redis/etc/redis.conf
将daemonize的值改为yes
7、让redis开机自启
vim /etc/rc.local
加入
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
8、客户端链接
/usr/local/redis/bin/redis-cli
9、停止服务
/usr/local/redis/bin/redis-cli shutdown
或者
pkill redis-server
10、/usr/local/redis/bin目录下的几个关键文件
redis-benchmark:redis性能测试工具
redis-check-aof:检查aof日志的工具
redis-check-dump:检查rdb日志的工具
redis-cli:连接用的客户端
redis-server:redis服务进程
11、conf 配置项介绍
daemonize:如需要在后台运行,把该项的值改为yes
pidfile:把pid文件放在/var/run/redis.pid,可以配置到其他地址(我那是redis_6379.pid)
bind:指定redis只接收来自该IP的请求,如果不设置,那么将处理所有请求,在生产环节中最好设置该项(补充,这个解释不好,其实就是redis启动时会绑定的ip,而且默认是127.0.0.1也就是说只接受本地主机的请求,0.0.0.0才是接受本机所有网卡ip的请求或者注释bind=...那么redis默认绑定0.0.0.0)
port:监听端口,默认为6379
timeout:设置客户端连接时的超时时间,单位为秒
loglevel:等级分为4级,debug,revbose,notice和warning。生产环境下一般开启notice
logfile:配置log文件地址,默认使用标准输出,即打印在命令行终端的端口上
database:设置数据库的个数,默认使用的数据库是0
save:设置redis进行数据库镜像的频率(即将redis的内存数据key-value存储到本地db里,这个跟redis里有多少key-value被修改也有关)
rdbcompression:在进行镜像备份时,是否进行压缩
dbfilename:镜像备份文件的文件名
dir:数据库镜像备份的文件放置的路径
slaveof:设置该数据库为其他数据库的从数据库
masterauth:当主数据库连接需要密码验证时,在这里设定
requirepass:设置客户端连接后进行任何其他指定前需要使用的密码
maxclients:限制同时连接的客户端数量
maxmemory:设置redis能够使用的最大内存
appendonly:开启appendonly模式后,redis会把每一次所接收到的写操作都追加到appendonly.aof文件中,当redis重新启动时,会从该文件恢复出之前的状态
appendfsync:设置appendonly.aof文件进行同步的频率
vm_enabled:是否开启虚拟内存支持
vm_swap_file:设置虚拟内存的交换文件的路径
vm_max_momery:设置开启虚拟内存后,redis将使用的最大物理内存的大小,默认为0
vm_page_size:设置虚拟内存页的大小
vm_pages:设置交换文件的总的page数量
vm_max_thrrads:设置vm IO同时使用的线程数量
【redis】linux上的安装与配置(详细图解)的更多相关文章
- 在Linux上怎么安装和配置Apache Samza
samza是一个分布式的流式数据处理框架(streaming processing),它是基于Kafka消息队列来实现类实时的流式数据处理的.(准确的说,samza是通过模块化的形式来使用kafka的 ...
- java环境--JDK和Tomcat在linux上的安装和配置
Tomcat在Linux上的安装与配置 以下使用的Linux版本为: Redhat Enterprise Linux 7.0 x86_64,Tomcat版本为tomcat-7.0.54.1.下载JDK ...
- Linux上centOs6+安装mysql5.7详细教程 - 前端小鱼塘
https://coyhom.github.io/ 人类的本质是复读机,作为一个非linux专业人员学习linux最好的办法是重复 环境centos6.5 版本5.7 1: 检测系统是否自带安装mys ...
- Nginx 在 Linux 上的安装和配置
一.Nginx的安装 1.单台Nginx的安装 Nginx在Linux上的安装可以参考这篇博客:http://blog.csdn.net/molingduzun123/article/details/ ...
- nginx在linux上的安装与配置详解(一)
Nginx的安装与配置详解 (1)nginx简介 nginx概念: Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like ...
- Tomcat在Linux上的安装与配置
以下使用的Linux版本为: Redhat Enterprise Linux 6.5 x86_64,Tomcat版本为tomcat-7.0.54. 1.下载JDK与Tomcat. jdk下载地址 ...
- LINUX 上源代码安装与配置samba服务,支持从windows上读写LINUX文件。
###动机###在windows编写代码文件比较方便,因为有source insight.但是需要在LINUX上编译.一种办法就是使用samba文件共享. [1] 下载samba代码.按照config ...
- Tomcat与jdk在Linux上的安装与配置
本人qq群也有许多的技术文档,希望可以为你提供一些帮助(非技术的勿加). QQ群: 281442983 (点击链接加入群:http://jq.qq.com/?_wv=1027&k=29Lo ...
- redis在linux上的安装和配置
https://blog.csdn.net/lzding/article/details/52040501(直接可以用的安装phpredis) http://www.runoob.com/redis/ ...
随机推荐
- hibernate注解主键生成策略
Id生成策略: @GeneratedValue,JPA通用策略生成器 . JPA提供的四种标准用法为TABLE,SEQUENCE,IDENTITY,AUTO. TABLE:使用一个特定的数据库表格来 ...
- 定制sudo的密码保持时间以及如何不需要密码
由于每次sudo什么都要输入密码..好麻烦.所以我要把它的密码记住时间修改一下,变得长一点. 先输入命令 vim /etc/sudoers找到下面行 Defaults env_reset 改变此行为下 ...
- 机房servlet类实验
源代码1: import java.io.*;import javax.servlet.*;import javax.servlet.http.*;public class accept extend ...
- homework 补第三题
上次只写了两道题 发现少了一道 所以今天补上 4 . 另外补上今天的程序代码 代码 1. 2. 3 4 运行截图 1. 2 3
- python并行编程
一.编程思想 并行编程的思想:分而治之,有两种模型 1.MapReduce:将任务划分为可并行的多个子任务,每个子任务完成后合并得到结果 例子:统计不同形状的个数. 先通过map进行映射到多个子任务, ...
- dubbo hessian+dubbo协议
Dubbo缺省协议采用单一长连接和NIO异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况 Hessian协议用于集成Hessian的服务,Hessian底层采 ...
- LOG4J spring与mybatis整合
1.导入包log4j-1.2.17.jar <dependency> <groupId>log4j</groupId> ...
- Android模拟器内安装应用
一.通过apk安装器安装应用 1.下载apk安装器(网上随便搜一个就可以) 2.下载要测试的应用的apk,我这里下载的是微信的apk 3.打开apk安装器,点击右上角的Devices选择要安装到的设备 ...
- window环境mysql解压版配置
1.下载并解压 到官网下载mysql-5.5.10-win32.zip,然后将mysql解压到任意路径,如:C:\mysql-5.5.10-win32 2.设置环境变量 打开计算机->属性-&g ...
- 'org.hibernate.SQLQuery' is deprecated
'org.hibernate.SQLQuery' is deprecated 在Hibernate5.2之后,SQLQuery已经被摒弃,改用NativeQuery代替了. 在Hibernate中使用 ...