1.Redis简介
??Redis:REmote DIctionary Server(远程字典服务器)。
?Redis是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,基于内存运行并支持持久化的NoSQL数据库,是当前最热门的NoSql数据库之一,也被人们称为数据结构服务器。
?Redis 与其他 key - value 缓存产品有以下三个特点。
|-Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用
|-Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储
|-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】虚拟机可以上网
??该方法我并未试过,具体可以上网找教程
【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完后继续执行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-sentinel:redis集群使用
Redis-server:Redis服务器启动命令
|
(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
https://www.cnblogs.com/xiangtingshen/p/10920236.html
https://www.cnblogs.com/homeboot/p/12165741.html
https://www.cnblogs.com/sijizhen/p/10576049.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
https://www.cnblogs.com/zhangwuji/p/7152789.html
? (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|