redis安装部署
redis简介
Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets)与范围查询, bitmaps, hyperloglogs和地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction),事务(transactions) 和不同级别的 磁盘持久化(persistence), 并通过 Redis哨兵(Sentinel)和自动分区(Cluster)提供高可用性(high availability)。
root用户或创建其他的用户
我使用的是自己创建的用户(创建的用户名称为dd)
- 使用root用户创建用户:useradd dd
- 设置密码:passwd dd
- 创建安装目录:mkdir /redis
- 修改权限:chown -R dd:dd /redis/
- chmod -R 771 /redis/
使用dd用户
- su - dd
- 进入目录: cd /redis/
- 执行下载redis压缩包
wget http://download.redis.io/releases/redis-5.0.8.tar.gz
- 也可以通过浏览器回车进行下载,再使用文件传输器上传到新建的目录下
http://download.redis.io/releases/redis-5.0.8.tar.gz - 解压:tar -zxvf redis-5.0.8.tar.gz
- 进入redis目录:cd redis-5.0.8/
- 编译:make
· 报错:/bin/sh: cc: 未找到命令
· 解决:未找到命令,原因是虚拟机系统中缺少gcc,安装一下gcc
· yum -y install gcc automake autoconf libtool make
○ 安装完成,在执行一次编译,
· 报错:zmalloc.h:50:31: 致命错误:
· 解决:make MALLOC=libc
○ 程序完成,再执行编译:make
○ 编译安装:make install
· 报错:install: 无法创建普通文件"/usr/local/bin/redis-server": 权限不够
· 解决1:sudo make install,如果还是无法解决
· 解决2:
§ 使用root用户
§ 查看 /etc/sudoers 文件权限,如果只读权限,修改为可写权限
□ ls -l /etc/sudoers
§ 设置 /etc/sudoers 文件权限,添加 可写权限
□ chmod u+w /etc/sudoers
§ 执行vim命令,编辑/etc/sudoers文件
§ vim /etc/sudoers
□ 在root ALL=(ALL) ALL 的下一行添加代码:admin ALL=(ALL) ALL
§ 恢复 /etc/sudoers的权限为440
□ chmod 440 /etc/sudoers
§ 查看/etc/sudoers的权限是否恢复
□ ll /etc/sudoers
○ 修改完成,切换回dsg用户
· 安装:sudo make install
启动redis服务端
○ sudo 是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的 root 命令的一个工具,在权限不够的时候,可以在命令行前加sudo
· 例如:sudo mkdir /usr/local/redis
○ 创建一个存放修改后配置文件的目录
· mkdir /usr/local/redis
○ 复制原本配置文件(redis.conf)到创建的目录下存放
· cp /redis/redis-5.0.8/redis.conf /usr/local/redis/
启动redis服务的两个方法
○ 方法一:
· 进入到新创建的目录:cd /usr/local/redis/
· 编辑redis.conf文件:vim redis.conf
§ 配置redis.conf中daemonize为yes,确保守护进程开启。
· 进入redis的src下执行启动命令:cd /redis/redis-5.0.8/src
· redis启动命令:./redis-server /usr/local/redis/redis.conf
· 查看启动redis后的进程:ps -ef | grep redis
· 方法一弊端:虚拟机关机或重启时redis的进程会被干掉
○ 方法二:
· 可以直接进入存放redis的目录下直接进行启动
§ cd /redis/redis-5.0.8/src
· 执行redis启动命令
§ ./redis-server /redis/redis-5.0.8/redis.conf
· 方法二弊端:CTRL+C会将redis的进程干掉,还需要保持终端不能关闭
设置Linux开机启动redis服务
○ 进入目录:cd /lib/systemd/system
○ 配置文件:vi redis.service(新文件)
○ 设置开机启动:systemctl enable redis
○ 开启服务:systemctl start redis
○ 停止服务:systemctl stop redis
○ 查看运行状态:ps -ef | grep redis
○ 客户端测试:
· 进入目录:cd /redis/redis-5.0.8/src
· 启动客户端:./redis-cli 或redis-cli(默认配置可以使用这个命令,如果命令没有设置为全局变量,就要加./))
· 退出客户端:exit
· 服务的地址: ./redis-cli -h 127.0.0.1 -p 6379
· 测试客户端,输出PONG表示成功