Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
Redis是一个NoSQL数据库,常用缓存(cache)
Redis数据类型:string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)
Redis是一个中间件
同步数据(实时性同步数据、阶段性同步数据)
——————————————————————————————————————————
安装jdk
#创建java,下载openjdk
cd /usr
mkdir java
cd java
wget https://download.java.net/openjdk/jdk8u41/ri/openjdk-8u41-b04-linux-x64-14_jan_2020.tar.gz
#解压,更改文件夹名
tar -zxvf openjdk-8u41-b04-linux-x64-14_jan_2020.tar.gz
ll
mv java-se-8u41-ri openjdk-8u41
#配置环境变量
vi + /etc/profile
#最后添加如下内容
export JAVA_HOME=/usr/java/openjdk-8u41
export PATH=$PATH:$JAVA_HOME/bin
#更新,验证
source /etc/profile
java -version
安装redis
#安装gcc
yum -y install gcc gcc-c++
#安装net-tools
yum -y install net-tools
#官网https://redis.io/
cd /opt/
wget http://download.redis.io/releases/redis-7.0.4.tar.gz
解压至/opt/目录下
tar -zxvf redis-7.0.4.tar.gz -C /opt/
——————————————————————————————————————————
#编译安装
make
make install
INSTALL redis-server
INSTALL redis-benchmark
INSTALL redis-cli
//启动redis
redis-server 或 nohup redis-server &
//配置后台启动
redis-server /opt/redis/redis.conf
//停止redis
redis-cli shutdown
#daemonize配置该为yes
vim redis.conf
#配置redis开机自启
vim /etc/systemd/system/redis.service
[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/opt/redis/src/redis-server /opt/redis/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
//重载系统服务
systemctl daemon-reload
systemctl start redis
systemctl status redis
systemctl restart redis
//开机自启
systemctl enable redis
#修改配置密码(根据个人需求修改密码)
find / -name redis.conf
vim redis.conf
#创建 redis 命令软链接
find / -name redis-cli
ln -s /usr/local/bin/redis-cli /usr/bin/redis
redis
//登录redis
redis-cli
auth 密码
redis-cli -h 127.0.0.1 -p 6379
redis-cli -h 127.0.0.1 -p 6379 -a 密码
redis-cli -a 密码
#查看所有6379端口使用情况
netstat -ntulp |grep 6379
netstat -ntulp |grep redis
——————————————————————————————————————————
连接配置
vim /opt/redis/redis.conf
注释 bind
#注释
#bind 127.0.0.1 -::1 //bind 127.0.0.1 -::1表示只本机使用 ,注释后表示任意连接
关闭保护模式(自己访问自己)
命令重命名
flushall与flushdb根据项目情况使用
flushall删除所有
flushdb删除当前数据库
rename-command flushall "" #表示flushall不能使用
rename-command flushdb ""
——————————————————————————————————————————
Redis客户端
命令行客户端
redis-cli -h 127.0.0.1 -p 6379
redis-cli -h 127.0.0.1 -p 6379 -a 密码
图形化桌面客户端
8.8版本后商业化收费
RedisDesktopManager
官网:https://resp.app/
GitHub - RedisInsight/RedisDesktopManager: Cross-platform Developer GUI for Redis
链接:https://pan.baidu.com/s/1y3cdOqS1E2UIGW22nr9zNQ?pwd=QGS1
提取码:QGS1
RedisPlus
RedisPlus: RedisPlus是为Redis可视化管理开发的一款开源免费的桌面客户端软件,支持Windows 、Linux 、Mac三大系统平台,RedisPlus提供更加高效、方便、快捷的使用体验,有着更加现代化的用户界面风格。
RedisDesktopManager-Windows
Releases · lework/RedisDesktopManager-Windows · GitHub
——————————————————————————————————————————
redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部 分场合可以对关系数据库起到很好的补充作用。它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便。
Redis支持主从同步。数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。存盘可以有意无意的对数据进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录。同步对读取操作的可扩展性和数据冗余很有帮助。
redis的官网地址,非常好记,是redis.io。(域名后缀io属于国家域名,是british Indian Ocean territory,即英属印度洋领地),Vmware在资助着redis项目的开发和维护。
从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。
redis 的作者,叫Salvatore Sanfilippo,来自意大利的西西里岛,居住在卡塔尼亚。目前供职于Pivotal公司。他使用的网名是antirez。