Redis在Linux服务器上安装与配置

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
日志服务 SLS,月写入数据量 50GB 1个月
简介: Redis在Linux服务器上安装与配置

Redis是现在最受欢迎的NoSQL数据库之一,最近也开始学习这个Redis了。所以我决定来分享一下Linux上的Redis的安装和配置。

1,下载Redis源码并解压

官网下载页面下载源码,如图: 备用地址,提取码2333

网络异常,图片无法展示
|

我这里下载了一个redis-6.0.8.tar.gz的文件,解压至当前目录并进入解压的文件夹(命令中操作的文件名根据自己下载的而定,此处命令以我自己的为例):

tar -xvf redis-6.0.8.tar.gz
cd redis-6.0.8

2,编译源代码

首先需要确定的是我们的机器上安装了gcc,make,libc6-dev这几个软件包(如果是32位Linux或者需要编译32位redis时还需再安装libc6-dev-i386或者g++-multilib)。

可以通过以下命令安装(已安装这些软件包的可以忽略这一步):

# 只编译64位Redissudo apt install gccmake libc6-dev
# 需要编译32位的Redissudo apt install gccmake libc6-dev libc6-dev-i386

若需要编译32位Redis,安装依赖时找不到libc6-dev-i386,那就把上面安装命令中libc6-dev-i386换成g++-multilib

然后开始编译Redis。刚刚已经解压并进入其源码目录了,现在执行以下命令编译:

make

如果想在64位机器上编译32位的Redis可执行文件,则执行:

make 32bit

等待编译完成,显示Hint: It's a good idea to run 'make test' ;)字样时说明编译成功了。

若在编译中遇到任何错误需要再重新编译,需要先清理已编译部分,执行命令:

make distclean

然后就可以重新make了。

然后通过以下命令安装Redis到系统:

sudomake install

若想把Redis安装至指定的位置,可以使用如下命令:

makePREFIX=想要安装到的位置(绝对路径) install

例如安装到/home/swsk33/redis

makePREFIX=/home/swsk33/redis install

这时,redis便编译并安装完成了!

3,编写配置文件并启动Redis

这个时候其实通过直接输入redis-server便可以直接启动了。redis可以指定配置文件运行,最好是通过配置文件启动。

先自己新建一个文件,例如redis-config.conf,自己加入配置内容。

常见的配置如下:

配置项 说明
daemonize yes/no Redis 默认不是以守护进程的方式运行,可以通过该配置项修改,使用 yes 启用守护进程打开即启动后使redis服务端后台运行
pidfile pid文件位置 当 Redis 以守护进程方式运行时,Redis 默认会把 pid 写入 /var/run/redis.pid 文件,可以通过 pidfile 指定
port 自定义端口号 指定 Redis 监听端口,默认端口为 6379
bind 绑定的ip地址 绑定的主机地址。若不写这一行,则外网所有的电脑都可以连接此服务器的redis
timeout 毫秒 当客户端闲置多长秒后关闭连接,如果指定为 0 ,表示关闭该功能
loglevel 日志级别 指定日志记录级别,Redis 总共支持四个级别:debug、verbose、notice、warning,默认为 notice
logfile 日志文件位置 指定日志文件位置,默认不输出日志到文件
dbfilename 数据库名.rdb 指定本地数据库文件名,默认值为 dump.rdb
dir 数据库存放目录 指定本地数据库存放目录,默认存放在当前目录下
requirepass 密码 设置 Redis 连接密码,如果配置了连接密码,客户端在连接 Redis 时需要通过 auth 密码命令提供密码,默认关闭例如设置密码为123456:requirepass 123456
maxclients 最大连接数 设置同一时间最大客户端连接数,默认无限制,Redis 可以同时打开的客户端连接数为 Redis 进程可以打开的最大文件描述符数,如果设置 maxclients 0,表示不作限制。当客户端连接数到达限制时,Redis 会关闭新的连接并向客户端返回 max number of clients reached 错误信息
maxmemory 最大内存占用字节数 指定 Redis 最大内存限制,Redis 在启动时会把数据加载到内存中,达到最大内存后,Redis 会先尝试清除已到期或即将到期的 Key,当此方法处理 后,仍然到达最大内存设置,将无法再进行写入操作,但仍然可以进行读取操作。Redis 新的 vm 机制,会把 Key 存放内存,Value 会存放在 swap 区
vm-enabled yes/no 指定是否启用虚拟内存机制,默认值为 no,简单的介绍一下,VM 机制将数据分页存放,由 Redis 将访问量较少的页即冷数据 swap 到磁盘上,访问多的页面由磁盘自动换出到内存中

上面配置不需全部写入。例如我的配置文件如下:

port 25002dir /root/Temp/db
requirepass 12345678

建议requirepass最好写上保证安全。如果有需要可以用bind配置绑定ip地址,这样只有绑定的ip地址才能访问redis数据库。

然后启动redis服务端:

redis-server 配置文件位置

例如我的:

redis-server /home/swsk33/redis/redis-config.conf

若上面make install时使用了自定义的安装位置(使用了PREFIX参数),那么需要进入你的安装目录下的bin文件夹里面再执行命令:

./redis-server 配置文件路径

显示这个画面说明启动成功:

网络异常,图片无法展示
|

服务器上建议使用screen软件新建一个窗口在里面运行redis服务端,这样可以使其挂在服务器上面运行。screen的使用此处不再赘述。

4,远程连接redis服务端

远程连接时须确保没有配置bind值或者bind值是你的ip,且端口开放。远程连接也需要在自己的电脑上编译并安装redis。Windows编译可自行百度,方法类似。

此处以Linux电脑远程连接为例,通过以下命令连接:

redis-cli -h 服务器ip -p redis的端口

本地连接也是这个命令,ip地址是127.0.0.1

连接上后会进入redis命令行:

网络异常,图片无法展示
|

然后使用AUTH命令输入密码认证:

auth redis密码

密码就是前面配置文件中requirepass的配置值。

输出OK说明连接认证成功!

最后使用quit或者exit命令断开连接。

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
17天前
|
安全 Linux 应用服务中间件
从零开始启动、配置、保护你的云服务器并搭建一个简单的网站
本文详细介绍了如何准备原料、搭建基础环境、进行安全防护、建设网站、管理证书以及开启BBR优化网络性能。主要内容包括获取健康云服务器、配置SSH登录、创建非root用户、启用密钥认证、安装Nginx、申请TLS证书、配置HTTPS自动跳转及优化网络性能等步骤。通过本文,读者可以掌握从零开始搭建个人网站的全过程。
31 1
从零开始启动、配置、保护你的云服务器并搭建一个简单的网站
|
9天前
|
开发框架 .NET PHP
网站应用项目如何选择阿里云服务器实例规格+内存+CPU+带宽+操作系统等配置
对于使用阿里云服务器的搭建网站的用户来说,面对众多可选的实例规格和配置选项,我们应该如何做出最佳选择,以最大化业务效益并控制成本,成为大家比较关注的问题,如果实例、内存、CPU、带宽等配置选择不合适,可能会影响到自己业务在云服务器上的计算性能及后期运营状况,本文将详细解析企业在搭建网站应用项目时选购阿里云服务器应考虑的一些因素,以供参考。
|
17天前
|
存储 人工智能 弹性计算
阿里云弹性计算(ECS)提供强大的AI工作负载平台,支持灵活的资源配置与高性能计算,适用于AI训练与推理
阿里云弹性计算(ECS)提供强大的AI工作负载平台,支持灵活的资源配置与高性能计算,适用于AI训练与推理。通过合理优化资源分配、利用自动伸缩及高效数据管理,ECS能显著提升AI系统的性能与效率,降低运营成本,助力科研与企业用户在AI领域取得突破。
35 6
W9
|
16天前
|
运维 关系型数据库 MySQL
轻松管理Linux服务器的5个优秀管理面板
Websoft9 应用管理平台,github 2k star 开源软件,既有200+的优秀开源软件商店,一键安装。又有可视化的Linux管理面板,文件、数据库、ssl证书方便快捷管理。
W9
58 1
|
19天前
|
缓存 Ubuntu Linux
Linux环境下测试服务器的DDR5内存性能
通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
27 4
|
19天前
|
负载均衡 监控 应用服务中间件
配置Nginx反向代理时如何指定后端服务器的权重?
配置Nginx反向代理时如何指定后端服务器的权重?
37 4
|
7天前
|
存储 Oracle 安全
服务器数据恢复—LINUX系统删除/格式化的数据恢复流程
Linux操作系统是世界上流行的操作系统之一,被广泛用于服务器、个人电脑、移动设备和嵌入式系统。Linux系统下数据被误删除或者误格式化的问题非常普遍。下面北亚企安数据恢复工程师简单聊一下基于linux的文件系统(EXT2/EXT3/EXT4/Reiserfs/Xfs) 下删除或者格式化的数据恢复流程和可行性。
|
18天前
|
安全 Linux API
Linux服务器安全
人们常误认为服务器因存于数据中心且数据持续使用而无需加密。然而,当驱动器需维修或处理时,加密显得尤为重要,以防止数据泄露。Linux虽有dm-crypt和LUKS等内置加密技术,但在集中管理、根卷加密及合规性等方面仍存不足。企业应选择具备强大验证、简单加密擦除及集中管理等功能的解决方案,以弥补这些缺口。
20 0
|
弹性计算 Shell Windows
阿里云学生专享ecs服务器体验及个人配置
阿里云学生优惠专享的云服务器个人使用体验
阿里云学生专享ecs服务器体验及个人配置
|
22天前
|
人工智能 弹性计算 编解码
阿里云GPU云服务器性能、应用场景及收费标准和活动价格参考
GPU云服务器作为阿里云提供的一种高性能计算服务,通过结合GPU与CPU的计算能力,为用户在人工智能、高性能计算等领域提供了强大的支持。其具备覆盖范围广、超强计算能力、网络性能出色等优势,且计费方式灵活多样,能够满足不同用户的需求。目前用户购买阿里云gpu云服务器gn5 规格族(P100-16G)、gn6i 规格族(T4-16G)、gn6v 规格族(V100-16G)有优惠,本文为大家详细介绍阿里云gpu云服务器的相关性能及收费标准与最新活动价格情况,以供参考和选择。