redis 搭建(單機版本)
阿新 • • 發佈:2021-02-10
一 、 準備工作
- 檢查gcc 版本 因為redis 用c 寫的 版本過低 make 時候會報錯
server.c:4542:28: error: ‘struct redisServer’ has no member named ‘cached_master’
else if (server.cached_master)
^
server.c:4543:43: error: ‘struct redisServer’ has no member named ‘cached_master’
slave_repl_offset = server.cached_master->reploff;
^
server.c:4552:24: error: ‘struct redisServer’ has no member named ‘masterhost’
,server.masterhost,
^
server.c:4553:23: error: ‘struct redisServer’ has no member named ‘masterport’
server.masterport,
^
server.c:4554:24: error: ‘struct redisServer’ has no member named ‘repl_state’
( server.repl_state == REPL_STATE_CONNECTED) ?
^
server.c:4556:23: error: ‘struct redisServer’ has no member named ‘master’
server.master ?
2、 安裝 jemalloc [jemalloc下載連結 ] (https://github.com/jemalloc/jemalloc/releases/download/4.2.1/jemalloc-4.2.1.tar.bz2)
編譯安裝 yum 安裝 選擇一種即可
1、編譯安裝
$ tar xvf jemalloc-4.2.1.tar.bz2
$ cd jemalloc-4.2.1
$ ./configure --prefix=/usr/local/jemalloc
$ make && make install
2、yum 安裝
$ yum install jemalloc
$ rpm -ql jemalloc
/usr/bin/jemalloc.sh
/usr/lib64/libjemalloc.so.1
reids 記憶體管理器 (malloc)有兩種 一種是jemalloc 還有一種是 libc reids 預設使用jemalloc因為處理 記憶體碎片化比 libc 更好
reids make 時候如果 不指定記憶體管理器 預設為jemalloc
3、安裝tcl
如果不安裝tcl在Redis執行make test的時候就會報錯
$ yum install -y tcl
二、 開始安裝
1、 下載Redis 安裝包 並解壓
請自行搜尋 我一般 會安裝到 /usr/local 這個包下面
2、 進入到redis 包內 執行make 並指定記憶體管理器為 jemalloc
[[email protected] redis-6.0.10]# make malloc=/usr/local/jemalloc/lib
成功後執行 make test 檢查編譯是否有問題
3、 進入到 src內 執行make install
[[email protected] src]# make install
Hint: It's a good idea to run 'make test' ;)
INSTALL install
INSTALL install
INSTALL install
INSTALL install
INSTALL install
[[email protected] src]#
4、 編輯redis.conf
1、設定後臺啟動 daemonize 改為yes
2、解除指定繫結的網段
redis bind表示的是指定本機可以接受連線的網絡卡地址
找到 bind 127.0.0.1 給註釋掉或者換成本機ip地址
3、開啟遠端訪問
預設是設定成yes的, 防止了遠端訪問, 這裡修改為 no
4、 修改密碼
在配置檔案中找到這一行 # requirepass foobared 放開 並修改密碼
5、啟動
進入 src 目錄下面 執行
./redis-server /usr/local/redis-6.0.10/redis.conf