Redis缓存数据库使⽤以及命令
1.什么是Redis
Redis是⼀个完全免费开源的 NoSQL数据库 是由意⼤利⼈开发的⼀款内存⾼速缓存数据库 该软件由C语⾔编写,数据模型为Key Value 它⽀持丰富的数据结构(类型),⽐如String list hash set sorted.可持久化,保证了数据安全。
⽤处:
经常⽤在 热点数据 经常会被查询,但是不经常被修改删除的数据
官⽅测试数据
读的速度 110000次/s
写的速度 80000次/s
不会存在线程安全的问题
默认⽀持16个数据库
缺点:
太耗内存
NoSQL ⾮关系型数据库
NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。
在现代的计算系统上每天⽹络上都会产⽣庞⼤的数据量。
这些数据有很⼤⼀部分是由关系数据库管理系统(RDBMS)来处理。 1970年 E.F.Codd’s提出的关系模型的论⽂ “A relational model of data for large shared data banks”,这使得数据建模和应⽤程序编程更加简单。
使⽤需求:
⽀持⼤量并发⽤户(数万,甚⾄数百万量级)
为全球范围内的⽤户提供⾼质量的交互体验
⾼可⽤性 ⾼并发
⽀持处理半结构化数据和⾮结构化数据
快速适应不断变化的需求
(DBMS)关系型数据库
MySQL SQLServer Oracle 等等
(NoSQL)⾮关系型数据库
MongoDB Redis 等等
安装Redis数据库
连接互联⽹ 更新软件包
sudo apt-get update
输⼊ 执⾏后
sudo apt-get install -y redis-server
redis支持的数据结构出现错误时尝试
默认安装路径为 /usr/bin⾥ 可使⽤ ls redis* 查看
输⼊redis-cli 启动redis客户端
# 启动Redis客户端
redis-cli
# 客户端命令
# help 查看Redis版本信息等
help
# 退出Redis客户端
quit 或 exit
输⼊ ping 测试是否成功
出现PONG表⽰畅通
ping
通过启动命令检查Redis服务器状态默认端⼝号6379
netstat -nlt|grep 6379
配置⽂件默认在 /etc/f
修改配置⽂件配置⽂件较为长可以使⽤vi、vim的搜索功能进⾏查vi、vim 的搜索功能
1 .⽤vi打开Redis服务器的配置⽂件f
# 进⼊Redis配置⽂件
vi /etc/f
Redis以守护进程运⾏
如果以守护进程运⾏,则不会在命令⾏阻塞,类似于服务
如果以⾮守护进程运⾏,则当前终端被阻塞,⽆法使⽤
推荐改为yes,以守护进程运⾏
进⼊配置⽂件到这⼀⾏ 修改为以下配置
daemonize yes
2 .修改访问Redis的密码
使⽤Java连接Redis必须添加密码
#取消注释requirepass 添加你的密码
requirepass your_password
3 .让Redis服务器被远程访问
默认情况下,Redis服务器不允许远程访问,只允许本机访问,所以我们需要设置打开远程访问的功能。
配置⽂件中有好⼏处 类似的地⽅ 不要错了
配置⽂件⾥有好⼏处bind 127.0.0.1 不要错了
⼤概在69⾏左右
#注释bind
#bind 127.0.0.1
修改后,重启Redis服务器。
service redis-server restart
未使⽤密码登陆Redis服务器
他会告诉你 没有权限不能访问
redis-cli
redis 127.0.0.1:6379> keys *
(error) ERR operation not permitted
**登陆Redis服务器,输⼊密码 **
这时候就能正常的访问了
redis-cli -a your_password
redis 127.0.0.1:6379> keys *
1) "name"
2)....你的所有key
配置完成后重新启动服务器
# 重启redis-server 的三个命令任选其⼀即可
sudo service redis-server restart
sudo /etc/init.d/redis-server restart
sudo redis-server /etc/f
Redis关闭
.
/redis-cli shutdown 正常⽅式关闭 Redis 会进⾏持久化操作
kill -9 进程号强制关闭Redis服务端不会进⾏持久化操作容易造成数据丢失
ps -ef | grep -i redis 查看当前Redis运⾏的进程号
如果想要保证数据不造成丢失可以修改Redis配置⽂件的save 持久化时间
Ubuntu中使⽤Redis客户端
服务端设置密码后 客户端的连接⽅法必须带参数 ./redis-cli -h host -p port -a password
redis-cli -h 192.168.0.100 -p 6379 -a 123456
host代表 连接的IP地址
port 连接的端⼝号
password 密码
本机(虚拟机本机)访问可以忽略IP地址 port忽略的话默认是6379
Redis客户端常⽤命令 String
命令作⽤⽰例
del key根据key删除del userName 或 del key1 key2 …
keys pattern通配符 *代表所有 user? 开头为user的key key * 或 key user?
exists key判断⼀个key是否存在返回值0或1 expire key seconds给⼀个key设置过期时间 单位:秒
ttl key查询 kye的⽣命周期返回值 -1:永久 -2:⽆效persist key移除key的过期时间设置为永久有效
select index切换到第index个数据库select 1 切换到第⼀个数据库rename key newName修改key的名字rename key1 user1 move key index把key移动到下标为index的数据库⾥去move user1 1 把user1移动到下标为1的数据库⾥type key查看key是什么类型
FLUSHALL删除所有数据库中所有的key⽤于辞职时 删库跑路
FLUSHDB删除当前数据库中所有的key
Key的命名规范
key区分⼤⼩写命令不区分⼤⼩写
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论