1 redis 基本操作2 3 4 5 进入redis6 7 redis-cli 8 9 #不能进入,就安装:10 sudo apt-get update11 sudo apt-get install redis-server12 13 exit #退出14 15 Select 命...
1 redis 基本操作
2
3
4
5 进入redis
6
7 redis-cli
8
9 #不能进入,就安装:
10 sudo apt-get update
11 sudo apt-get install redis-server
12
13 exit #退出
14
15 Select 命令用于切换到指定的数据库,数据库索引号 index 用数字值指定,以 0 作为起始索引值。
16 #默认使用 0 号数据库 默认开16个库
17 SELECT 1 # 使用 1 号数据库,Redis 现在的命令提示符多了个 [1]
18
19
20
21
22
23 redis五种数据类型、及操作
24
25 - string 字符串
26 - list 列表
27 - hash 哈希
28 - set 集合
29 - sorted sets 有序集合
30
31 string
32
33 string 类型是 redis 最基本的类型, string 类型,一个 key 对应一个 value,一个 value 最大能存储512MB的数据。
34
35 - set key value
36 - 设置给定 key 的值。如果 key 已经存储其他值, SET 就覆写旧值,且无视类型。
37 - set name 'juhao'
38
39 - get key
40 - 返回key的值,若key不存在则返回nil
41
42 mset key value [key value..]
43 - 为多组key设置值,该操作为原子操作,要么一组都设置成功,要么一组都设置失败;
44 - mset username 'root' password '123' name 'juhao'
45
46 - mget key [key...]
47 - 返回一个或多个key的值,若key不存在返回nil,若key存在但不是字符串返回nil
48 - mget username, password, name #有,号会被认为是key的一部分
49 mget username password name
50
51 - append key value
52 - 将指定的值追加到key末尾,若key不存在,则创建并赋值,返回追加后的字符串长度
53 - append name love
54
55
56
57 - ttl key
58 - 返回key的剩余生存时间, -1 表示永久存在, -2表示不存在
59
60 - set key value ex seconds
61 - 设置 key的同时,设置过期时间(单位:秒) key 过期后将不再可用,会被系统自动删除。
62 - set age 18 ex 20
63 或 setex key seconds value 例: ( setex sex 20 '男' )
64
65
66
67 - persist key
68 - 移除指定key的生存时间,成功返回1,若key不存在或不存在生存时间时返回0;
69
70
71
72 全局key操作
73
74 - rename key newkey 改名
75 - 当key和newkey相同或者key不存在时返回一个错误,当newkey已存在时则会覆盖;
76 - keys * # 查看所有的key
77
78 del key # 删除 返回成功的个数
79
80 exists key # 查看key是否存在 返回存在个个数
81
82 type key # 查看key类型
83
84 expire key seconds #设置过期时间
85
86 persist key #移除过期时间
87
88 flushdb #删除当前数据库中的所有key
89
90 flushall #删所有
91
92
93
94
95 list
96
97 列表的元素类型为string,
98 按照插入顺序排序
99 在列表的头部或者尾部添加元素
100
101
102
103 - lpush key value[value...]
104 - 在头部插入数据
105 - lpush key value #例 lpush my_list a b c d
106 - 在尾部添加数据
107 - rpush key value #例 rpush my_rlist a b c d
108
109
110
111 - lindex key index
112 - 返回列表中元素的值。index从0开始,当index超出索引时返回null
113 - lindex my_list 3 #查看第个
114
115 - lrange key start stop
116 - 查看索引范围内元素的值
117 - lrange my_list 0 -1 #查看所有值
118
119 - llen key
120 - 返回列表的长度
121
122
123 - lset key index newvalue
124 - 指定索引号进行修改
125 - lset my_list 0 'hello'
126
127
128
129 - 删除
130 - lpop key 删除左边第一个
131 - rpop my_list
132 - rpop key 删除右边第一个
133 - rpop my_list
134
135 - lrem key count value
136 - 删除指定数量的value值
137 - rpush test_list c a a b b c d e a d f m c
138
139 #count > 0 从左往右 删除数量为count的value
140 例 : lrem test_list 2 a
141 lrange test_list 0 -1
142
143 #count = 0 删除所有的 value
144 例 : lrem test_list 0 d,
145
146 #count < 0 从右往左 删除数量为count的value
147 例 : lrem test_list -2 c
148
149
150 hash
151
152 是一个键值(key=>value)对集合。是string 类型的 field 和 value 的映射表,hash 特别适合用于存储对象
153 field 域
154 value 值
155
156 设置/修改
157
158 - hset key field value
159 - 将field-value设置到hash表中,若key不存在会新建hash表再赋值,已存在则会覆盖;
160 - hset user name juhao #user { name:juhao}
161 - hmset key field1 value1[field value...]
162 - 同时设置多个
163 - # user {name:juhao , age:18}
164 hmset user name juhao age 18
165
166
167
168 查看
169
170 - hget key field
171 - 获取value
172 - hget user name
173 - hmget key field[field...]
174 - 获取多个value
175 - hmget user name age
176 - hvals key
177 - 获取全部value
178 - hkeys key
179 - 获取所有的field
180
181 - hgetall key
182 - 获取全部field 和 value
183 - hlen key
184 - 查看有几个键值对
185
186 - hexists key field
187 - 判断hash表中指定域是否存在,返回1,若key或field不存在则返回0;
188
189 删除
190
191 - hdel key field
192 - hdel user name
193
194
195
196
197
198
199 set
200
201 元素为string类型
202 无序集合
203 元素具有唯一性,不重复
204
205
206
207
208 - sadd key member [member...] 增加元素
209 - 将一个或多个member元素加入到集合key中,若member已存在那么会忽略此元素,
210 - sadd my_set m n b v c x z b
211 - scard key
212 - 返回集合key中元素的个数;
213 - smembers key
214 - 获取集合中所有元素
215
216
217
218 - sismember key member 判断集合存在某个值
219 - 判断member在key中是否已存在, 返回0或1
220 - sismember my_set b
221
222
223
224 - 删除
225 - srem key member [member...]
226 - 移除一个或多个元素,不存在的member会被忽略,返回被移除元素个数
227 - srem my_set a b n
228 - spop key 随机删除
229 - 移除并返回集合中的一个随机元素,当key不存在时返回NULL
230
231
232
233 - 交集
234 # sinter key1 key2 ..
235 例
236 sinter my_set my_set2
237 把 key1 key2的交集合并到newkey
238 # sinterstore newkey key1 key2
239 例
240 sinterstore new_set my_set my_set2
241 - 并集
242 # sunion key1 key2 ...
243 例
244 sunion my_set my_set2
245
246 把 key1 key2的并集合并到newkey
247 # sunionstore newkey key1 key2
248 例
249 sunionstore new_set2 my_set my_set2
250 - 差集
251 # sdiff key1 key2
252 sdiff my_set my_set2
253 把 key1 key2的差集合并到newkey
254 # sdiffstore newkey key1 key2
255 例
256 sdiffstore new_set3 my_set my_set2
257
258
259
260
261
262 zset
263
264 类似于Set,不同的是Sorted中的每个成员都分配了一个分数(Score)用于对其中的成员进行排序(升序)。
265 zset的成员是唯一的,但分数(score)却可以重复。
266
267 添加/修改
268
269 - zadd key score member[ [score member] ..]
270 - 设置, 存在就更新
271 - zadd my_zset 1 'one'
272 zadd my_zset 2 'tow'
273
274 zadd my_zset 10 one 20 two 30 three 40 four 50 'five'
275
276 查看
277
278 - zscore key member
279 - 查看score值
280 zscore my_zset two
281
282 - zrange key start stop[withscores]
283 - 按索引返回key的成员, withscores表示显示score
284 - zrange my_zset 0 -1 #显示全部
285
286 - zrangebyscore key min max
287 - 返回集合中 score 在给定区间的元素
288 - zrangebyscore zset 10 30
289
290
291
292
293 删除
294
295 - zrem key member [member...]
296 - 移除有序集合中的一个或多个元素,若member不存在则忽略;
297 - zrem my_zset two
298
299
300 - zremrangebyrank min max :
301 - 删除集合中索引在给定区间的元素
302 zremrangebyrank my_zset 1 3
303 - zremrangebyscore min max :
304 - 删除集合中 score 在给定区间的元素
305 zremrangebyscore my_zset 10 30
306
307
308
309
310
311
312
313
314
315 redis配置
316
317 vim /etc/redis/redis.conf #配置文件地址
318
319 port 6379 # 默认端口
320 logfile /var/log/redis.log # 日志文件位置
321 dbfilename dump.rdb # RDB持久化数据文件名 ,
322 dir /var/lib/redis #指定本地数据库存放目录
323 bind 0.0.0.0 # 指定IP进行监听
324
325 requirepass yourpassword #密码
326
327 save 900 1 #这三个是持久化,注释掉就关掉持久化
328 save 300 10
329 save 60 10000
330
331 启动/停止/重启命令
332
333 /etc/init.d/redis-server stop
334 /etc/init.d/redis-server start
335 /etc/init.d/redis-server restart
336
337
338
339
340 设置密码
341
342 config get requirepass //获取当前密码
343 #默认情况下 requirepass 参数是空的,这就意味着你无需通过密码验证就可以连接到 redis 服务
344
345 进入配置文件
346 vim /etc/redis/redis.conf
347 找到requirepass 设置密码
348 vim 查找 /requirepass 按n查找下一个
349 requirepass yourpassword //此处注意,行前不能有空格
350 重启redis
351 redis-cli shutdown
352
353 进入在添加 auth 123456
354 登陆的时候加上密码 redis-cli -a 123456
355
沃梦达教程
本文标题为:redis
猜你喜欢
- redis清除数据 2023-09-13
- Oracle 删除大量表记录操作分析总结 2023-07-23
- 搭建单机Redis缓存服务的实现 2023-07-13
- Mongodb启动报错完美解决方案:about to fork child process,waiting until server is ready for connections. 2023-07-16
- 基于Python制作一个简单的文章搜索工具 2023-07-28
- Numpy中如何创建矩阵并等间隔抽取数据 2023-07-28
- SQL Server 2022 AlwaysOn新特性之包含可用性组详解 2023-07-29
- SQLSERVER调用C#的代码实现 2023-07-29
- MySQL8.0.28安装教程详细图解(windows 64位) 2023-07-26
- 在阿里云CentOS 6.8上安装Redis 2023-09-12
