热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linux冲去redis,Linux安装单机版Redis的完整步骤

前言redis是当前比较热门的nosql系统之一,它是一个key-value存储系统。和memcached类似,但很大程度补偿了memcached的不足

前言

redis是当前比较热门的nosql系统之一,它是一个key-value存储系统。和memcached类似,但很大程度补偿了 memcached的不足,它支持存储的value类型相对更多,包括string、list、set、zset和hash。这些数据类型都支持 push/pop、add/remove及取交集并集和差集及更丰富的操作。在此基础上,redis支持各种不同方式的排序。redis数据都是缓存在计算机内存中,并且会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件。

最近在迁移测试环境,有用到redis,记录下linux安装单机版redis的过程,下面话不多说了,来一起看看详细的介绍吧

验证gcc-c++环境

redis使用c语言开发,所以要运行在linux上,需要gcc-c++的环境。

检查是否有gcc-c++环境:

rpm -qa | grep gcc-c++

如果没有进行安装:

yum install gcc-c++

yum -y install cpp binutils glibc glibc-kernheaders glibc-common glibc-devel gcc make gcc-c++ libstdc++-devel tcl

安装redis

首先下载安装包:

wget http://download.redis.io/releases/redis-4.0.10.tar.gz

然后解压至指定目录:

tar -zxvf redis-4.0.10.tar.gz -c /usr/local/

进入到解压后的目录之后进行编译:

cd /usr/local/redis-4.0.10

make

编译成功后进行安装,设置安装路径:

make install prefix=/usr/local/redis

安装完成后就可以到对应的目录下启动:

cd /usr/local/redis/bin

./redis-server

顺利的话,redis已经正常启动,但是在终端会显示启动内容,如果不希望显示的话,可以修改下配置。

首先去copy安装包中的redis.conf

cp /root/redis-4.0.10/redis.conf /usr/local/redis

然后打开配置文件,将文件中的daemonize设置为yes。

vi redis.conf之后进行编辑,如下截图:

099804409fb4ad13fb1412876aae6ab2.png

然后带着配置项启动即可:

./redis-server redis.conf

验证与操作

redis安装完之后,我们校验下是否正常。

首先我们启动测试端:./redis-cli,然后进行一些简单的操作,如下截图:

e18de44412b74ee353eb74829233103f.png

配置说明

##基本配置

daemonize no //是否以后台进程启动

databases 16 //创建database的数量(默认选中的是database 0)

save 900 1 #刷新快照到硬盘中,必须满足两者要求才会触发,即900秒之后至少1个关键字发生变化。

save 300 10 #必须是300秒之后至少10个关键字发生变化。

save 60 10000 #必须是60秒之后至少10000个关键字发生变化。

stop-writes-on-bgsave-error yes #后台存储错误停止写。

rdbcompression yes #使用lzf压缩rdb文件。

rdbchecksum yes #存储和加载rdb文件时校验。

dbfilename dump.rdb #设置rdb文件名。

dir ./ #设置工作目录,rdb文件会写入该目录。

//主从配置

slaveof //设为某台机器的从服务器

masterauth //连接主服务器的密码

slave-serve-stale-data yes # 当主从断开或正在复制中,从服务器是否应答

slave-read-only yes #从服务器只读

repl-ping-slave-period 10 #从ping主的时间间隔,秒为单位

repl-timeout 60 #主从超时时间(超时认为断线了),要比period大

slave-priority 100 #如果master不能再正常工作,那么会在多个slave中,选择优先值最小的一个slave提升为master,优先值为0表示不能提升为master。

repl-disable-tcp-nodelay no #主端是否合并数据,大块发送给slave

slave-priority 100 //从服务器的优先级,当主服挂了,会自动挑slave priority最小的为主服

#安全

requirepass foobared # 需要密码

rename-command config b840fc02d524045429941cc15f59e41cb7be6c52 #如果公共环境,可以重命名部分敏感命令 如config

#限制

maxclients 10000 #最大连接数

maxmemory #最大使用内存

maxmemory-policy volatile-lru #内存到极限后的处理

volatile-lru -> #lru算法删除过期key

allkeys-lru -> #lru算法删除key(不区分过不过期)

volatile-random -> #随机删除过期key

allkeys-random -> #随机删除key(不区分过不过期)

volatile-ttl -> #删除快过期的key

noeviction -> #不删除,返回错误信息

#解释 lru ttl都是近似算法,可以选n个,再比较最适宜t踢出的数据

maxmemory-samples 3

#日志模式

appendonly no #是否仅要日志

appendfsync no # 系统缓冲,统一写,速度快

appendfsync always # 系统不缓冲,直接写,慢,丢失数据少

appendfsync everysec #折衷,每秒写1次

no-appendfsync-on-rewrite no #为yes,则其他线程的数据放内存里,合并写入(速度快,容易丢失的多)

auto-aof-rewrite-percentage 100 #当前aof文件是上次重写是大n%时重写

auto-aof-rewrite-min-size 64mb #aof重写至少要达到的大小

#慢查询

slowlog-log-slower-than 10000 #记录响应时间大于10000微秒的慢查询

slowlog-max-len 128 # 最多记录128条

#服务端命令

time #返回时间戳+微秒

dbsize #返回key的数量

bgrewriteaof #重写aof

bgsave #后台开启子进程dump数据

save #阻塞进程dump数据

slaveof host port #做host port的从服务器(数据清空,复制新主内容)

slaveof no one #变成主服务器(原数据不丢失,一般用于主服失败后)

flushdb #清空当前数据库的所有数据

flushall #清空所有数据库的所有数据(误用了怎么办?)

shutdown [save/nosave] #关闭服务器,保存数据,修改aof(如果设置)

slowlog get #获取慢查询日志

slowlog len #获取慢查询日志条数

slowlog reset #清空慢查询

config get #选项(支持*通配)

config set #选项 值

config rewrite #把值写到配置文件

config restart #更新info命令的信息

debug object key #调试选项,看一个key的情况

debug segfault #模拟段错误,让服务器崩溃

object key (refcount|encoding|idletime)

monitor #打开控制台,观察命令(调试用)

client list #列出所有连接

client kill #杀死某个连接 client kill 127.0.0.1:43501

client getname #获取连接的名称 默认nil

client setname "名称" #设置连接名称,便于调试

#连接命令

auth 密码 #密码登陆(如果有密码)

ping #测试服务器是否可用

echo "some content" #测试服务器是否正常交互

select 0/1/2... #选择数据库

quit #退出连接

总结

搭建redis还是比较简单的,有兴趣的小伙伴可以亲自试验下,下次再尝试下搭个redis集群。

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对萬仟网的支持。



推荐阅读
  • 在 CentOS 6.5 系统上部署 VNC 服务器的详细步骤与配置指南
    在 CentOS 6.5 系统上部署 VNC 服务器时,首先需要确认 VNC 服务是否已安装。通常情况下,VNC 服务默认未安装。可以通过运行特定的查询命令来检查其安装状态。如果查询结果为空,则表明 VNC 服务尚未安装,需进行手动安装。此外,建议在安装前确保系统的软件包管理器已更新至最新版本,以避免兼容性问题。 ... [详细]
  • 在CentOS 7环境中安装配置Redis及使用Redis Desktop Manager连接时的注意事项与技巧
    在 CentOS 7 环境中安装和配置 Redis 时,需要注意一些关键步骤和最佳实践。本文详细介绍了从安装 Redis 到配置其基本参数的全过程,并提供了使用 Redis Desktop Manager 连接 Redis 服务器的技巧和注意事项。此外,还探讨了如何优化性能和确保数据安全,帮助用户在生产环境中高效地管理和使用 Redis。 ... [详细]
  • 本文详细介绍了 InfluxDB、collectd 和 Grafana 的安装与配置流程。首先,按照启动顺序依次安装并配置 InfluxDB、collectd 和 Grafana。InfluxDB 作为时序数据库,用于存储时间序列数据;collectd 负责数据的采集与传输;Grafana 则用于数据的可视化展示。文中提供了 collectd 的官方文档链接,便于用户参考和进一步了解其配置选项。通过本指南,读者可以轻松搭建一个高效的数据监控系统。 ... [详细]
  • 为了在Hadoop 2.7.2中实现对Snappy压缩和解压功能的原生支持,本文详细介绍了如何重新编译Hadoop源代码,并优化其Native编译过程。通过这一优化,可以显著提升数据处理的效率和性能。此外,还探讨了编译过程中可能遇到的问题及其解决方案,为用户提供了一套完整的操作指南。 ... [详细]
  • 本文介绍了如何在 Windows 系统上利用 Docker 构建一个包含 NGINX、PHP、MySQL、Redis 和 Elasticsearch 的集成开发环境。通过详细的步骤说明,帮助开发者快速搭建和配置这一复杂的技术栈,提升开发效率和环境一致性。 ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中配置 fstab 文件以实现开机自动挂载 NFS 共享目录的方法,并解决了常见的配置失败问题。 ... [详细]
  • oracle c3p0 dword 60,web_day10 dbcp c3p0 dbutils
    createdatabasemydbcharactersetutf8;alertdatabasemydbcharactersetutf8;1.自定义连接池为了不去经常创建连接和释放 ... [详细]
  • Python 3 Scrapy 框架执行流程详解
    本文详细介绍了如何在 Python 3 环境下安装和使用 Scrapy 框架,包括常用命令和执行流程。Scrapy 是一个强大的 Web 抓取框架,适用于数据挖掘、监控和自动化测试等多种场景。 ... [详细]
  • 如何在Linux服务器上配置MySQL和Tomcat的开机自动启动
    在Linux服务器上部署Web项目时,通常需要确保MySQL和Tomcat服务能够随系统启动而自动运行。本文将详细介绍如何在Linux环境中配置MySQL和Tomcat的开机自启动,以确保服务的稳定性和可靠性。通过合理的配置,可以有效避免因服务未启动而导致的项目故障。 ... [详细]
  • 大类|电阻器_使用Requests、Etree、BeautifulSoup、Pandas和Path库进行数据抓取与处理 | 将指定区域内容保存为HTML和Excel格式
    大类|电阻器_使用Requests、Etree、BeautifulSoup、Pandas和Path库进行数据抓取与处理 | 将指定区域内容保存为HTML和Excel格式 ... [详细]
  • 在Linux系统中避免安装MySQL的简易指南
    在Linux系统中避免安装MySQL的简易指南 ... [详细]
  • Git命令基础应用指南
    本指南详细介绍了Git命令的基础应用,包括如何使用`git clone`从远程服务器克隆仓库(例如:`git clone [url/path/repository]`)以及如何克隆本地仓库(例如:`git clone [local/path/repository]`)。此外,还提供了常见的Git操作技巧,帮助开发者高效管理代码版本。 ... [详细]
  • SecureCRT是一款功能强大的终端仿真软件,支持SSH1和SSH2协议,适用于在Windows环境下高效连接和管理Linux服务器。该工具不仅提供了稳定的连接性能,还具备丰富的配置选项,能够满足不同用户的需求。通过SecureCRT,用户可以轻松实现对远程Linux系统的安全访问和操作。 ... [详细]
  • 在对WordPress Duplicator插件0.4.4版本的安全评估中,发现其存在跨站脚本(XSS)攻击漏洞。此漏洞可能被利用进行恶意操作,建议用户及时更新至最新版本以确保系统安全。测试方法仅限于安全研究和教学目的,使用时需自行承担风险。漏洞编号:HTB23162。 ... [详细]
  • 深入探索HTTP协议的学习与实践
    在初次访问某个网站时,由于本地没有缓存,服务器会返回一个200状态码的响应,并在响应头中设置Etag和Last-Modified等缓存控制字段。这些字段用于后续请求时验证资源是否已更新,从而提高页面加载速度和减少带宽消耗。本文将深入探讨HTTP缓存机制及其在实际应用中的优化策略,帮助读者更好地理解和运用HTTP协议。 ... [详细]
author-avatar
WXLLXWOO
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有