redis怎么连接mysql数据库_Golang连接Redis数据库的方法

Golang连接Redis数据库

golang连接数据库,这里博主推荐使用go-redis这个库,理由很简单(连接数据库的操作类似在数据库里面输入命令) go-redis的安装方式

go get -v https://github.com/go-redis/redis

-v小v,是输出过程。一般情况下不带-v什么反馈都看不到。

连接redis的方式

package ...

import (

"github.com/go-redis/redis"

)

func main() {

client := redis.NewClient(&redis.Options{

Addr:"127.0.0.1:6379",

Password:"",

DB:0,

})

defer client.Close()

}

顺带提一下,redis可以设置库的数量为255个,但实际上我们连接使用时,只有0-19这二十个库。默认配置下,redis可以使用0-16库

分享一些使用过程中,很快捷的技巧 如果在使用redis时,需要查询一下key是否存在

value, _ := client.Exists(key).Result()

会返回1或0,1代表key存在,0代表不存在。

新建key-value键值对时,可以使用Set方式

这里,需要我们将value进行字符串转化

import (

"encoding/json"

)

var value map[string]string{"username": "", "userpassword": ""}

mjson, _ := json.Marshal(value)

mString := string(mjson)

client.Set(UserName, mString, 0).Err()

获取键值对,可以使用Get方式

UserInfo, _ := client.Get(UserName).Result()

UserName是你要查询的值,如果觉得你查询的值不知道在不在,那最好先Exists一下

返回Key所对应的Value,也就是存储的value。

根据单一条件进行查找,可以使用Keys方式

keys, _ := client.Keys(search).Result()

注意一下,redis不支持多条件查找。也就是说正常的SQL语句是不行的,毕竟非关系型数据库嘛~

如果想要多条件的话,可以*key1*key2*这样写,但有局限性。

如果匹配到,就返回带有key的数组。如果没有匹配到,就返回空的数组。

更多使用方式,可以去从go-redis的文档上看。

到此这篇关于Golang连接Redis数据库的方法的文章就介绍到这了,更多相关Golang连接Redis数据库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Golang中,数据库连接池是通过内部实现的连接池来实现的。连接的建立是惰性的,当你需要连接的时候,连接池会自动帮你创建。你不需要手动操作连接池,一切都由Golang来完成。 在Golang的标准库database/sql/sql.go中实现了数据库连接池。当我们使用sql.Open函数来创建连接时,实际上就是在使用连接池。例如,使用以下代码创建一个MySQL连接池: db, err := sql.Open("mysql", "xxxx") 此外,我们还可以参考已经成熟并广泛使用的MySQL连接池库和Redis连接池库来了解连接池的实现方式。这些库通过实现连接池来提供更高效的数据库连接管理。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [使用mysql数据库与go进行交互](https://blog.csdn.net/tianlongtc/article/details/80115240)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Golang连接池的几种实现案例](https://blog.csdn.net/asd1126163471/article/details/127020095)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值