参考文档《redis的linux安装及在github下的了解.docx》
一、安装
1、下载:wget http://download.redis.io/releases/redis-4.0.10.tar.gz 下载到/opt目录下
我直接使用root用户来操作的,因为我的普通用户权限不够。而且我也没有给我的普通用户可以sudo的权限 sudo命令失败及解决办法
一般将这些额外安装的软件下载到/opt目录下
2、解压:tar -zxvf redis-4.0.10.tar.gz 在/opt目录下解压
3、将解压后的文件移到指定目录,一般是/user/local/目录下:mv ./redis-4.0.10 /usr/local/redis
在/user/local/目录下新建redis目录。
将opt目录下的redis-4.0.10文件夹移动到新建的/user/local/redis目录下
4、编译:执行make 命令,进入/usr/local/redis/redis-4.0.10目录下
以上流程都很顺利,生成成功。但是我第一次安装的时候出现了几个问题:
参考 :Redis初次安装报错之 【gcc:命令未找到】
5、测试(不建议执行):make test ①耗时长;②额外安装TCL命令
6、安装:make PREFIX=/usr/local/redis/redis-4.0.10 install 将redis命令安装到/usr/local/redis/redis-4.0.10/bin目录下
建议:指定安装目录,默认安装在/usr/local/bin目录下
7、安装完成后,进入bin目录下查看 cd
- redis-benchmark redis性能测试工具,可以在自己本子运行,看看自己本子性能如何
- redis-check-aof AOF文件修复工具,修复有问题的AOF文件
- redis-check-rdb RDB文件检索工具,修复有问题的dump.rdb文件
- redis-cli redis命令行客户端
- redis-server redis服务器 启动命令
- redis-sentinel redis集群使用
8、配置文件,复制一份到/etc目录下 cp ./redis.conf /etc/redis
在Linux上这样:不管是什么配置文件,都不要直接操作它。
而是复制一份到/etc目录下,通过操作/etc下面的配置文件来确保不会出什么问题。
二、配置
Redis的配置文件路径在/etc/redis/redis.conf目录下。
核心配置项修改
1、绑定ip:如果需要远程访问,可将本行注释。或绑定一个真实ip
ping 127.0.0.1
2、端口:默认6379
port 6379
3、是否以守护进程运行。我们一般修改为daemonize yes 让服务在后台启动
(Linux的守护进程==Windows的服务。默认后台开启,Windows也有这一步:cmd-->服务-->Redis-->启动此服务)
- daemonize yes:以守护进程运行,不会在命令行阻塞,类似于服务
- daemonize no:默认,以非守护进程运行,当前终端被阻塞
- 推荐设置为yes
- redis默认不支持后台启动。我们通过编辑配置文件,进行后台启动。
vim +136 文件名 ---编辑该文件的136行,直接跳到这里修改 :wq保存
将136行的daemonize no改成daemonize yes,即配置可后台启动。这一步对后面至关重要,不要忘记。- 默认设置 daemonize no 的“服务启动操作” 信息展示
- 修改前后进行 “服务启动操作” 对比:
4、数据文件: dbfilename dump.rdb
5、数据文件存储路径 :默认 dir ./ ,代表当前目录
一般修改默认配置,创建/var/lib/redis文件夹 mkdir redis dir /var/lib/redis6、日志文件: 默认 logfile ""
一般修改默认配置,创建/var/log/redis文件夹 mkdir redis logfile "/var/log/redis/redis-server.log"7、数据库:databases 16 默认有16个,编号0-15
8、主从复制,类似于双击备份
slaveof
三、服务端和客户端命令
服务端
服务端命令为 ./redis-server 都是在bin目录下操作的
1、使用help查看帮助文档 ./redis-server --help
2、推荐配置后台启动 daemonize yes 上面已经配置好
3、启停方式
- ps -ef | grep redis / ps -aux | grep redis 查看redis服务进程/查看Redis是否启动 ##三种方式
查看redis服务进程 / Redis是否启动的三种方式 - ./redis-server /etc/redis/redis.conf 指定加载的配置文件,以 “配置后台启动” 方式启动
- killall redis-server / kill -9 pid 杀死redis服务
注意我们这里是不能这样启动的:
启动:redis-server --service-start
停止:redis-server --service-stop
客户端
服务端命令为 ./redis-cli 都是在bin目录下操作的
1、使用help查看帮助文档 ./redis-cli --help
2、连接redis ./redis-cli [-h ip -p port]
3、运行测试命令 ping 回复PONG即为成功
4、查看客户端状态:info
5、关闭服务端:./redis-cli shutdown 或 shutdown
单实例关闭:./redis-cli shutdown
多实例关闭,指定端口关闭:./redis-cli -p 6379 shutdown
四、Redis需要了解的基础知识
- 1、单进程
- ①单进程模型来处理客户端的请求。对读写等事件的响应是通过对epoll函数的包装来做到的。Redis的实际处理速度完全依靠主进程的执行效率
- ②epoll是Linux内核为处理大批量文件描述符而作了改进的epoll,是Linux下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。
- 2、默认16个数据库,类似数组下表从零开始,初始默认使用零号库
- 3、select命令切换数据库
- 4、dbsize查看当前数据库的key的数量
- 5、flushdb:清空当前库
- 6、flushall;通杀全部库
- 7、统一密码管理,16个库都是同样密码,要么都OK要么一个也连接不上
- 8、Redis索引都是从零开始