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

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: 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
相关文章
|
9天前
|
NoSQL Linux Redis
linux 下和win下安装redis 并添加开机自启 图文详解
linux 下和win下安装redis 并添加开机自启 图文详解
15 0
|
9天前
|
Java Linux
Springboot 解决linux服务器下获取不到项目Resources下资源
Springboot 解决linux服务器下获取不到项目Resources下资源
|
13天前
|
Linux
linux下搭建tftp服务器教程
在Linux中搭建TFTP服务器,需安装`tftp-server`(如`tftpd-hpa`)。步骤包括:更新软件包列表,安装`tftpd-hpa`,启动并设置开机自启,配置服务器(编辑`/etc/default/tftpd-hpa`),添加选项,然后重启服务。完成后,可用`tftp`命令进行文件传输。例如,从IP`192.168.1.100`下载`file.txt`: ``` tftp 192.168.1.100 <<EOF binary put file.txt quit EOF ```
27 4
|
5天前
|
Linux 数据安全/隐私保护
Linux基础与服务器架构综合小实践
【4月更文挑战第9天】Linux基础与服务器架构综合小实践
1059 6
|
9天前
|
NoSQL Linux PHP
php添加redis扩展 linux和windos图文详解 l
php添加redis扩展 linux和windos图文详解 l
3 0
|
15天前
|
存储 缓存 NoSQL
Redis 服务器指南:高性能内存数据库的完整使用指南
Redis 服务器指南:高性能内存数据库的完整使用指南
|
17天前
|
Ubuntu Linux 虚拟化
【Linux】ubuntu安装samba服务器
【Linux】ubuntu安装samba服务器
|
17天前
|
NoSQL Linux Redis
Linux安装Redis
Linux安装Redis
26 0
|
关系型数据库 MySQL Linux
MySQL 数据库linux系统下修改配置文件设置mysql是否大小写敏感实例演示
MySQL 数据库linux系统下修改配置文件设置mysql是否大小写敏感实例演示
185 0
MySQL 数据库linux系统下修改配置文件设置mysql是否大小写敏感实例演示
|
10天前
|
Web App开发 Linux 网络安全
工作中常用到的Linux命令
工作中常用到的Linux命令

热门文章

最新文章