Redis
最流行的内存数据库,Redis可以理解为Remote Dictionary Service.
基本用法
安装
sudo apt install redis-server
# 启动(默认自动启动)
redis-server
# 客户端
redis-cli
127.0.0.1:6379> ping
基本配置
# 默认端口 6379
# 配置文件 /etc/redis/redis.conf
bind 0.0.0.0 # 运行远程访问,开发环境
redis-cli
# 常用命令
ping # 检查连通性
-h <host> -p <port>
shutdown
flushall 清数据库
INFO
SLAVEOF NO ONE / hostname port
CONFIG SET protected-mode no
集群/高可用
Redis Cluster
提供自动分片(sharding)和部分高可用
可用性:只要集群中大多数master可达、且失效的master至少有一个slave可达时,集群都可以继续提供服务
# 两种安装方式
# Ruby脚本方式
yum install ruby -y
yum install rubygems
gem install redis
# 自带脚本
cd utils/create-cluster/
# 编辑create-cluster文件,更新35行 HOSTS="$HOSTS <YOUR_SERVER_IP>:$PORT"
./create-cluster start
./create-cluster create
# 停止/卸载
./create-cluster stop
./create-cluster clean
## 密码认证
config set masterauth p@ssw0rd
config set requirepass p@ssw0rd
config rewrite
# 带参数 --masterauth p@ssw0rd --requirepass p@ssw0rd
Redis Sentinel
提供高可用及以下功能:
-
Monitoring
-
通知
-
自动故障转移Failover (Master -> Slave)
-
配置提供者(为客户端提供唯一入口)
优化
# 编辑/etc/sysctl.conf
net.core.somaxconn=65535
# 或及时生效
sysctl -w net.core.somaxconn=65535
管理工具
- Another Redis Desktop Manager
- RedisDesktopManager: GUI工具,提供Windows安装包
- redsmin: 云端管理界面
资源
- codis: 豌豆荚开源集群