下面引用自官方。
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 官网下载,并解压安装
http://www.redis.cn/download.html
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
yum install -y centos-release-scl yum install -y devtoolset-7-gcc* scl enable devtoolset-7 bash gcc -v
启动并试用服务器
启动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关键字,将其注释。