Redis安装与配置文件和启动方式以及基本知识

下载解压到自己喜欢的目录后进入到redis文件夹编译安装:

安装后进入到src目录看到:

redis-server  ------------>启动redis服务器

redis-cli-------------------->Redis命令客户端

redis-benchmark-------->Redis测试工具

redis-check-aof----------->AOF文件修复工具

redis-check-dump-------->RDB文件检查工具

redis-sentinel-------------->Sentinel服务器

三种启动方法:

最简启动:redis-server,按照默认配置启动

动态参数启动:redis-server --port 6380(6379是默认端口)

配置文件启动:redis-server configPath(配置文件)

因为redis是单线程的,所以可以在一台机器上布置多个redis,用端口区分开

启动常用的配置:

     

验证是否启动的方法有:

ps -ef | grep redis

netstat -antpl | grep redis

Redis客户端连接:redis-cli -h ip -p port

具体过程:(客户端和服务端可以在一台机器上)

通用命令:

[test@node37 ~]$ redis-cli -h node37 -p 6379
node37:6379>
node37:6379>
node37:6379> key *
(error) ERR unknown command 'key'
node37:6379> key*
(error) ERR unknown command 'key*'
node37:6379> set hello world
OK
node37:6379> keys *
1) "hello"
node37:6379> set python good
OK
node37:6379> keys *
1) "hello"
2) "python"
node37:6379> dbsize
(integer) 2
node37:6379> sadd myset as sd b h
(integer) 4
node37:6379> dbsize
(integer) 3
node37:6379> exists hello
(integer) 1
node37:6379> exists hella
(integer) 0
node37:6379> get hello
"world"
node37:6379> del hello
(integer) 1
node37:6379> get hello
(nil)
node37:6379> set a h
OK
node37:6379> expire a 10   ##设置过期时间为10秒
(integer) 1
node37:6379> get a
"h"
node37:6379> get a
"h"
node37:6379> get a
(nil)
node37:6379> persist a
(integer) 0
node37:6379> get a
(nil)

node37:6379> set a h
OK
node37:6379> expire a 100
(integer) 1
node37:6379> ttl a  ###查看过期时间
(integer) 97

node37:6379> persist a  ##在过期之前设置取消过期时间
(integer) 1
node37:6379> ttl a
(integer) -1

node37:6379> type a  ##key的类型
string
node37:6379> type myset
set

数据结构和内部编码:空间换时间

单线程:所有命令都是要排队等待执行,一瞬间只会执行一个命令,不会执行两个命令。

单线程为什么这么快!!!!

1.纯内存数据存储    2.非阻塞IO    3.避免线程切换和竞态消耗

猜你喜欢

转载自blog.csdn.net/qq_25948717/article/details/84655612