zoukankan      html  css  js  c++  java
  • Redis在windows下的安装

    Redis 简介

     REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。

    Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、,是一个高性能的key-value数据库,并提供多种语言的API。

    它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。

     Redis 与其他 key - value 缓存产品有以下三个特点:

    • Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
    • Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
    • Redis支持数据的备份,即master-slave模式的数据备份。

    Redis 优势

    • 性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
    • 丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
    • 原子 – Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
    • 丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。

    Redis与其他key-value存储有什么不同?

    • Redis有着更为复杂的数据结构并且提供对他们的原子性操作,这是一个不同于其他数据库的进化路径。Redis的数据类型都是基于基本数据结构的同时对程序员透明,无需进行额外的抽象。

    • Redis运行在内存中但是可以持久化到磁盘,所以在对不同数据集进行高速读写时需要权衡内存,因为数据量不能大于硬件内存。在内存数据库方面的另一个优点是,相比在磁盘上相同的复杂的数据结构,在内存中操作起来非常简单,这样Redis可以做很多内部复杂性很强的事情。同时,在磁盘格式方面他们是紧凑的以追加的方式产生的,因为他们并不需要进行随机访问。

    参考: https://blog.csdn.net/yangwenxue1989/article/details/88884668

        https://blog.csdn.net/xoofly/article/details/88832683

    一、目标

    在windows环境下安装配置redis数据库。

    二、环境

    windows10 64bit、redis64-3.0.501 (for windows64bit)

    三、软件下载

    1.Redis数据库下载。https://github.com/ServiceStack/redis-windows    下载的速度可能比较慢

     点右侧的Clone or download,然后在弹出的窗口点Download ZIP。下载就行了。

    2.点击release,可选择不同版本进行下载。

     

    四、安装redis数据库

    下载好是个zip压缩包,指定路径进行解压,,本文使用D:JAVA edis64-3.0.501 路径。

    解压内容如下:

     1. 临时服务安装

    打开一个 cmd 窗口 使用 cd 命令切换目录到D:JAVA edis64-3.0.501 路径,运行:

    redis-server.exe redis.windows.conf

    显示如下界面,则服务端启动成功。

    备注:通过以上面命令,会创建Redis临时服务,不会在window Service列表出现Redis服务名称和状态,此窗口关闭,服务会自动关闭。可以装一个Redis Management测试一下,当关闭这个临时服务是数据库连不上的。

    现在进行客户端调用,因为只有临时服务,所以不要关闭上面窗口,另外打开一个 cmd 窗口 使用 cd 命令切换目录到D:JAVA edis64-3.0.501 路径,

    运行:

    redis-cli.exe

    客户端启动完成。

    敲入Set age 34 返回OK ,表示写入内存中;我们再敲get age,会返回一个Value值34,如下图:

     2.默认服务安装  我们不可能每次要用Redis都去开一下临时服务,可不可以跟其它服务一样能够开机自启?当然是可以得,但是有点区别,后续会讲。进入Redis安装包文件下,敲入命令注册服务:

    redis-server.exe --service-install redis.windows.conf --loglevel verbose

    注:(须关闭临时服务,否则安装不上)

    根据英文提示显然服务已经安装了,在window Service列表中能看到,但是没启动,也无法手动启动,只有敲命令启动/暂停/卸载服务:

    redis-server.exe --service-start
    redis-server.exe --service-stop
    redis-server.exe --service-uninstall

     (类似如上插图)

    3.自定义服务安装   将服务重命名。进入Redis安装包文件下,注册服务:

    redis-server.exe --service-install redis.windows.conf --Service-name RedisServer1 --loglevel verbose

    备注:通过以上面命令,会在window  Service列表出现"redisserver1"服务,但此服务不是启动状态,需要调下面命令启动服务。

    与默认安装一样,唯一不同的就是在相应安装服务、启动、关闭、卸载服务时需要加上自定义Redis服务名:

    redis-server.exe --service-start --Service-name RedisServer1
    
    redis-server.exe --service-stop --Service-name RedisServer1 
    
    redis-server.exe --service-uninstall --Service-name RedisServer1

    通过命令行卸载自定义服务后,电脑重启一下,卸载服务会全部完成

    4.Redis主从服务安装  主从服务可以实现负载均衡,其实就是把上面Redis安装文件包,拷贝到相应目录,修改主、从服务器配置文件中IP、Port,同时从服务器要指定主服务器 的IP、Port,按照Redis自定义服务安装中命令进行服务安装、服务启动、服务关闭、服务卸载即可使用。

    我本地主从服务器安装包都还是在D: edis-win目录,文件夹Redis-x64-3.2.100为主服务,文件夹Redis-x64-3.2.100-2则是从服务,用的都是本地IP:127.0.0.1,生产环境大家可以根据自己实际情况进行设置。

    主服务器(RedisServer1)redis.windows.conf修改如下:port  6379(默认),不需要作修改;

    从服务器(RedisServer2)redis.windows.conf修改如下:port  6380;slaveof  127.0.0.1  6379,修改地方看下图:

     我们用RedisManagement分别进行两个端口连接做客户端,在主服务添加键可以同步到从服务,从服务添加无效。如果从服务没有配置从属关系,我们可以在Redis管理器中对从服务进行配置,打开控制台,输入slaveof 127.0.0.1 6379,效果一样。

    我们安装从服务时候,可以不通过配置文件来安装指定端口和指定主机。redis-server.exe --service-install redis.windows.conf --Service-name RedisServer2 --loglevel verbose --port 6380,这样也是指定端口安装。

    运行从服务redis-cli.exe,,这跟RedisManagement一样,也能配从属关系。

    五、管理客户端GUI程序

    1.客户端管理程序Redis Desktop Manager

    2.我用的版本是Redis Desktop Manager v.0.7.6.15,一路下一步安装即可。

    3.连接Redis服务器

     一个简单的界面管理器。

    连接成功后,如图所示。

    六、REDIS数据库的用途

    用于用户登录验证的session。因为redis数据库读取的速度较快,所以可以提高用户访问网站的速度。

    redis+mysql:

    看到很多网站都是用redis作为mysql的缓存使用。
    mysql存储在磁盘里,redis存储在内存里,redis既可以用来做持久存储,也可以做缓存,而目前大多数公司的存储都是mysql + redis,mysql作为主存储,redis作为辅助存储被用作缓存,加快访问读取的速度,提高性能。
    目前基本都是mysql(主) + redis(辅),在需要性能的地方使用redis,在不需要高性能的地方使用mysql。
  • 相关阅读:
    mysql cpu 占用高
    使用cron命令配置定时任务(cron jobs)
    python 获取时间
    linux 免密码登陆
    linux 查看登录日志
    shizhong
    正则(?is)
    python shell
    linux 时间设置
    java获取当前时间前一周、前一月、前一年的时间
  • 原文地址:https://www.cnblogs.com/liangxfng/p/12678446.html
Copyright © 2011-2022 走看看