【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/ ...
随机推荐
- WDA-参考路径
1. SAP Netweave安装 https://wenku.baidu.com/view/b3ac371a227916888486d77c.html?sxts=1545717961793 2. ...
- ubuntu16.04设置电池充电阈值
thinkpad在安装ubuntu16.04之后,设置充电阈值: 方法一: 使用双系统,在windows下使用联想的Lenovo setting center设置之后,在ubuntu之下也可以保持相同 ...
- Recursion递归
/*java.lang 核心包 如 String Math Integer System Thread等 拿来直接用 * java.awt 窗口工具 GUI * java.net 网络包 * java ...
- docker-composer
1.安装docker-composer 参考官方 安装1.20.1 sudo curl -L https://github.com/docker/compose/releases/download ...
- fasta/fastq格式解读
1)知识简介--------------------------------------------------------1.1)测序质量值 首先在了解fastq,fasta之前,了解一下什么是质量 ...
- Spring Boot 连接池
配置方法 基于当前的1.5.2.RELEASE的Spring Boot. 依照官方文档,如果增加了如下依赖的配置,或者类路径中存在spring-boot-starter-jdbc的jar,那么已默认启 ...
- 常用快捷键及eclipise快捷键
win+R 运行...win+D 桌面win+E 打开我的电脑win+F 搜索 ctrl+D删除光标所在行
- java非常好用的读取文件的流的代码
学过java的都知道java中有非常多的读取文件流的操作.这个要回到javase的io操作了.io流说实话,初学者学的肯定会非常混乱,那么多流,什么输入流,输出流,什么文件流,什么字节流,等等.我在这 ...
- 常用修图工具的一些使用技巧及问题解决方法——ai
一.ai如何修改画布大小 一. ai如何修改画布大小: 1. 左上角菜单中的文件——文档设置(也可以直接点菜单栏下边的控制栏中的文档设置) 2. 文档设置界面中,点击右上角“编辑画板“ 3. 此时面板 ...
- 【校招面试 之 C/C++】第13题 C++ 指针和引用的区别
1.指针和引用的定义和性质区别: (1)指针:指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元:而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已.如: int ...