Redis的基本知识说明

Redis的基本知识说明

1、启动redis服务器端和客户端

[root@VM-0-9-centos bin]# redis-server wylconfig/redis.conf
28237:C 28 Mar 2021 16:12:54.350 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
28237:C 28 Mar 2021 16:12:54.350 # Redis version=5.0.8, bits=64, commit=00000000, modified=0, pid=28237, just started
28237:C 28 Mar 2021 16:12:54.350 # Configuration loaded
[root@VM-0-9-centos bin]# redis-cli -p 6379
127.0.0.1:6379>

2、redis的基础知识概念

1)、redis默认有16个数据库

查看redis的配置文件:

# Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7.
# syslog-facility local0

# Set the number of databases. The default database is DB 0, you can select
# a different one on a per-connection basis using SELECT <dbid> where
# dbid is a number between 0 and 'databases'-1
databases 16

默认使用的是第0个数据库,可以使用select进行切换数据库!

127.0.0.1:6379> SELECT 3
OK
127.0.0.1:6379[3]> get name
(nil)
127.0.0.1:6379[3]> select 0
OK
127.0.0.1:6379> get name
"ltwuyanlong"
127.0.0.1:6379>
2)、DBSIZE:查看数据库大小
127.0.0.1:6379> DBSIZE
(integer) 5
127.0.0.1:6379> select 3 # 切换数据库
OK
127.0.0.1:6379[3]> DBSIZE# 查看DB大小
(integer) 0
127.0.0.1:6379[3]>

不同的数据库可以查看不同的值。

3)、查看所有的key:

使用命令keys *查看所有的key:

127.0.0.1:6379> keys *
1) "name"
2) "counter:__rand_int__"
3) "key:__rand_int__"
4) "mylist"
5) "myset:__rand_int__"
127.0.0.1:6379>
3)、清空当前DB:
127.0.0.1:6379[3]> select 0
OK
127.0.0.1:6379> keys *
1) "name"
2) "counter:__rand_int__"
3) "key:__rand_int__"
4) "mylist"
5) "myset:__rand_int__"
127.0.0.1:6379> FLUSHDB
OK
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379>
4)、清空所有的DB:
准备测试数据:

0号数据库:

127.0.0.1:6379> set name1 value1
OK
127.0.0.1:6379> set name2 value2
OK
127.0.0.1:6379> kses*
(error) ERR unknown command `kses*`, with args beginning with:
127.0.0.1:6379> kses *
(error) ERR unknown command `kses`, with args beginning with: `*`,
127.0.0.1:6379> keyss *
(error) ERR unknown command `keyss`, with args beginning with: `*`,
127.0.0.1:6379> keys *
1) "name2"
2) "name1"

1号数据库:

127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> keys *
(empty list or set)
127.0.0.1:6379[1]> set name3 value3
OK
127.0.0.1:6379[1]> set name4 value4
OK
127.0.0.1:6379[1]> keys *
1) "name3"
2) "name4"
127.0.0.1:6379[1]>

执行清空所欲数据库命令:FLUSHALL(清空所有key):这里不管你在哪个数据库执行该命令都是可以的。

127.0.0.1:6379[1]> FLUSHALL
OK
127.0.0.1:6379[1]>

验证数据库key是不是被清空:

[root@VM-0-9-centos bin]# redis-cli -p 6379
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> keys *
(empty list or set)
127.0.0.1:6379[1]>

证明数据库被清空了!

5)、思考:

为什么redis的端口号是:6379?

6379在是手机按键上MERZ对应的号码,而MERZ取自意大利歌女Alessia Merz的名字。MERZ长期以来被Redis作者antirez及其朋友当作愚蠢的代名词。后来Redis作者在开发Redis时就选用了这个端口。

——Alessia Merz 是一位意大利舞女、女演员。 Redis 作者 Antirez 早年看电视节目,觉得 Merz 在节目中的一些话愚蠢可笑,Antirez 喜欢造“梗”用于平时和朋友们交流,于是造了一个词 “MERZ”,形容愚蠢,与 “stupid” 含义相同。
——后来 Antirez 重新定义了 “MERZ” ,形容”具有很高的技术价值,包含技艺、耐心和劳动,但仍然保持简单本质“。
——到了给 Redis 选择一个数字作为默认端口号时,Antirez 没有多想,把 “MERZ” 在手机键盘上对应的数字 6379 拿来用了。
以上就是redis端口号为什么是6379的详细内容

mysql的3306 是作者女儿的名字!

6)、redis是单线程的:
(1)、了解

明白redis是很快的,官方表示,redis是基于内存操作的,CPU不是性能瓶颈!Redis的性能瓶颈是根据机器的内存和网络带款,既然可以使用单线程来实现,那么就使用单线程来实现。所以就使用了单线程。

redis是使用ANSI C语言来编写的。

官方提供的数据显示:每秒的QPS是100000+。

说明这个并不比memcached差。在速度上完全碾压了。

(2)、为什么单线程还这么快?
误区1:

高性能的服务器一定是多线程的?

误区2

多线程(CPU上下文切换)一定比单线程效率高?

CPU>内存>硬盘的速速有所了解

核心:

redis是将所有的数据全部放在内存中的,所以说明了使用单线程去操作效率就是最高的。

多线程(CPU上下文的切换,这是一个耗时的操作!!!)

对于内存系统来说,如果没有上下文切换,效率就是最高的!

多次读写都是在一个CPU上的!

所以说,在内存情况下是最佳的方案!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值