[小白向Linux基操] 02源码安装使用新版Redis6

740 阅读2分钟

这是我参与8月更文挑战的第12天,活动详情查看:8月更文挑战

redis是什么

简单理解就是缓存,也可以当做数据库,消息队列来用。知道概念,本文的重点是安装使用。

下面引用自官方。

Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication)LUA脚本(Lua scripting), LRU驱动事件(LRU eviction)事务(transactions) 和不同级别的 磁盘持久化(persistence), 并通过 Redis哨兵(Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。

下载并编译安装

参考redis 官网下载,并解压安装

www.redis.cn/download.ht…

#LeiXueWei Demo

cd /usr/local/src/
wget http://download.redis.io/releases/redis-6.0.6.tar.gz
tar xzf redis-6.0.6.tar.gz
cd redis-6.0.6
make

跑make命令,出现以下错误

比如:server.c:5212:31: 错误:‘struct redisServer’没有名为‘server_cpulist’的成员 redisSetCpuAffinity(server.server_cpulist);

这里是因为底层gcc库太旧了,有些函数并没有,导致编译过程出现未找到函数/成员。

 

gcc -v # 查看gcc版本

 

安装升级gcc

 

#LeiXueWei Demo
yum install -y centos-release-scl

yum install -y devtoolset-7-gcc*

scl enable devtoolset-7 bash

gcc -v

make #重新编译一下

启动并试用服务器

启动redis 服务器

 

试用一下redis,通过本地cli工具连接redis服务器,给foo这个key设置值位“bar", 并验证

 

更改默认端口

我们在服务器安装好通常需要修改默认端口,为了更加安全,不然有一些端口扫描工具就盯着一堆默认端口识别突破口。

查找redis.conf并备份,然后搜索port he 6379关键字对应的配置,修改默认端口

[root@VM-0-17-centos redis-6.0.6]# grep 6379 *conf

redis.conf:port 6479 #更改启动端口

redis.conf:pidfile /var/run/redis_6479.pid #更改进程pid名字

 

启动前先杀掉原本旧线程,该用下面命令启动

nohup ./src/redis-server /usr/local/src/redis-6.0.6/redis.conf &

连接redis server

./src/redis-cli -p 6479

PS: 当我们需要从外部访问云主机内redis服务时,需要将bind IP那一行和protect mode关闭,具体查找protect关键字,将其注释。

 

持续学习持续开发,我是雷学委!
编程很有趣,关键是把技术搞透彻讲明白。
创作不易,请多多支持,点赞收藏支持学委吧!