Redis(2)Redis基本操作

关于Redis数据库,如何安装、启动、配置windows服务等操作在之前的文章中有描述,
请参考:
Redis(1)windows安装、设置密码、设置windows启动服务

##Redis绑定IP##
在Redis配置文件中,我们可以绑定客户端IP,也就起到了显示某些IP禁止方位数据库的作用,这样提高系统的数据库安全。如何绑定呢?

修改redis.windows-service.conf配置文件:

# 多IP的情况
# bind 192.168.1.100 10.0.0.1 
# 单个IP的绑定方式
# bind 127.0.0.1

##数据库基本操作##


//登录
E:\Tools\Redis-x64-3.0.504>redis-cli.exe -p 6379 -a password

//列出所有keys
127.0.0.1:6379> keys *
(empty list or set)

//设置key为name value为ruyulin的一条数据
127.0.0.1:6379> set name ruyulin
OK

//获取kay为name的值
127.0.0.1:6379> get name
"ruyulin"

//列出所有keys
127.0.0.1:6379> keys *
1) "name"

//删除key为name的数据
127.0.0.1:6379> del name
(integer) 1
127.0.0.1:6379> keys *
(empty list or set)

//打印数据库信息
127.0.0.1:6379> info
# Server
redis_version:3.0.504
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:a4f7a6e86f2d60b3
redis_mode:standalone
os:Windows
arch_bits:64
multiplexing_api:WinSock_IOCP
process_id:16796
run_id:bca5413509de865aba7573a10ad76079b3ceeb1a
tcp_port:6379
uptime_in_seconds:681
uptime_in_days:0
hz:10
lru_clock:3371112
config_file:E:\Tools\Redis-x64-3.0.504\redis.windows-service.conf

# Clients
connected_clients:1
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:0

# Memory
used_memory:693232
used_memory_human:676.98K
used_memory_rss:655480
used_memory_peak:693232
used_memory_peak_human:676.98K
used_memory_lua:36864
mem_fragmentation_ratio:0.95
mem_allocator:jemalloc-3.6.0

# Persistence
loading:0
rdb_changes_since_last_save:3
rdb_bgsave_in_progress:0
rdb_last_save_time:1530097087
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:-1
rdb_current_bgsave_time_sec:-1
aof_enabled:0
aof_rewrite_in_progress:0
aof_rewrite_scheduled:0
aof_last_rewrite_time_sec:-1
aof_current_rewrite_time_sec:-1
aof_last_bgrewrite_status:ok
aof_last_write_status:ok

# Stats
total_connections_received:1
total_commands_processed:8
instantaneous_ops_per_sec:0
total_net_input_bytes:252
total_net_output_bytes:135
instantaneous_input_kbps:0.00
instantaneous_output_kbps:0.00
rejected_connections:0
sync_full:0
sync_partial_ok:0
sync_partial_err:0
expired_keys:0
evicted_keys:0
keyspace_hits:1
keyspace_misses:0
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec:0
migrate_cached_sockets:0

# Replication
role:master
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0

# CPU
used_cpu_sys:0.11
used_cpu_user:0.08
used_cpu_sys_children:0.00
used_cpu_user_children:0.00

# Cluster
cluster_enabled:0

# Keyspace
db0:keys=1,expires=0,avg_ttl=0

//列出客户端连接信息
127.0.0.1:6379> client list
id=2 addr=127.0.0.1:10646 fd=9 name= age=117 idle=0 flags=N db=0 sub=0 psub=0 multi=-1 qbuf=0 qbuf-free=32768 obl=0 oll=0 omem=0 events=r cmd=client

//获取数据库总记录数
127.0.0.1:6379> dbsize
(integer) 1

//清空数据库
127.0.0.1:6379> flushall
OK

##数据库支持的数据类型##

  • String:基本类型,一个key对应一个value
  • Hash:key value键值对的方式存储
  • List 有序的集合
  • Set 无序集合
  • Zset 有序集合

###String类型###
刚才上面的操作就是基于String类型操作的

//设置key为name value为ruyulin的一条数据
127.0.0.1:6379> set name ruyulin
OK

//获取kay为name的值
127.0.0.1:6379> get name
"ruyulin"

###Hash类型###


//设置集合
127.0.0.1:6379> hmset user name ruyulin age 30
OK

//获取集合属性
127.0.0.1:6379> hget user name
"ruyulin"
127.0.0.1:6379> hget user age
"30"

###List类型###

List集合可以从两侧插入数据

//从左侧插入集合数据
127.0.0.1:6379> lpush age 30
(integer) 1
127.0.0.1:6379> lpush age 300
(integer) 2
127.0.0.1:6379> lpush age 3000
(integer) 3

//列出集合所有数据
127.0.0.1:6379> lrange age 0 -1
1) "3000"
2) "300"
3) "30"

//排序升序
127.0.0.1:6379> sort age
1) "30"
2) "300"
3) "3000"

//排序降序
127.0.0.1:6379> sort age desc
1) "3000"
2) "300"
3) "30"

//从右侧插入数据
127.0.0.1:6379> rpush name 3000
(integer) 1
127.0.0.1:6379> rpush name 300
(integer) 2
127.0.0.1:6379> rpush name 30
(integer) 3
127.0.0.1:6379> lrange name 0 -1
1) "3000"
2) "300"
3) "30"

###Set集合###


//设置值 testset 是key
127.0.0.1:6379> sadd testset 1
(integer) 1
127.0.0.1:6379> sadd testset 2
(integer) 1
127.0.0.1:6379> sadd testset 3
(integer) 1
127.0.0.1:6379> sadd testset aa
(integer) 1

//列出集合数据
127.0.0.1:6379> smembers testset
1) "aa"
2) "3"
3) "2"
4) "1"

//删除指定数据
127.0.0.1:6379> srem testset 2
(integer) 1
127.0.0.1:6379> smembers testset
1) "aa"
2) "3"
3) "1"

###Zset集合###
是有序的集合,是通过评分进行排序的

//设置值 8 10 13 为分数
127.0.0.1:6379> zadd userset 8 zhangdan
(integer) 1
127.0.0.1:6379> zadd userset 10 lisi
(integer) 1
127.0.0.1:6379> zadd userset 13 wangwu
(integer) 1

//通过分数区间来排序
127.0.0.1:6379> zrangebyscore userset 0 100
1) "zhangdan"
2) "lisi"
3) "wangwu"

###JAVA操作Redis数据库###

操作数据库需要Jedis-2.9.0.jar,使用查询下api操作即可

<!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>2.9.0</version>
</dependency>

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值