C 操作Redis資料庫

2021-07-28 03:26:26 字數 2295 閱讀 7615

主題redis

資料庫c++

今天,mayuyu來學習如何用c++來操作redis資料庫。通過hiredis.h介面來實現,目前只能在linux環境使用。

主要包括如下四個方法

1. rediscontext* redisconnect(const char *ip, int port)

該函式用來連線redis資料庫, 兩個引數分別是redis資料庫的ip和埠,埠號一般為6379。類似

的還提供了乙個函式,供連線超時限定,即

rediscontext* redisconnectwithtimeout(const char *ip, int port, timeval tv)。

2. void *rediscommand(rediscontext *c, const char *format...)

該函式用於執行redis資料庫中的命令,第乙個引數為連線資料庫返回的rediscontext,剩下的引數

為變參,如同c語言中的prinf()函式。

此函式的返回值為void*,但是一般會強制轉換為redisreply型別,以便做進一步的處理。

3. void freereplyobject(void *reply)

釋放rediscommand執行後返回的的redisreply所占用的記憶體。

4. void redisfree(rediscontext *c)

釋放redisconnect()所產生的連線。

接下來就是就讓mayuyu來教大家如何安裝hiredis吧!

接下來把libhiredis.so放到/usr/local/lib/中,把hiredis.h放到/usr/local/inlcude/hiredis/中。

或者直接用命令make install配置。如下圖

接下來在程式中就可以直接用了。在程式中包含#include 即可。

為了操作方便,一般情況下我們需要寫乙個標頭檔案類,這個類的方法根據自己專案需要適當新增。如下

**:redis.h

#ifndef _redis_h_

#define _redis_h_

#include

#include

#include

#include

#include

class redis

~redis()

bool

connect

(std::string host, int port)

return

1; }

std::string

get(std::string key)

void

set(std::string key, std::string value)

private:

rediscontext* _connect;

redisreply* _reply;

};#endif

//_redis_h_

redis.cpp
#include

"redis.h"

intmain

() r->set("name", "mayuyu");

printf("get the name is %s\n", r->get("name").c_str());

delete r;

return

0;}

makefile檔案

redis: redis.cpp redis.h

g++ redis.cpp -o redis -l/usr/local/lib/ -lhiredis

clean:

rm redis.o redis

注意在g++和rm之前都是乙個tab鍵。

在編譯的時候需要加引數,假設檔案為redis.cpp,那麼編譯命令如下

g++ redis.cpp -o redis -l/usr/local/lib/ -lhiredis 

在執行的時候如果出現動態庫無法載入,那麼需要進行如下配置

在 /etc/ld.so.conf.d/ 目錄下新建檔案 usr-libs.conf ,內容是: /usr/local/lib  

如下圖所示

然後使用命令 /sbin/ldconfig 更新一下配置即可。

C 操作Redis資料庫

今天,mayuyu來學習如何用c 來操作redis資料庫。通過hiredis.h介面來實現,目前只能在linux環境使用。主要包括如下四個方法 1.rediscontext redisconnect const char ip,int port 該函式用來連線redis資料庫,兩個引數分別是redi...

C 操作Redis資料庫

今天,mayuyu來學習如何用c 來操作redis資料庫。通過hiredis.h介面來實現,目前只能在linux環境使用。主要包括如下四個方法 1.rediscontext redisconnect const char ip,int port 該函式用來連線redis資料庫,兩個引數分別是redi...

Redis資料庫操作

1.終端連線redis的命令redis cli h ip address linux系統下可通過ifconfig檢視ip address資訊2.在連線後選擇redis庫select number number是redis庫的編號3.檢視redis庫的keys資訊keys 4.減少redis庫連線次數...