Redis学习(一)简介与安装

Redis简介

redis

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

Linux 下安装

下载地址:http://redis.io/download,下载最新文档版本。
本教程使用的最新文档版本为 4.0.1,下载并安装:

$ wget http://download.redis.io/releases/redis-4.0.1.tar.gz
$ tar -zvxf redis-4.0.1.tar.gz
$ cd redis-4.0.1
$ make

如果遇到gcc:未找到命令错误,运行如下指令
yum -y install gcc automake autoconf libtool
如果在报错 zmalloc.h:50:31: 错误:jemalloc/jemalloc.h:没有那个文件或目录。原因:分配器allocator, 如果有MALLOC 这个 环境变量, 会有用这个环境变量的 去建立Redis。而且libc 并不是默认的 分配器, 默认的是 jemalloc, 因为 jemalloc 被证明 有更少的 fragmentation problems 比libc。但是如果你又没有jemalloc 而只有 libc 当然 make 出错。 所以加这么一个参数,运行如下命令:
make MALLOC=libc

安装完后进行安装检验
$ make test


如果遇到Redis need tcl 8.5 or newer

$ make test
You need tcl 8.5 or newer in order to run the Redis test
make: *** [test] Error 1

安装下tcl

$ wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz  
$  tar xzvf tcl8.6.1-src.tar.gz  
$  cd /tcl8.6.1/unix/  
$  ./configure  
$  make  
$  make install  

再次运行$ make test
启动Redis服务器端

$ cd src
$ ./redis-server

注意这种方式启动redis 使用的是默认配置。也可以通过启动参数告诉redis使用指定配置文件使用下面命令启动。

$ cd src
$ ./redis-server ../redis.conf

遇到如下问题:Linux上的redis出现 DENIED Redis is running in protected mode
解决方案:Linux部署的redis 启动采用该种方式启动 要不然修改配置文件的内容不生效

客户端连接

$ cd src
$ ./redis-cli 
127.0.0.1:6379> set foo helloworld!
OK
127.0.0.1:6379> get foo
"helloworld!"


通过客户端关闭服务端
127.0.0.1:6379> SHUTDOWN
或者可以通过kill -9 PID号关闭服务器端

但是Redis不是在后台运行,做如下操作:将redis.conf中的daemonize的值改为yes

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容