StackExchange.Redis学习笔记(三) 数据库及密码配置 GetServer函数
这一章主要写一些StackExchange.Redis的配置及不太经常用到的函数
数据库连接
下面是我的连接字符串,里面指定了地址,密码,及默认的数据库

Redis启动后默认会分成0-15个数据库,不同的数据库之间键可以重复,StackExchange.Redis的GetDatabase函数提供一个db的可选参数

默认-1实际上是0,可以通过设置连接字符串里的defaultdatabase来指定连接哪个数据库。
指定数据库的操作比较适合来根据业务来划分
Execute
在StackExchange.Redis中直接执行Redis命令可以通过Execute函数,但是对于大部分命令StackExchange.Redis的Database都会提供方法的封装,所以理论上是不需要调用Execute函数的
下面的代码等同于调用IDatabase的StringSet和StringGet函数

GetServer
然而有一些比较常用的功能,却无法通过IDabaBase中提供的函数来执行,比如Keys,Flushdb,Scan等。这是为什么呢?
原因在于StackExchange.Redis提供的StringSet,SetAdd等函数是面向数据库集群的,所以实际上添加一个键并不一定是添加在某一台服务器上的。
而FlushDb等操作是针对一个具体的服务器(Server)上的一个数据库的操作。试想如果提供了一个针对整个集群的flushDb操作,万一误删了,后果不可想象。。。
当然StackExchange.Redis也提供了针对Server的相关函数。可以通过ConnectionMultiplexer 实例的GetServer指定具体的Server,这里需要设置具体的服务器地址及端口号。
然后就可以调用其提供的相关函数了


关于Server的服务器地址参数我们也并不需要手写,Connection已经提供了一个GetEndPoints函数,直接调用即可

StackExchange.Redis学习笔记(三) 数据库及密码配置 GetServer函数的更多相关文章
- StackExchange.Redis学习笔记(三)
这一章主要写一些StackExchange.Redis的配置及不太经常用到的函数 数据库连接 下面是我的连接字符串,里面指定了地址,密码,及默认的数据库 Redis启动后默认会分成0-15个数据库,不 ...
- StackExchange.Redis学习笔记(一) Redis的使用初探
Redis Redis将其数据库完全保存在内存中,仅使用磁盘进行持久化. 与其它键值数据存储相比,Redis有一组相对丰富的数据类型. Redis可以将数据复制到任意数量的从机中 Redis的安装 官 ...
- StackExchange.Redis学习笔记(五) 发布和订阅
Redis命令中的Pub/Sub Redis在 2.0之后的版本中 实现了 事件推送的 发布订阅命令 以下是Redis关于发布和订阅提供的相关命令 SUBSCRIBE channel [channe ...
- StackExchange.Redis学习笔记(二) Redis查询 五种数据类型的应用
ConnectionMultiplexer ConnectionMultiplexer 是StackExchange.Redis的核心对象,用这个类的实例来进行Redis的一系列操作,对于一个整个应用 ...
- Redis学习笔记之数据库(一)
说句实话,redis这个软件要学习的东西实在多,多到,看的多了就容易迷失,而且还记不住.个人觉得靠记忆去学习一个知识肯定是比较糟糕的,所以还是要带着理解的,最终变成自己的东西,那这个东西才是自己的. ...
- StackExchange.Redis学习笔记(四) 事务控制和Batch批量操作
Redis事物 Redis命令实现事务 Redis的事物包含在multi和exec(执行)或者discard(回滚)命令中 和sql事务不同的是,Redis调用Exec只是将所有的命令变成一个单元一起 ...
- mybatis学习笔记(三)-- 优化数据库连接配置
原来直接把数据库连接配置信息写在conf.xml配置中,如下 <?xml version="1.0" encoding="UTF-8"?> < ...
- Redis学习笔记三:多机数据库的实现
1.复制 执行slaveof命令或者设置slaveof选项,让一个服务器去复制另外一个服务器. 旧版复制功能的实现(Redis 2.8 之前的版本) 复制功能分为同步和命令传播两个操作. 同步(syn ...
- redis学习笔记(三)——redis的命令大全总结
总结了一些redis五种存储类型的常用命令以及一些通用操作命令,不是很全,是在学习的时候将学到的做了个汇总,使用的时候可以查一下. 笔记写在表格里面了,不好粘贴.......后面的直接截图了..... ...
随机推荐
- openvswitch 2.7 安装过程记录 总结
envswitch 2.7 安装过程记录 总结 安装思路是参考文档: http://docs.openvswitch.org/en/latest/intro/install/general/#obta ...
- jenkins、ant、selenium、testng搭建自动化测试框架
如果在你的理解中自动化测试就是在eclipse里面讲webdriver的包引入,然后写一些测试脚本,这就是你所说的自动化测试,其实这个还不能算是真正的自动化测试,你见过每次需要运行的时候还需要打开ec ...
- Emgu.CV(二)
小实例 class Program { static void Main(string[] args) { #region Emgu.Cv string imgPath = @"D:\tim ...
- WPF 如何画出1像素的线
如何有人告诉你,请你画出1像素的线,是不是觉得很简单,实际上在 WPF 上还是比较难的. 本文告诉大家,如何让画出的线不模糊 画出线的第一个方法,创建一个 Canvas ,添加一个线 界面代码 < ...
- C# TextBlock 上标
我需要做一个函数,显示 ,但是看起来用 TextBlock 做的不好看. 我用 WPF 写的上标看起来不好看,但是最后有了一个简单方法让他好看. 本文告诉大家如何做一个好看的上标. 一开始做的方法: ...
- win10 uwp 存放网络图片到本地
有时候我们的网络很垃圾,我的的UWP要在第一次打开网络图片,就把图片存放到本地,下次可以从本地打开. 有时候用户使用的是流量网络,不能每次都联网下载. 我们不得在应用存放用户打开的图片. 这就是先把图 ...
- 【转】S3C2440存储系统-SDRAM驱动
SDRAM(Synchronous Dynamic Random Access Memory,同步动态随机存储器)也就是通常所说的内存.内存的工作原理.控制时序.及相关控制器的配置方法一直是嵌入式系统 ...
- 461. Hamming Distance(leetcode)
The Hamming distance between two integers is the number of positions at which the corresponding bits ...
- Python实现网站注册验证码生成类
# -*- coding:utf-8 -*- ''' Created on 2017年4月7日 @author: Water ''' import os import random import st ...
- LAMP 实现全过程及wordpress的搭建
一.介绍 1. LAM(M)P: L:linux A:apache (httpd) M:mysql, mariadb M:memcached 缓存 P:php, perl, python WEB 资源 ...