Linux配置Redis

1.Redis簡介html

  Redis:REmote DIctionary Server(遠程字典服務器)。linux

 Redis是徹底開源免費的,用C語言編寫的,遵照BSD協議,是一個高性能的(key/value)分佈式內存數據庫,基於內存運行並支持持久化的NoSQL數據庫,是當前最熱門的NoSql數據庫之一,也被人們稱爲數據結構服務器。c++

 Redis 與其餘 key - value 緩存產品有如下三個特色。redis

|-Redis支持數據的持久化,能夠將內存中的數據保持在磁盤中,重啓的時候能夠再次加載進行使用數據庫

|-Redis不單單支持簡單的key-value類型的數據,同時還提供list,set,zset,hash等數據結構的存儲vim

|-Redis支持數據的備份,即master-slave模式的數據備份緩存

2.Redis環境搭建服務器

1)VMWare+VMTools安裝數據結構

[1]VMWare安裝分佈式

https://www.cnblogs.com/CSAH/p/11340116.html

[2]安裝CentOS6.8

注:查看本身Linux是32爲仍是64位 getconf LONG_BIT

[root@pluto ~]# getconf LONG_BIT

64

[3]VMTools安裝

 

2)Redis安裝

[1]下載Redis

  下載Redis經過官網下載,若是看不懂中文的能夠經過www.redis.cn下載。

Http://redis.io/

Http://www.redis.cn/

[2]解壓Redis並安裝

  首先,咱們須要先設置共享文件夾,在VMTools安裝中有方法。而後在Windows中文件夾得到Redis.tar.gz安裝包.

[root@pluto 桌面]# cd /mnt/hgfs/VMShare/

[root@pluto VMShare]# ll

總用量 1336

-rwxrwxrwx. 1 root root 1364993 10月  8 2015 redis-3.0.4.tar.gz

注:共享文件夾在mnt下的hgfs中

  而後,copy一份redis到Linux中的opt,關於cp命令使用方式能夠經過點擊便可學習。

[root@pluto VMShare]# cp /mnt/hgfs/VMShare/redis-3.0.4.tar.gz /opt/

  其次,解壓Redis,並進入解壓後的目錄redis-3.0.4

[root@pluto VMShare]# cd /opt/

[root@pluto opt]# tar -zxvf redis-3.0.4.tar.gz

[root@pluto opt]# cd redis-3.0.4

[root@pluto redis-3.0.4]# make

  可能出現的問題以下:

(1)缺乏gcc

1】虛擬機能夠上網

  該方法我並未試過,具體能夠上網找教程

yum install gcc-c++

2】虛擬機不能上網

  能夠經過掛載鏡像中自帶的軟件包安裝。執行如下六條命令,從上往下執行。只要不是依賴包的問題均可以接着往下執行。若是依賴包的問題咱們經過如下連接查錯

[root@pluto Packages]#

[root@pluto CentOS_6.8_Final]# rpm -ivh cpp-4.4.7-17.el6.x86_64.rpm

[root@pluto CentOS_6.8_Final]# rpm -ivh kernel-headers-2.6.32-642.el6.x86_64.rpm

[root@pluto CentOS_6.8_Final]# rpm -ivh glibc-headers-2.12-1.192.el6.x86_64.rpm

[root@pluto CentOS_6.8_Final]# rpm -ivh glibc-devel-2.12-1.192.el6.x86_64.rpm

[root@pluto CentOS_6.8_Final]# rpm -ivh libgomp-4.4.7-17.el6.x86_64.rpm

[root@pluto CentOS_6.8_Final]# rpm -ivh gcc-4.4.7-17.el6.x86_64.rpm

https://blog.csdn.net/gaojp008/article/details/83275706?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase

(2)Jemalloc/jemalloc.h:沒有那個文件或目錄

 

運行make distclean以後再make

  最後,咱們make完後繼續執行make install

[3]查看Redis安裝目錄

[root@pluto 桌面]# cd /usr/local/bin/

[root@pluto bin]# ll

總用量 16240

-rw-r--r--. 1 root root  800099 7月  18 00:15 dump.rdb

-rwxr-xr-x. 1 root root 4589115 7月  17 19:20 redis-benchmark

-rwxr-xr-x. 1 root root   22177 7月  17 19:20 redis-check-aof

-rwxr-xr-x. 1 root root   45387 7月  17 19:20 redis-check-dump

-rwxr-xr-x. 1 root root 4693066 7月  17 19:20 redis-cli

lrwxrwxrwx. 1 root root      12 7月  17 19:20 redis-sentinel -> redis-server

-rwxr-xr-x. 1 root root 6466469 7月  17 19:20 redis-server

Redis-benchmark:性能測試工具

Redis-check-aof:修復有問題的AOF文件

Redis-check-dump:修復有問題的dump.rdb文件

Redis-cli:客戶端,操做入口

Redis-sentinelredis集羣使用

Redis-serverRedis服務器啓動命令

(1)Redis配置文件

  修改redis.conf文件將裏面的daemonize no 改爲 yes,讓服務在後臺啓動.

[root@pluto /]# mkdir myredis

[root@pluto /]# cp /opt/redis-3.0.4/redis.conf /myrediss/

[root@pluto /]# vim /myrediss/redis.conf

 37 daemonize yes

(2)啓動Redis

[root@pluto bin]# redis-server /myredis/redis.conf

[root@pluto bin]# redis-cli

127.0.0.1:6379> ping

PONG

127.0.0.1:6379>

  查看redis啓動先後的區別:

#啓動前

[root@pluto bin]# ps -ef|grep redis

root      32198   6786  0 00:31 pts/3    00:00:00 grep redis

#啓動後

[root@pluto bin]# ps -ef|grep redis

root      32163      1  0 00:28 ?        00:00:00 redis-server *:6379             

root      32187  32117  0 00:29 pts/6    00:00:00 redis-cli

root      32196   6786  0 00:30 pts/3    00:00:00 grep redis

(3)關閉Redis

[root@pluto bin]# redis-cli

127.0.0.1:6379> ping

PONG

127.0.0.1:6379> SHUTDOWN

not connected> exit

3)Redis基礎知識

[1]select

  語法:select <dbid>

  做用:切換數據庫

[root@pluto bin]# redis-server /myredis/redis.conf

[root@pluto bin]# redis-cli

127.0.0.1:6379> ping

PONG

127.0.0.1:6379> select 1

OK

127.0.0.1:6379[1]>

[2]Dbsize

  語法:Dbsize

  做用:查看當前數據庫的key的數量

127.0.0.1:6379> Dbsize

(integer) 5

[3]Flushdb

  語法:Flushdb

  做用:清空當前庫,其它庫的並未受影響

127.0.0.1:6379> keys *

1) "k3"

2) "k2"

3) "k1"

127.0.0.1:6379> Flushdb

OK

127.0.0.1:6379> keys *

(empty list or set)

[4]Flushall

  語法:Flushall

  做用:通殺所有庫

127.0.0.1:6379> set k1 v1

OK

127.0.0.1:6379> set k2 v2

OK

127.0.0.1:6379> set k3 v3

OK

127.0.0.1:6379> select 1

OK

 

127.0.0.1:6379[1]> keys *

(empty list or set)

127.0.0.1:6379[1]> set v1 k1

OK

127.0.0.1:6379[1]> set v2 k2

OK

127.0.0.1:6379[1]> set v3 k3

OK

127.0.0.1:6379[1]> keys *

1) "v3"

2) "v2"

3) "v1"

 

127.0.0.1:6379[1]> select 0

OK

127.0.0.1:6379> FLUSHALL

OK

127.0.0.1:6379> keys *

(empty list or set)

127.0.0.1:6379> select 1

OK

 

127.0.0.1:6379[1]> keys *

(empty list or set)

127.0.0.1:6379[1]>

參考文檔:https://www.runoob.com/redis/redis-benchmarks.html

https://blog.csdn.net/rongDang/article/details/90601033

http://www.javashuo.com/article/p-hfbdwolc-nu.html

http://www.javashuo.com/article/p-pittbixx-nu.html

http://www.javashuo.com/article/p-gbptvant-nu.html

https://www.runoob.com/linux/linux-file-content-manage.html

https://jingyan.baidu.com/article/915fc41451154751394b200e.html

https://blog.csdn.net/gaojp008/article/details/83275706?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase

https://blog.csdn.net/love20165104027/article/details/83377758

https://www.pianshen.com/article/7915151415/

https://www.runoob.com/redis/redis-install.html

https://blog.csdn.net/xsfqh/article/details/89448976

http://www.javashuo.com/article/p-kncgtrti-nu.html

相關文章
相關標籤/搜索