本文共 3194 字,大约阅读时间需要 10 分钟。
在安装 Redis 之前,确保你的系统满足以下要求:
Redis 可通过 YUM 仓库安装。首先安装必要的依赖包:
yum -y install centos-release-sclyum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutilsscl enable devtoolset-9 bash
下载 Redis 的最新版本,并解压安装:
wget http://download.redis.io/releases/redis-4.0.10.tar.gztar -xf redis-4.0.10.tar.gzcd redis-4.0.10make && make install
在 /etc/redis 目录下创建配置文件:
mkdir /etc/rediscp redis.conf /etc/redis/6379.conf
使用 systemd 管理 Redis 服务:
# 创建服务配置文件echo "[Unit]Description=RedisAfter=network.target[Service]Type=simpleExecStart=/usr/local/bin/redis-server /etc/redis/6379.conf --daemonize noExecStop=/usr/local/bin/redis-cli -p 6379 shutdownWorkingDirectory=/usr/local/bin[Install]WantedBy=multi-user.target" > /etc/systemd/system/redis.service# 启用服务systemctl enable redis.servicesystemctl daemon-reloadsystemctl start redis
编辑配置文件:
vi /etc/redis/6379.conf# bind 127.0.0.1 192.168.1.10
在配置文件中设置 daemonize yes,然后重启服务:
systemctl stop redissystemctl start redis
systemctl status redis
Redis 支持多种数据类型,包括字符串、列表、哈希、集合和有序集合。
基本操作示例:
# 设置值redis-cli -p 6379 set name shark EX 10# 获取值redis-cli -p 6379 get name# 执行批量操作redis-cli -p 6379 --batch \ set name1 value1 \ set name2 value2
列表支持动态大小和快速插入删除:
# 添加元素(左端插入)redis-cli -p 6379 lpush list a b c# 获取列表长度redis-cli -p 6379 llen list# 弹出左端元素redis-cli -p 6379 lpop list
哈希适用于键值对存储:
# 设置多个字段redis-cli -p 6379 hmset userinfo username shark userpsw 123456# 获取单个字段redis-cli -p 6379 hget userinfo username
集合元素唯一且无序:
# 添加元素redis-cli -p 6379 sadd s1 a b c# 获取所有元素redis-cli -p 6379 smembers s1
安装步骤:
# 下载并解压wget https://github.com/phpredis/phpredis/archive/4.2.0.tar.gzcd phpredis-4.2.0make && make install# 配置 PHPvi /etc/php.iniextension=redis.so
php -m | grep redis
示例连接代码:
connect('localhost', 6379);$redis->set('key', 'value');echo $redis->get('key');?> Redis 提供两种持久化方式:RDB 和 AOF。
RDB 将数据库快照保存为二进制文件:
# 启用 RDBvi /etc/redis/6379.confsave 900 1# 或禁用自动生成# save 300 10# save 60 10000# 启用 bgsaveredis-cli bgsave
AOF 记录所有写入命令:
vi /etc/redis/6379.confappendonly yesappendfreq 60# 启用 AOFredis-cli -p 6379 bgrewriteaof
从服务器执行:
redis-cli -p 6379 slaveof 172.16.153.178 6379
Sentinel 负责监控主从状态:
# 配置文件示例bind 0.0.0.0port 27000daemonize yessentinel monitor mymaster 127.0.0.1 6379 2sentinel down-after-milliseconds mymaster 3000sentinel failover-timeout mymaster 5000
Sentinel 会自动将从服务器升级为主服务器:
# 停止主服务器redis-cli -p 6380 shutdown# 检查 Sentinel 状态redis-cli -p 27000 info
每个节点负责特定范围的数据槽。
步骤:
redis-cli --cluster create 192.168.122.230:7001 192.168.122.230:7002 192.168.122.230:7003 --cluster-replicas 1
添加新节点并分配槽:
# 添加主节点redis-cli --cluster add-node new_host:new_port existing_host:existing_port --cluster-master# 分配槽redis-cli --cluster reshard
通过以上步骤,用户可以完成 Redis 的安装、配置和使用,确保数据库的高可用性和数据持久化。
转载地址:http://lexv.baihongyu.com/