触点数字孪生,揭秘它的独特魅力
698
2022-09-26
Redis学习笔记NO .1
1、redis简介
Redis是一个使用ANSI C编写的开源、支持网络、基于内存、可选持久性的[键值对存储数据库]它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。
2、linux安装
1、下载
在线下载
$ wget $ tar xzf redis-5.0.7.tar.gz -C /root/tool //解压到指定目录 $ cd redis-5.0.7.tar.gz $ make
利用ftp等软件上传至Linux桌面
$ tar xzf redis-5.0.7.tar.gz $ cd redis-5.0.7.tar.gz $ make
注:我们需要将源码编译后再安装,因此需要安装 c 语言的编译环境!不能直接 make
yum install gcc-c++ -y
make时遇到的错误:
In file included from adlist.c:34:0: zmalloc.h:50:31: fatal error: jemalloc/jemalloc.h: No such file or directory #include
解决办法:make MALLOC=libc
2、安装
make PREFIX=/usr/local/redis instal
安装到指定目录,若没有,则创建该目录;PREFIX必须大写
3、启动服务端跟客户端
./redis-server ./redis-cli
Redis服务器默认会使用6379端口1) , 通过--port参数可以自定义端口号:
redis-server --port 6380
4、关闭
shutdown
5、docker安装redis
docker search redis //命令来查看可用版本 docker pull redis:latest //拉取官方的最新版本的镜像 docker images //查看镜像 docker run -d --name redis-test -p 6379:6379 redis --requirepass "100104"//创建并运行容器 // --requirepass 密码 -d: 后台运行容器,并返回容器ID; docker exec -it redis redis-cli -a 100104 //运行客户端 --it 交互 /*docker常用命令 1、docker ps 查看进程 2、docker container rm 删除容器 */
3、redis配置
1、redis.conf
2、内存维护策略(缓存清理策略)
属性 | 含义 | 备注 |
bind | 限定访问的主机地 | 如果没有bind,就是任意ip 地址都可以访问。生产环境下,需要写自己应用服务器的ip 地址。 |
protected-mode | 安全防护模式 | 如果没有指定bind 指令,也没有配置密码,那么保护模式就开启,只允许本机访问。 |
port | 端口号 | 默认是6379 |
timeout | 超时时间 | 默认永不超时 |
daemonize | 是否为守护进程模式运行 | 守护进程模式可以在后台运行,默认是no |
pidfile | 进程id 文件保存的路径 | 配置PID 文件路径,当redis 作为守护进程运行的时候,它会把pid默认写到/var/redis/run/redis_6379.pid 文件里面 |
logfile | 日志文件的位置 | 当指定为空字符串时,为标准输出,如果redis 以守护进程模式运行,那么日志将会输出到/dev/null |
databases | 设置数据库数量 | 默认是0 |
requirepass | 设置密码 | 默认没有,但远程连接可能会连接不上 |
maxclients | 最大连接数 | |
maxmemory | 最大占用多少内存 | 一旦占用内存超限,就开始根据缓存清理策略移除数据如果Redis无法根据移除规则来移除内存中的数据,或者设置了“不允许移除”,那么Redis 则会针对那些需要申请内存的指令返回错误信息,比如SET、LPUSH 等。 |
maxmemory-policy noeviction | 缓存清理策略 | (1)volatile-lru:使用LRU 算法移除key,只对设置了过期时间的键 (2)allkeys-lru:使用LRU 算法移除key (3)volatile-random:在过期集合中移除随机的key,只对设置了过期时间的键 (4)allkeys-random:移除随机的key (5)volatile-ttl:移除那些TTL 值最小的key,即那些最近要过期的key (6)noeviction:不进行移除。针对写操作,只是返回错误信息 |
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。