Redis 学习之常用命令及安全机制详解程序员

 

该文使用centos6.5 64位    redis3.2.8 

 

一、redis常用命令

键值常用命令: 
1、 keys 返回满足pattern的所有key。 
127.0.0.1:6379> keys my* 
127.0.0.1:6379> keys * 
 
2、exits 确认key是否存在。 返回1表示存在  0表示不存在 
127.0.0.1:6379> exists name 
 
3、del :删除一个键 返回1:删除成功 0:失败 
127.0.0.1:6379> del name 
(integer) 1 
4、expire 设置key(该key必须存在)的过期时间 返回1表示设置成功 0 失败 
5、ttl 查看键的过期时间 如果该键已经过期(销毁)则返回负数 
127.0.0.1:6379> expire myset2 10 
(integer) 1 
127.0.0.1:6379> ttl myset2 
(integer) 4 
127.0.0.1:6379> ttl myset2 
(integer) -2 
6、选择数据库  
Redis中一共有16个数据库他们分别是0-15 
select 0 表示当前数据库 
7、move 将当前数据库中的key转移到其他数据库中 返回1表示成功 0 失败 
127.0.0.1:6379> move age 1 
(integer) 1 
8、persiste:移除给定key的过期时间 返回1表示取消成功 0 失败 
127.0.0.1:6379[1]> expire age 100 
(integer) 1 
127.0.0.1:6379[1]> ttl age 
(integer) 94 
127.0.0.1:6379[1]> persist age 
(integer) 1 
127.0.0.1:6379[1]> get age 
"25" 
9、randomkey:随机数据库中的一个key 
127.0.0.1:6379[1]> randomkey 
"age" 
10、rename:重命名key 
127.0.0.1:6379[1]> keys * 
1) "age" 
127.0.0.1:6379[1]> rename age age_now 
OK 
127.0.0.1:6379[1]> keys * 
1) "age_now" 
11、返回key的数据类型 
127.0.0.1:6379> type height 
string 
127.0.0.1:6379> type myzset1 
Zset 
服务器相关命令 
1、Ping :测试链接redis是否存活 返回 PONG 表示链接存活 
127.0.0.1:6379> ping 
PONG 
2、echo :在命令行打印数据 
127.0.0.1:6379> echo hello 
"hello" 
3、select 选择数据库。Redis数据库编号是0-15,我们可以选择任意一个数据库进行数据存储 
127.0.0.1:6379> select 0 
OK 
127.0.0.1:6379> select 15 
OK 
127.0.0.1:6379[15]> select 16 
(error) ERR invalid DB index 
127.0.0.1:6379[15]> 
4、quit 退出客户端与redis服务器的连接 
5、dbsize 返回当前数据库中key的数量 
127.0.0.1:6379> dbsize 
(integer) 15 
6、info 获取redis服务的相关信息和统计 
127.0.0.1:6379> info 
7、config get 查看redis服务器相关配置参数 
127.0.0.1:6379> config get * 
127.0.0.1:6379> config get port 
1) "port" 
2) "6379" 
7、flushdb 删除当前数据库中所有的key 
127.0.0.1:6379[1]> keys * 
1) "age_now" 
127.0.0.1:6379[1]> flushdb 
OK 
127.0.0.1:6379[1]> keys * 
(empty list or set) 
8、删除所有数据库中所有的key 
127.0.0.1:6379[1]> flushall

二、 redis安全机制

设置redis连接密码

Redis速度很快,所以在一台比较好的服务起下,一个外部的用户可以在1秒钟进行150k次的密码尝试连接,所以我们需要设置非常强大的密码来防止暴力破解。

设置密码:在redis的配置文件中 添加requirepass password

################################## SECURITY ################################### 
# Require clients to issue AUTH <PASSWORD> before processing any other 
# commands.  This might be useful in environments in which you do not trust 
# others with access to the host running redis-server. 
# 
# This should stay commented out for backward compatibility and because most 
# people do not need auth (e.g. they run their own servers). 
# 
# Warning: since Redis is pretty fast an outside user can try up to 
# 150k passwords per second against a good box. This means that you should 
# use a very strong password otherwise it will be very easy to break. 
# 
# requirepass foobared 
requirepass jalja

重启redis服务器:[[email protected] bin]#  ./redis-server /usr/local/redis/etc/redis.conf

1、测试密码是否可用:

[[email protected] bin]# ./redis-cli

127.0.0.1:6379> keys *

(error) NOAUTH Authentication required.(操作被拒绝)

使用密码(授权):auth password

127.0.0.1:6379> auth jalja

OK

2、使用密码登录redis服务器:[[email protected] bin]# ./redis-cli -a jalja

 

 

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/6395.html

(0)
上一篇 2021年7月16日
下一篇 2021年7月16日

相关推荐

发表回复

登录后才能评论