linux 安装redis 完整步骤
最近在linux服务器上需要安装redis,来存放数据,增加用户访问数据的速度,由于是第一次安装,于是在百度上搜了一篇文章,按照这篇博客,顺利安装好了,因此将博主的文章拷过来记录一下,方便以后使用,也为需要的朋友提供一个方便,
参考博文地址:https://www.cnblogs.com/lauhp/p/8487029.html
安装:
1.获取redis资源
wget http://download.redis.io/releases/redis-4.0.8.tar.gz
2.解压
tar xzvf redis-4.0.8.tar.gz
3.安装
cd redis-4.0.8
make
cd src
make install PREFIX=/usr/local/redis
4.移动配置文件到安装目录下
cd ../
mkdir /usr/local/redis/etc
mv redis.conf /usr/local/redis/etc
5.配置redis为后台启动
vi /usr/local/redis/etc/redis.conf //将daemonize no 改成daemonize yes
6.将redis加入到开机启动
vi /etc/rc.local //在里面添加内容:/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf (意思就是开机调用这段开启redis的命令)
7.开启redis
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
8.将redis-cli,redis-server拷贝到bin下,让redis-cli指令可以在任意目录下直接使用
cp /usr/local/redis/bin/redis-server /usr/local/bin/
cp /usr/local/redis/bin/redis-cli /usr/local/bin/
9.设置redis密码
a.运行命令:redis-cli
b.查看现有的redis密码(可选操作,可以没有)
运行命令:config get requirepass 如果没有设置过密码的话运行结果会如下图所示
c.设置redis密码
运行命令:config set requirepass ****(****为你要设置的密码),设置成功的话会返回‘OK’字样
d.测试连接
重启redis服务
//(redis-cli -h 127.0.0.1 -p 6379 -a ****(****为你设置的密码))
输入 redis-cli 进入命令模式,使用 auth '*****' (****为你设置的密码)登陆
10.让外网能够访问redis
a.配置防火墙: firewall-cmd --zone=public --add-port=6379/tcp --permanent(开放6379端口)
systemctl restart firewalld(重启防火墙以使配置即时生效)
查看系统所有开放的端口:firewall-cmd --zone=public --list-ports
b.此时 虽然防火墙开放了6379端口,但是外网还是无法访问的,因为redis监听的是127.0.0.1:6379,并不监听外网的请求。
(一)把文件夹目录里的redis.conf配置文件里的bind 127.0.0.1前面加#注释掉
(二)命令:redis-cli连接到redis后,通过 config get daemonize和config get protected-mode 是不是都为no,如果不是,就用config set 配置名 属性 改为no。
常用命令
redis-server /usr/local/redis/etc/redis.conf //启动redis
pkill redis //停止redis
卸载redis:
rm -rf /usr/local/redis //删除安装目录
rm -rf /usr/bin/redis-* //删除所有redis相关命令脚本
rm -rf /root/download/redis-4.0.4 //删除redis解压文件夹
8-启动redis:
两种方式:
redis-server &
加上`&`号使redis以后台程序方式运行
或者是
redis-server
9-检测后台进程是否存在
ps -ef |grep redis
10-检测6379端口是否在监听
netstat -lntp | grep 6379
有时候会报异常
原因: Redis已经启动
解决: 关掉Redis,重启即可
- redis-cli shutdown
- redis-server
然后你就能看到Redis愉快的运行了.
使用redis-cli客户端检测连接是否正常
- redis-cli
- 127.0.0.1:6379> keys *
- (empty list or set)
- 127.0.0.1:6379> set key "hello world"
- OK
- 127.0.0.1:6379> get key
- "hello world"
停止redis:
使用客户端
redis-cli shutdown
因为Redis可以妥善处理SIGTERM信号,所以直接kill -9也是可以的
kill -9 PID
#启动redis服务端
$ src/redis-server
#启动redis客户端
$ src/redis-cli
Redis客户端常见操作
Redis是key-value数据库,支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。
当value是string类型,命令包括set get setnx incr del 等。
> set server:name "fido" // 设置键值
OK
> get server:name // 获取键值
"fido"
> setnx connections 10 // set if not exists
OK
> incr connections // 原子性增加values值
(integer) 11
> incr connections
(integer) 12
> del connections // 删除key
(integer) 1
> incr connections
(integer) 1
当value是list类型,命令包括rpush lpush llen lrange lpop rpop del 等。
> rpush friends "Alice" // 在末尾追加
(integer) 1
> rpush friends "Bob"
(integer) 2
> lpush friends "Sam" // 插入到开头
(integer) 3
> lrange friends 0 -1 // 返回列表的子集,类似切片操作
1) "Sam"
2) "Alice"
3) "Bob"
> lrange friends 0 1
1) "Sam"
2) "Alice"
> lrange friends 1 2
1) "Alice"
2) "Bob"
> llen friends // 返回列表长度
(integer) 3
> lpop friends // 删除并返回列表第一个元素
"Sam"
> rpop friends // 删除并返回列表最后一个元素
"Bob"
> lrange friends 0 -1
1) "Alice"
> del friends // 删除key
(integer) 1 // 1表示成功,0表示失败
当value是set类型,命令包括sadd srem sismember smembers sunion del等。
> sadd superpowers "flight" // 添加元素
(integer) 1
> sadd superpowers "x-ray vision"
(integer) 1
> sadd superpowers "reflexes"
(integer) 1
> srem superpowers "reflexes" // 删除元素
1
> sismember superpowers "flight" // 测试元素是否在集合中
(integer) 1
> sismember superpowers "reflexes"
(integer) 0
> smembers superpowers // 返回集合中所有元素
1) "x-ray vision"
2) "flight"
> sadd birdpowers "pecking"
(integer) 1
> sadd birdpowers "flight"
(integer) 1
> sunion superpowers birdpowers // 合并多个set,返回合并后的元素列表
1) "x-ray vision"
2) "flight"
3) "pecking"
> del superpowers // 删除key
(integer) 1
当value是zset类型,命令包括 zadd zrange del等,注意给value一个编号用于排序。
> zadd hacker 1940 "Alan Kay" // 给value指定一个编号,比如以年份1940作为编号
(integer) 1
> zadd hacker 1906 "Grace Hopper"
(integer) 1
> zadd hacker 1953 "Richard Stallman"
(integer) 1
> zadd hacker 1965 "Yukihiro Matsumoto"
(integer) 1
> zadd hacker 1916 "Claude Shannon"
(integer) 1
> zadd hacker 1969 "Linux Torvalds"
(integer) 1
> zadd hacker 1957 "Sophie Wilson"
(integer) 1
> zadd hacker 1912 "Alan Turing"
(integer) 1
> zrange hacker 2 4 // 切片返回有序集合中元素
1) "Claude Shannon"
2) "Alan Kay"
3) "Richard Stallman"
> del hacker // 删除key
(integer) 1
当value是hash类型,hash类型可以理解为字典,需要给value指定一个field用于映射,命令包括hset hmset hget hgetall hdel hincrby del 等。
> hset user:1000 name "John Smith" // 给value指定一个field,比如name
(integer) 1
> hset user:1000 email "john.smith@example.com"
(integer) 1
> hset user:1000 password "s3cret"
(integer) 1
> hgetall user:1000 // 获得hash表中所有成员,包括field和value
1) "name"
2) "John Smith"
3) "email"
4) "john.smith@example.com"
5) "password"
6) "s3cret"
> hmset user:1001 name "Mary Jones" password "hidden" email
"mjones@example.com" // 设置多个field和value
OK
> hget user:1001 name // 根据field获取value
"Mary Jones"
> hset user:1000 visits 10 // field可以映射到数字值
(integer) 1
> hincrby user:1000 visits 1 // 原子性增加value的值,增加1
(integer) 11
> hincrby user:1000 visits 10 // 增加10
(integer) 21
> hdel user:1000 visits // 删除field及其value
(integer) 1
> hincrby user:1000 visits 1
(integer) 1
> del user:1000 // 删除key
(integer) 1
设置和查看key的生命周期,key过期会被自动删除,命令包括expire ttl 等。
> set resource:lock "Redis Demo"
OK
> expire resource:lock 120 // 设置生命周期为120s
(integer) 1
> ttl resource:lock // 查看当前生命周期还剩多少时间
(integer) 109
> ttl resource:lock // 120s后查看,返回-2表示已过期或不存在
(integer) -2
> set resource:lock "Redis Demo 2"
OK
> ttl resource:lock // 返回-1表示永不过期
(integer) -1
查看linux上面是否有安装redis,redis启动
1、检测是否有安装redis-cli和redis-server;
- [root@localhost bin]# whereis redis-cli
- redis-cli: /usr/bin/redis-cli
- [root@localhost bin]# whereis redis-server
- redis-server: /usr/bin/redis-server
Linux系统下设置redis的密码
Linux系统下设置redis的密码:
1、进入redis操作的命令行
运行命令:redis-cli
2、查看现有的redis密码(可选操作,可以没有)
运行命令:config get requirepass如果没有设置过密码的话运行结果会如下图所示
3、设置redis密码
运行命令:config set requirepass ****(****为你要设置的密码),设置成功的话会返回‘OK’字样
4、重启redis服务
ctrl+C退出当前的命令行模式后运行命令:
redis-cli -h 127.0.0.1 -p 6379 -a ****(****为你心设置的密码)
linux 安装redis 完整步骤的更多相关文章
- linux安装redis 完整步骤
原文连接:https://www.cnblogs.com/lauhp/p/8487029.html 安装: 1.获取redis资源 wget http://download.redis.io/rele ...
- linux安装redis详细步骤(系统centos 6.4 )
1.安装redis 进入安装目录下载: cd /usr/local/redis wget http://download.redis.io/releases/redis-3.0.7.tar.gz 解 ...
- 阿里云Linux服务器安装Redis 完整步骤(包括处理远程连接问题)
跟随本篇文章步骤,包你成功安装并连接使用. 1.获取redis资源 wget http://download.redis.io/releases/redis-4.0.8.tar.gz 2.解压 tar ...
- Linux安装JDK完整步骤
1.检查一下系统中的jdk版本 [root@localhost software]# java -version 显示: openjdk version "1.8.0_102" O ...
- Linux安装Redis步骤和make遇到的坑
Linux安装Redis服务步骤 1.获取redis资源 cd /usr/local wget https://mirrors.huaweicloud.com/redis/redis-6 ...
- Linux安装redis服务器和部署
Linux安装redis和部署 第一步:下载安装包 wget http://download.redis.io/releases/redis-5.0.5.tar.gz 访问https://redis. ...
- Linux安装Anaconda3完整教程
Linux安装Anaconda3完整教程 欢迎关注H寻梦人公众号 相关链接 官方安装Anaconda3教程 [手把手教你]如何在Linux系统搭建jupyter notebook CentOS8.2安 ...
- Linux安装redis服务器
Linux安装redis服务器 初次接触,这里简单的说下我遇到的情况以及安装方法,当然也是参考了诸位大神的. 确定虚拟机的主机IP. 1)首先需要一个linux虚拟机,确定虚拟机的ip ,输入命令:# ...
- Linux 安装Redis<准备>(使用Mac远程访问)
阅读本文需要一定的Linux基础 一 Redis简介 redis是用c语言编写的一款开源的高性能键值对(key-value)数据库 它通过提供多种键值数据类型来适应不同场景下的存储需求 二 Redis ...
随机推荐
- linux下的什么工具可以用来查看PostScript文件?
答: ghostview,官网在这里
- [Java读书笔记] Effective Java(Third Edition) 第 4 章 类和接口
第 15 条: 使类和成员的可访问性最小化 软件设计基本原则:信息隐藏和封装. 信息隐藏可以有效解耦,使组件可以独立地开发.测试.优化.使用和修改. 经验法则:尽可能地使每个类或者成员不被外界访问 ...
- 朴素贝叶斯算法python实现
朴素贝叶斯是一种十分简单的分类算法,称其朴素是因为其思想基础的简单性,就文本分类而言,他认为词袋中的两两词之间的关系是相互独立的,即一个对象的特征向量中的每个维度都是互相独立的.这是朴素贝叶斯理论的思 ...
- html+大文件上传
前言:因自己负责的项目(jetty内嵌启动的SpringMvc)中需要实现文件上传,而自己对java文件上传这一块未接触过,且对 Http 协议较模糊,故这次采用渐进的方式来学习文件上传的原理与实践. ...
- 实现两个DataTable的联合查询
如方法一描述:将子表的数组追加到主表数组的下面.从而实现类似于视图(单表)的效果. 那么Left Join(Inner Join)和Right Join(Outer Join) 将如何实现呢? 明天仔 ...
- jeesite框架前端 tabPage页签刷新功能。
js主动刷新当前页签的js代码 原本想找一下jeesite有没有主动刷新当前页面的内置方法. 官方文档找了一大堆,找都找不到,也可能我这个需求比较少人需要. tab标签页有一个右键刷新页签功能 查看编 ...
- 【极简版】OpenGL 超级宝典(第五版)环境配置 VS2010
事先声明:该教程仅适用于VS2010环境下超级宝典第五版的配置 第一步:下载示例代码和环境包: 链接:https://pan.baidu.com/s/1llRRQ8ymBgMGuXp5M50pJw 提 ...
- OpenGL学习(4)——纹理
拖了半个多月的博客,这次学习如何使用纹理(Texture)贴图来实现更多的细节. 生成纹理对象 和创建VAO.VBO方法类似,调用glGenTextures函数. glGenTextures(1, & ...
- Cocos Creator 中的动作系统那些事儿
动作系统就是可以在一定的时间内实现位移.旋转.缩放.跳动等各种动作. 需要注意的是,动作系统跟 Cocos Creator 编译器的动画系统不同,动作系统是面向程序员的API接口,而动画系统是通过编译 ...
- JAVA数据结构和算法 6 递归
递归:直接或者间接地调用自己.比如计算连续数的阶乘,计算规律:n!=(n-1)!*n. 每个递归方法都有一个基值(终止)条件,以防止无线地递归下去,以及由此引发的程序崩溃. 采用递归是因为它可以从概念 ...
