• 在window下安装Redis数据库,并用python链接Redis


    Redis是一个非关系型数据库,数据以key-value键值对的形式存储在数据库中。

    Redis的安装,可以直接参考这个链接:https://www.runoob.com/redis/redis-install.html ,我下面说的,会比这个教程稍详细一点。

    【1】我下载的是Redis-x64-3.2.100.zip,下载地址为 https://github.com/MSOpenTech/redis/releases ,然后选择一个你喜欢的本地目录,直接解压,就代表安装完成。

    我的安装目录是:D:MyFolderRedis-x64-3.2.100 , 下面有redis-server.exe,redis.windows.conf,redis-cli.exe,redis.windows-service.conf等文件,马上就会用到它们。

    然后顺手配一下环境变量,在path里添加Redis的安装路径: D:MyFolderRedis-x64-3.2.100

    【2】打开一个cmd命令窗口,在里面输入 cd D:MyFolderRedis-x64-3.2.100,然后输入 redis-server.exe redis.windows.conf ,来启动redis服务端;可以看到以下的提示:

     1 #进入到redis安装目录
     2 D:Usersliusiyi>cd D:MyFolderRedis-x64-3.2.100
     3 
     4 #输入redis-server.exe redis.windows.conf 来启动redis服务
     5 D:MyFolderRedis-x64-3.2.100>redis-server.exe redis.windows.conf
     6                 _._
     7            _.-``__ ''-._
     8       _.-``    `.  `_.  ''-._           Redis 3.2.100 (00000000/0) 64 bit
     9   .-`` .-```.  ```/    _.,_ ''-._
    10  (    '      ,       .-`  | `,    )     Running in standalone mode
    11  |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379
    12  |    `-._   `._    /     _.-'    |     PID: 78988
    13   `-._    `-._  `-./  _.-'    _.-'
    14  |`-._`-._    `-.__.-'    _.-'_.-'|
    15  |    `-._`-._        _.-'_.-'    |           http://redis.io
    16   `-._    `-._`-.__.-'_.-'    _.-'
    17  |`-._`-._    `-.__.-'    _.-'_.-'|
    18  |    `-._`-._        _.-'_.-'    |
    19   `-._    `-._`-.__.-'_.-'    _.-'
    20       `-._    `-.__.-'    _.-'
    21           `-._        _.-'
    22               `-.__.-'
    23 
    24 [78988] 08 Aug 11:34:59.546 # Server started, Redis version 3.2.100
    25 [78988] 08 Aug 11:34:59.548 * The server is now ready to accept connections on port 6379

    可以看到,redis显示port 6379,这是redis的默认配置,可以在安装目录下的redis.windows-service.conf中查看或修改默认配置。我的默认配置如下:

    更多配置说明,可以直接看配置文件的注释说明,或参考这个 https://cloud.tencent.com/developer/article/1384072

    bind 127.0.0.1 #绑定ip
    protected-mode yes #yes是指redis只允许本地访问,拒绝外部访问。要是开启了bind和密码,则外部可以访问
    port 6379 #监听端口
    tcp-backlog 511 #TCP listen() backlog
    timeout 0 #Close the connection after a client is idle for N seconds (0 to disable)
    tcp-keepalive 0 #A reasonable value for this option is 60 seconds.
    loglevel notice #loglevel有几个选项,notice属于moderately verbose
    logfile "server_log.txt"
    syslog-enabled yes
    syslog-ident redis
    databases 16 #dbid is a number between 0 and 'databases'-1
    #持久化策略之RDB快照
    save 900 1
    save 300 10
    save 60 10000
    stop-writes-on-bgsave-error yes #yes表示RDB快照生成错误时,停止客户端写入
    slave-serve-stale-data yes
    slave-read-only yes
    ……
    有一些可选项,是被#注释掉的, 需要的时候可以修改配置文件,或用命令修改:
    # requirepass foobared
    # unixsocket /tmp/redis.sock
    # unixsocketperm 700
    # slaveof <masterip> <masterport>
    # masterauth <master-password>
    ……

    这个cmd窗口,请一直开着;如果关闭了,就代表redis服务停止了,后面用客户端连接redis数据库的操作,就无法完成。

    【3】新开一个cmd窗口,输入cd D:MyFolderRedis-x64-3.2.100,然后输入redis-cli,启动一个redis客户端。如果出现IP+端口号,则表示成功。

    1 D:Usersliusiyi>cd D:MyFolderRedis-x64-3.2.100
    2 D:MyFolderRedis-x64-3.2.100>redis-cli
    3 127.0.0.1:6379>

    【4】在客户端窗口可以随意尝试redis数据库操作语句了。

    #Redis的数据库名是从0开始的,默认是在数据库0下;当选数据库1的时候,左边会提示为[1]
    127.0.0.1:6379> select 0
    OK
    127.0.0.1:6379> select 1
    OK
    127.0.0.1:6379[1]> select 0
    OK
    127.0.0.1:6379>
    #用set命令可以为某个键赋值,get可以获得某个键的值
    127.0.0.1:6379> set fruit "apple"
    OK
    127.0.0.1:6379> set studentNum 32
    OK
    127.0.0.1:6379> get fruit
    "apple"
    127.0.0.1:6379> get studentNum
    "32"
    #del是删除键,exists查看某个键是否存在
    127.0.0.1:6379> del fruit
    (integer) 1
    127.0.0.1:6379> exists fruit
    (integer) 0
    #在客户端向 Redis 服务器发送一个 PING ,如果服务器运作正常的话,会返回一个 PONG 
    #通常用于测试与服务器的连接是否仍然生效,或者用于测量延迟值
    127.0.0.1:6379> ping
    PONG
     1 #为当前数据库设置密码(redis默认是不需要密码的)
     2 127.0.0.1:6379> config set requirepass 123321
     3 OK
     4 #这时候输入数据库set命令就需要密码了
     5 127.0.0.1:6379> set key 123
     6 (error) NOAUTH Authentication required.
     7 #输入密码
     8 127.0.0.1:6379> auth 123321
     9 OK
    10 #可以继续使用了
    11 127.0.0.1:6379> set key 123
    12 OK

    【5】用python连接本地redis数据库

    1 import redis
    2 try:
    3         pool1 = redis.ConnectionPool(host='127.0.0.1',db=0, port=6379,password=123321)
    4         rds=redis.StrictRedis(connection_pool=pool1)
    5         #上面两句也可以简写成rds=redis.StrictRedis(host='127.0.0.1',db=0,port=6379,password=123321)
    6     except Exception as e:
    7         print(e)
    8     rds.set('name','Emily') 
    9     print(rds.get('name'))

    结果显示为:b'Emily'

    【6】在控制面板下打开本地服务,检查一下,此时是找不到名为Redis的服务的。这是因为Redis还没有被设置成为一个windows服务。

    安装redis为windows服务的命令:redis-server.exe --service-install redis.windows.conf

    成功后,再去刷新windows本地服务列表,就会发现Redis!第一次开启的cmd窗口,也不必再留着了。

    常用的redis服务命令。

    卸载服务:redis-server --service-uninstall

    开启服务:redis-server --service-start

    停止服务:redis-server --service-stop

    重命名服务:redis-server --service-name name

    【7】Redis也有桌面管理工具,Redis Desktop Manager。

  • 相关阅读:
    asp.net错误日志写入
    UniqueID和ClientID的来源
    js刷新页面方法大全
    Web开发 < base target>
    Asp.net页面使用showModalDialog时Postback弹出新页面解决办法
    Asp.net 回车默认按钮
    SQL语句添加删除修改字段及一些表与字段的基本操作
    国内使用google地图的初级使用
    [Asp.NET MVC+EasyUI] TreeGrid全部加载及懒加载示例
    SqlServer清空数据表数据
  • 原文地址:https://www.cnblogs.com/happyliusiyi/p/11326392.html
Copyright © 2020-2023  润新知