redis简介

Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。Redis 是单线程的

  • 官网:https://redis.io/
  • 中文社区:http://www.redis.cn/
    在这里插入图片描述

linux下redis安装

环境:Ubuntu Server 18.04.1 LTS 64bit

1.下载源码

wget https://download.redis.io/releases/redis-6.0.9.tar.gz

2.解压

tar xzf redis-6.0.9.tar.gz

3.将安装文件移动到user/local

sudo mv ./redis-6.0.9 /usr/local/redis
cd /usr/local/redis

4.编译redis(注意:查看gcc-g++是否安装)

sudo make

5.测试编译是否成功

sudo make test

bug:
在这里插入图片描述

*** [err]: diskless no replicas drop during rdb pipe in tests/integration/replication.tcl
rdb child didn't terminate
*** [err]: diskless fast replicas drop during rdb pipe in tests/integration/replication.tcl
rdb child didn't terminate

直接安装,索性没有出问题。

6.安装

sudo make install

在这里插入图片描述
在这里插入图片描述

连接redis

先将/usr/local/redis下的redis.conf配置文件移动到/usr/local/bin/kconfig

ubuntu@VM-8-7-ubuntu:/usr/local/bin$ sudo mkdir kconfig
ubuntu@VM-8-7-ubuntu:/usr/local/bin$ l
chardetect*  jsonschema*  kconfig/  pip*  pip2*  pip2.7*  redis-benchmark*  redis-check-aof*  redis-check-rdb*  redis-cli*  redis-sentinel@  redis-server*
ubuntu@VM-8-7-ubuntu:/usr/local/bin$ sudo cp /usr/local/redis/redis.conf /usr/local/bin/kconfig/

在这里插入图片描述
修改kconfig/redis.conf(由于redis默认不是后台启动的,因此需要修改配置文件!)

ubuntu@VM-8-7-ubuntu:/usr/local/bin/kconfig$ sudo vim redis.conf 

在这里插入图片描述
启动redis服务

ubuntu@VM-8-7-ubuntu:/usr/local/bin$ redis-server kconfig/redis.conf 
ubuntu@VM-8-7-ubuntu:/usr/local/bin$ ls
chardetect  jsonschema  kconfig  pip  pip2  pip2.7  redis-benchmark  redis-check-aof  redis-check-rdb  redis-cli  redis-sentinel  redis-server
#使用redis客户端进行连接
ubuntu@VM-8-7-ubuntu:/usr/local/bin$ redis-cli -p 6379 
127.0.0.1:6379> PING
PONG
127.0.0.1:6379> 

查看redis进程是否开启
开启新的shell查看进程

ps -ef|grep redis

在这里插入图片描述
关闭redis

shutdown
exit

BUT,有BUG出现◑﹏◐

127.0.0.1:6379> shutdown
(error) ERR Errors trying to SHUTDOWN. Check logs.

参考博客
(error) ERR Errors trying to SHUTDOWN. Check logs.错误

简单命令

select 3	#切换数据库
dbsize	#查看数据库大小
keys * :查看当前数据库中所有的key。
flushdb:清空当前数据库中的键值对。
flushall:清空所有数据库的键值对。

安装hiredis库

Hiredis是一个用于Redis数据库的极简C客户端库。

它是极简主义的,因为它只增加了对协议的最小支持,但同时它使用了一个类似于printf的高级API,以使其比最小代码库和缺少每个Redis命令的显式绑定所建议的更高级别。

除了支持发送命令和接收回复之外,它还附带了一个与I/O层分离的回复解析器。它是一个流解析器,旨在实现简单的可重用性,例如可以在更高级别的语言绑定中使用,以实现高效的应答解析。

Hiredis只支持二进制安全的Redis协议,因此您可以将其用于任何Redis版本>=1.2.0。

该库具有多个API。有同步API、异步API和应答解析API。

git clone https://github.com/redis/hiredis.git
cd hiredis
make
sudo make install

重新加载动态库链接

sudo ldconfig
  • 相关头文件安装在/usr/local/include目录下
  • 动态库文件安装在/usr/local/lib目录下
pengge@pengge-virtual-machine:~/Desktop/redis/hiredis$ ls /usr/local/include
Eigen  eigen3  hiredis  pybind11  python3.7m
pengge@pengge-virtual-machine:~/Desktop/redis/hiredis$ ls /usr/local/lib
libhiredis.a   libhiredis.so.1.1.1-dev  pkgconfig  python3.7
libhiredis.so  libpython3.7m.a          python2.7  python3.8
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐