安装Redis-4.0.1以及hiredis库

2024-03-25 16:58
文章标签 安装 redis 4.0 hiredis

本文主要是介绍安装Redis-4.0.1以及hiredis库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

安装Redis-4.0.1以及hiredis库

Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。


install Redis-4.0.1

一、新建账户

[root@localhost ~]# useradd -d /home/redis -m redis
[root@localhost ~]# passwd redis
[root@localhost ~]# su - redis
[redis@localhost ~]$

二、上传安装包&&解压缩

[redis@localhost ~]$ ll
total 1672
-rw-r--r--. 1 redis redis 1711660 Mar  4 17:11 redis-4.0.1.tar.gz
[redis@localhost ~]$ tar zxf redis-4.0.1.tar.gz 
[redis@localhost ~]$ ll
total 1676
drwxrwxr-x. 6 redis redis    4096 Jul 24  2017 redis-4.0.1
-rw-r--r--. 1 redis redis 1711660 Mar  4 17:11 redis-4.0.1.tar.gz

三、编译源文件

[redis@localhost ~]$ cd redis-4.0.1/src/
[redis@localhost src]$ make

这时可看到redis-cli、redis-server等可执行文件已存在于src目录下。

[redis@localhost src]$ ll redis-cli
-rwxrwxr-x. 1 redis redis 5730574 Mar 12 13:22 redis-cli
[redis@localhost src]$ ll redis-server 
-rwxrwxr-x. 1 redis redis 8309843 Mar 12 13:22 redis-server

PS.

关于make编译源文件

通常开源代码可以在src下通过以下两条命令来完成编译&&安装:

make
make install

其中:
1)make是使用src下的makefile来完成对源文件的编译,生成可执行文件(或动态库)到当前(src)目录下;
2)make install是将src下的可执行文件copy到/usr/local、/usr/bin等目录中;

明确下,所谓的“安装”,通常是binary可执行文件的copy过程。

四、创建Redis目录结构

[redis@localhost ~]$ mkdir redis
[redis@localhost ~]$ mkdir redis/bin
[redis@localhost ~]$ mkdir redis/etc
[redis@localhost ~]$ mkdir redis/lib
[redis@localhost ~]$ mkdir redis/log
[redis@localhost ~]$ mkdir redis/include
[redis@localhost ~]$ mkdir redis/redis-run

五、安装Redis以及配置

安装Redis && Copy配置文件

[redis@localhost ~]$ cp redis-4.0.1/src/redis-cli redis/bin
[redis@localhost ~]$ cp redis-4.0.1/src/redis-server redis/bin[redis@localhost ~]$ cp redis-4.0.1/redis.conf redis/etc/

配置Redis(在redis.conf末尾添加配置项key-value)

[redis@localhost ~]$ cd redis/etc/
[redis@localhost etc]$ echo "port 12001" >> redis.conf
[redis@localhost etc]$ echo "dir $HOME/redis/redis-run" >> redis.conf
[redis@localhost etc]$ echo "logfile $HOME/redis/log/redis.log" >> redis.conf
[redis@localhost etc]$ echo "pidfile $HOME/redis/redis-run/redis.pid" >> redis.conf
[redis@localhost etc]$ echo "loglevel verbose" >> redis.conf

将redis可执行文件加入到PATH中:

[redis@localhost ~]$ echo 'export PATH=$PATH:$HOME/redis/bin' >> ~/.bash_profile

退出当前终端,重新登陆,使.bash_profile生效。

[redis@localhost ~]$ which redis-server
~/redis/bin/redis-server

六、启动Redis

执行以下命令:

[redis@localhost ~]$ redis-server $HOME/redis/etc/redis.conf &
[1] 7789

Check:

[root@localhost ~]# netstat -lntp | grep 12001
tcp        0      0 127.0.0.1:12001             0.0.0.0:*                   LISTEN      7789/redis-server 1

尝试使用redis-cli去接入服务端:

[redis@localhost ~]$ redis-cli -h 127.0.0.1 -p 12001
127.0.0.1:12001> quit

查看Redis版本:

[redis@localhost ~]$ redis-cli --version
redis-cli 4.0.1
[redis@localhost ~]$ redis-server --version
Redis server v=4.0.1 sha=00000000:0 malloc=jemalloc-4.0.3 bits=64 build=bd34ae9555e58482

至此,Redis-4.0.1已安装完毕并启动成功。


install hiredis lib

一、编译生成hiredis库

[redis@localhost ~]$ cd redis-4.0.1/deps/hiredis && make
cc -std=c99 -pedantic -c -O3 -fPIC  -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb  net.c
cc -std=c99 -pedantic -c -O3 -fPIC  -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb  hiredis.c
cc -std=c99 -pedantic -c -O3 -fPIC  -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb  sds.c
cc -std=c99 -pedantic -c -O3 -fPIC  -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb  async.c
cc -std=c99 -pedantic -c -O3 -fPIC  -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb  read.c
cc -shared -Wl,-soname,libhiredis.so.0.13 -o libhiredis.so  net.o hiredis.o sds.o async.o read.o
ar rcs libhiredis.a net.o hiredis.o sds.o async.o read.o
cc -std=c99 -pedantic -c -O3 -fPIC  -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb  test.c
cc -O3 -fPIC  -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb  -o hiredis-test   test.o libhiredis.a
Generating hiredis.pc for pkgconfig...

Check:

[redis@localhost hiredis]$ ll libhiredis.*
-rw-rw-r--. 1 redis redis 332022 Mar 12 13:52 libhiredis.a
-rwxrwxr-x. 1 redis redis 227229 Mar 12 13:52 libhiredis.so

二、安装hiredis

Copy 头文件:

[redis@localhost ~]$ cp redis-4.0.1/deps/hiredis/*.h $HOME/redis/include

设置gcc编译器头文件查找路径:

[redis@localhost ~]$ echo 'export C_INCLUDE_PATH=$C_INCLUDE_PATH:$HOME/redis/include' >> $HOME/.bash_profile

编译器在缺失头文件时,会额外地从C_INCLUDE_PATH包含的目录中查找是否有缺失的头文件。

注:
与C_INCLUDE_PATH相关的,还有CPLUS_INCLUDE_PATH。

Copy动态、静态库:

[redis@localhost ~]$ cp redis-4.0.1/deps/hiredis/libhiredis.* $HOME/redis/lib

设置LD_LIBRARY_PATH:

[redis@localhost ~]$ echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/redis/lib' >> $HOME/.bash_profile

在进程启动时,ld从/usr/lib等默认的地方找不到hiredis库时,还会去LD_LIBRARY_PATH包含的目录中搜索动态库。

退出当前终端,重新登陆,使得相关环境变量生效

[redis@localhost ~]$ echo $C_INCLUDE_PATH
:/home/redis/redis/include:/home/redis/redis/include
[redis@localhost ~]$ echo $LD_LIBRARY_PATH
:/home/redis/redis/lib

写个小程序,编译下看看?

#include <stdio.h>
#include <stdlib.h>
#include <hiredis.h>int main()
{return 0;
}
[redis@localhost ~]$ gcc -o main main.c -lhiredis -L$HOME/redis/lib
[redis@localhost ~]$ ldd mainlinux-vdso.so.1 =>  (0x00007ffee1ddb000)libhiredis.so.0.13 => not foundlibc.so.6 => /lib64/libc.so.6 (0x0000003f8c000000)/lib64/ld-linux-x86-64.so.2 (0x0000003f8b800000)

not found?

好吧,做个软链接。

[redis@localhost ~]$ ln -s $HOME/redis/lib/libhiredis.so $HOME/redis/lib/libhiredis.so.0.13

Check:

[redis@localhost ~]$ ldd mainlinux-vdso.so.1 =>  (0x00007fff3f1e2000)libhiredis.so.0.13 => /home/redis/redis/lib/libhiredis.so.0.13 (0x00007feb15502000)libc.so.6 => /lib64/libc.so.6 (0x0000003f8c000000)/lib64/ld-linux-x86-64.so.2 (0x0000003f8b800000)
[redis@localhost ~]$ ./main

至此,Redis的C API:hiredis库已安装完毕。

这篇关于安装Redis-4.0.1以及hiredis库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/845646

相关文章

SpringBoot中配置Redis连接池的完整指南

《SpringBoot中配置Redis连接池的完整指南》这篇文章主要为大家详细介绍了SpringBoot中配置Redis连接池的完整指南,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以... 目录一、添加依赖二、配置 Redis 连接池三、测试 Redis 操作四、完整示例代码(一)pom.

如何在Mac上安装并配置JDK环境变量详细步骤

《如何在Mac上安装并配置JDK环境变量详细步骤》:本文主要介绍如何在Mac上安装并配置JDK环境变量详细步骤,包括下载JDK、安装JDK、配置环境变量、验证JDK配置以及可选地设置PowerSh... 目录步骤 1:下载JDK步骤 2:安装JDK步骤 3:配置环境变量1. 编辑~/.zshrc(对于zsh

如何在pycharm安装torch包

《如何在pycharm安装torch包》:本文主要介绍如何在pycharm安装torch包方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录在pycharm安装torch包适http://www.chinasem.cn配于我电脑的指令为适用的torch包为总结在p

在PyCharm中安装PyTorch、torchvision和OpenCV详解

《在PyCharm中安装PyTorch、torchvision和OpenCV详解》:本文主要介绍在PyCharm中安装PyTorch、torchvision和OpenCV方式,具有很好的参考价值,... 目录PyCharm安装PyTorch、torchvision和OpenCV安装python安装PyTor

Python Transformer 库安装配置及使用方法

《PythonTransformer库安装配置及使用方法》HuggingFaceTransformers是自然语言处理(NLP)领域最流行的开源库之一,支持基于Transformer架构的预训练模... 目录python 中的 Transformer 库及使用方法一、库的概述二、安装与配置三、基础使用:Pi

Redis在windows环境下如何启动

《Redis在windows环境下如何启动》:本文主要介绍Redis在windows环境下如何启动的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Redis在Windows环境下启动1.在redis的安装目录下2.输入·redis-server.exe

Redis实现延迟任务的三种方法详解

《Redis实现延迟任务的三种方法详解》延迟任务(DelayedTask)是指在未来的某个时间点,执行相应的任务,本文为大家整理了三种常见的实现方法,感兴趣的小伙伴可以参考一下... 目录1.前言2.Redis如何实现延迟任务3.代码实现3.1. 过期键通知事件实现3.2. 使用ZSet实现延迟任务3.3

如何解决mmcv无法安装或安装之后报错问题

《如何解决mmcv无法安装或安装之后报错问题》:本文主要介绍如何解决mmcv无法安装或安装之后报错问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mmcv无法安装或安装之后报错问题1.当我们运行YOwww.chinasem.cnLO时遇到2.找到下图所示这里3.

Python 安装和配置flask, flask_cors的图文教程

《Python安装和配置flask,flask_cors的图文教程》:本文主要介绍Python安装和配置flask,flask_cors的图文教程,本文通过图文并茂的形式给大家介绍的非常详细,... 目录一.python安装:二,配置环境变量,三:检查Python安装和环境变量,四:安装flask和flas

Redis分片集群的实现

《Redis分片集群的实现》Redis分片集群是一种将Redis数据库分散到多个节点上的方式,以提供更高的性能和可伸缩性,本文主要介绍了Redis分片集群的实现,具有一定的参考价值,感兴趣的可以了解一... 目录1. Redis Cluster的核心概念哈希槽(Hash Slots)主从复制与故障转移2.