全称:REmote DIctionary Server
(远程字典服务器)。是完全开源免费的,用C语言编写的, 遵守BCD协议的一款非关系型数据库。是一个高性能的键值分布式内存数据库,基于内存运行并支持持久化的 NoSQL
数据库,是当前最热门的 NoSql
数据库之一,被人们称为数据结构服务器。
特点:
性能极高:Redis能读的速度是110000次/s,写的速度是81000次/s 。
丰富的数据类型:Redis支持多种数据类型操作。
原子:Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行(事务队列)。
丰富的特性:Redis还支持订阅(一发多听), key 过期等等特性。
无锁竞争:采用单线程,避免了不必要的上下文切换和竞争条件。
NIO:使用多路 I/O 复用模型,非阻塞IO。
Redis主要应用在 缓存场景 中,有较高的读取效率。还可以使用在 任务队列、数据失效、分布式锁 等方面,具体的使用方法还是得看业务场景,也不是都得用缓存来解决,其他的方法也不差。
Redis
是用C语言进行编写的,因此需要有 gcc 的编译环境,直接用 gcc – version 指令,如果失败就没有环境。需要手动的安装一下环境,执行指令即可,遇见选择时直接输入 y
,等待安装完毕。
yum install gcc-c++
将下载好的 Redis
压缩包上传到环境中,Redis
可在下面地址中进行下载。上传目录没有要求,放在平常自己使用的安装目录下即可。
Http://redis.io/ 英文地址
Http://www.redis.cn/ 中文地址
首先 将压缩包进行解压到当前目录下。
tar -zxvf redis-5.0.5.tar.gz
然后 进入到 Redis 的文件目录下进行编译,如果编译不成功就删掉按照步骤再来一次。
cd redis-5.0.5 make
最后 进行安装,还是在当前 Redis 的目录下进行操作,就是将刚才编译完成的可执行文件安装在系统环境中,安装目录可以随便定义,放在正常的安装目录下即可。
make PREFIX=/home/admin/app/redis install
进入到刚才安装的目录下,然后进入下面的 bin
目录下,里面存放了 Redis 的 服务器、客户端 等工具。
可执行文件 | 功能 |
---|---|
redis-benchmark | 性能测试工具 |
redis-check-aof | AOF 文件修复工具(持久化文件) |
redis-check-dump | RDB 文件检查工具(持久化文件) |
redis-cli | 客户端启动工具 |
redis-server | 服务端启动工具 |
将解压目录下的 redis-conf
文件复制到安装目录下,用于启动时的配置加载(注意切换目录),然后就可以把压缩包和解压文件给删掉了,留着碍事还占空间。
cp redis.conf /home/admin/app/redis
直接执行 redis-server
文件将使用前端模型进行启动,但是启动之后将不能在当前的界面上再进行其余的操作,必须结束后(ctrl + c)才能切换其他命令操作,这种方法启动没啥鸟用。
./redis-server
首先 需要修改配置文件的信息,打开刚才复制的配置文件,找到 daemonize
将 no 改为 yes,通过守护进程的方式进行启动,换句话说就是后台进程方式。
vim redis-conf
然后 启动服务并在后面添加上配置文件的地址。
./bin/redis-server ./redis-conf
这时候查看进程就可以发现 Redis
已经在后台运行了,默认访问端口是 6379 。
ps -ef | grep redis
直接运行客户端连接工具就可以出现类似 mysql
命令行的一个界面工具,表现为 host:port > 这样的形式。
也可以通过指定主机端口的形式进行连接。
./redis-cli -h host -p port
对于大多数的人来说还是比较倾向于使用界面化的操作工具来进行数据的操作和查看,工具可以使用的很多,RedisDesktopManager
软件就可以很好的查看数据库中的数据信息。只需要输入相应的主机地址和端口就可以连接访问进行操作了,如果配置了密码还需要进行密码的输入验证。软件可以连接多个数据库信息,也可以全部显示当前数据库下的所有库信息,默认的是 16
个空间。
kill -9 pid
shutdown
指令正常关闭127.0.0.1:6379> shutdown
logfile "/home/admin/app/redis/redis.log"
如果使用服务器进行安装的话,直接通过宝塔安装就行,配置文件这些都已经配置好了,但是需要注意的是尽量把端口号改掉,而且要添加访问密钥,不然很快就被植入挖矿了,然后服务器宕机重启。
requirepass 123456
设置完成之后连接进行操作的时候会提输入密钥,输入完就可以正常进行操作。
auth 123456