Go语言之进阶篇操作redis
1、windows安装redis
软件包下载地址:
https://github.com/MicrosoftArchive/redis/releases

1.1、安装--->下一步--->到完成。
1.2、设置redis密码。
C:\Program Files\Redis
#编辑这个文件:
redis.windows-service.conf
找到含有requirepass字样的地方,追加一行,输入requirepass 123456
备注 :做实验我们就不设置密码。
点击“开始”>右击“计算机”>选择“管理”。在左侧栏中依次找到并点击“计算机管理(本地)”>服务和应用程序>服务。再在右侧找到Redis名称的服务,重新启动服务。

最后来测试一下Redis是否正常提供服务。进入Redis的目录,cd C:\Program Files\Redis。输入redis-cli并回车。(redis-cli是客户端程序)如图正常提示进入,并显示正确端口号,则表示服务已经启动。
C:\Users\560140>cd "c:\Program Files\Redis" c:\Program Files\Redis>redis-cli
127.0.0.1:6379> auth 123456 #输入密码
OK
127.0.0.1:6379>
2、安装redis驱动
go get github.com/monnand/goredis
3、源码参考:
https://github.com/monnand/goredis/blob/master/redis.go
4、操作redis
示例:
package main import (
"fmt" "github.com/monnand/goredis"
) func main() {
var client goredis.Client
client.Addr = "127.0.0.1:6379"
err := client.Set("test", []byte("hello beifeng"))
if err != nil {
panic(err)
} res, err := client.Get("test")
if err != nil {
panic(err)
} fmt.Println(string(res)) //test hmset
f := make(map[string]interface{})
f["name"] = "nulige"
f["age"] = "30"
f["sex"] = "male" err = client.Hmset("test_hash", f)
if err != nil {
panic(err)
} //test zset
_, err = client.Zadd("test_zset", []byte("beifeng"), 100)
if err != nil {
panic(err)
}
}
执行结果:
#启动redis命令行
C:\Users\560140>cd "c:\Program Files\Redis"
c:\Program Files\Redis>redis-cli #test hmset
127.0.0.1:6379> get test
"hello beifeng" 127.0.0.1:6379> type test_hash
hash #test zset
127.0.0.1:6379> get test_zset
(error) WRONGTYPE Operation against a key holding the wrong kind of value
127.0.0.1:6379> hgetall test_hash
1) "name"
2) "nulige"
3) "age"
4) "30"
5) "sex"
6) "male" #查看类型
127.0.0.1:6379> type test_zse
none 127.0.0.1:6379> zrange test_zset 0 -1
1) "beifeng"
127.0.0.1:6379> zrange test_zset 0 -1 withscores
1) "beifeng"
2) "100"
Go语言之进阶篇操作redis的更多相关文章
- go语言之行--golang操作redis、mysql大全
一.redis 简介 redis(REmote DIctionary Server)是一个由Salvatore Sanfilippo写key-value存储系统,它由C语言编写.遵守BSD协议.支持网 ...
- go语言之进阶篇接口转换
1.go语音之进阶篇 示例: package main import "fmt" type Humaner interface { //子集 sayhi() } type Pers ...
- go语言之进阶篇文件常用操作接口介绍和使用
一.文件常用操作接口介绍 1.创建文件 法1: 推荐用法 func Create(name string) (file *File, err Error) 根据提供的文件名创建新的文件,返回一个文件对 ...
- go语言之进阶篇字符串操作常用函数介绍
下面这些函数来自于strings包,这里介绍一些我平常经常用到的函数,更详细的请参考官方的文档. 一.字符串操作常用函数介绍 1.Contains func Contains(s, substr st ...
- go语言之进阶篇成员操作
1.成员操作 示例: package main import "fmt" type Person struct { name string //名字 sex byte //性别, ...
- go语言之进阶篇通过select实现斐波那契数列
一.select作用 Go里面提供了一个关键字select,通过select可以监听channel上的数据流动. select的用法与switch语言非常类似,由select开始一个新的选择块,每个选 ...
- go语言之进阶篇正则表达式
正则表达式是一种进行模式匹配和文本操纵的复杂而又强大的工具.虽然正则表达式比纯粹的文本匹配效率低,但是它却更灵活.按照它的语法规则,随需构造出的匹配模式就能够从原始文本中筛选出几乎任何你想要得到的字符 ...
- Go语言之进阶篇mysql增 删 改 查
一.mysql操作基本语法 1.创建名称nulige的数据库 CREATE DATABASE nulige DEFAULT CHARSET utf8 COLLATE utf8_general_ci; ...
- Go语言之进阶篇获取文件属性
1.获取文件属性 示例: get_file_attribute.go package main import ( "fmt" "os" ) func main( ...
随机推荐
- Swift map filter reduce 使用指南
转载:https://useyourloaf.com/blog/swift-guide-to-map-filter-reduce/ Using map, filter or reduce to ope ...
- windows下elasticsearch启动
windows下启动elasticsearch,依赖于配置好JAVA_HOME D:\Program Files\Java\jdk1.7.0_71 命令行启动elasticsearch.bat即可实现 ...
- bzoj4001: [TJOI2015]概率论
题目链接 bzoj4001: [TJOI2015]概率论 题解 生成函数+求导 设\(g(n)\)表示有\(n\)个节点的二叉树的个数,\(g(0) = 1\) 设\(f(x)\)表示\(n\)个节点 ...
- BZOJ3459 : Bomb
二分答案,转化成判定所有科学家能否在lim时间内走到安全的地方 考虑网络流,对于每个非叶子节点,S向它连边,容量为该点科学家的人数 对于每个叶子节点,向T连边,容量为该点的容量 对于每个非叶子节点x, ...
- Codeforces Round #284 (Div. 1) A. Crazy Town 计算几何
A. Crazy Town 题目连接: http://codeforces.com/contest/498/problem/A Description Crazy Town is a plane on ...
- UVALive 6916 Punching Robot dp
Punching Robot 题目连接: https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid= ...
- CentOS 7解压安装PHP5.6.13
自动化脚本: https://github.com/easonjim/centos-shell/blob/master/php/install-php_5.6.13.sh
- MikroTik RouterOS获取在线终端和在线IP总数并自动对IP做限速(转)
1.将在线IP自动添加到地址列表 2.实时检测在线IP数 :local s 0 :foreach i in=[/ip firewall address-list find list=Online] d ...
- U盘量产大致研究思路
这几天搞了一波U盘量产,很多年前玩的基本都是些皮毛,比如U盘分区,U盘启动,以及台电U盘的光驱启动等等,这些现在看起来其实都不入眼,只是简单的将U盘分个区,并且没玩到主控上面去. 下面是一些自己的理解 ...
- PL/SQL Developer中调试oracle的存储过程
作者:iamlaosong 唉,真土,曾经用Toad.一直用dbms_output.put_line调试存储过程,仅仅认为不方便,用上PL/SQL Developer后,习惯性的还是用这种方法.人都是 ...