1.概念

  Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件

2.linux安装redis

2.1yum源安装redis(不推荐)

#前提得配置好阿里云yum源,epel源
#查看是否有redis包
yum list redis
#安装redis(一般在opt文件下)
yum install redis -y
#安装好,启动redis
systemctl start redis
redis-cli    #redis 客户端工具
#进入交互式环境后,执行ping,返回pong表示安装成功
127.0.0.1:6379> ping
PONG

2.2源码安装(编译安装)redis

  这里推荐使用编译安装,我们可以统一安装路径,一般linux软件约定安装目录在/opt/下面

  编译源码安装可以根据需求,安装最新的版本

1.下载redis源码
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
2.解压缩
tar -zxf redis-4.0.10.tar.gz
3.切换redis源码目录
cd redis-4.0.104.编译源文件
make
5.编译好后,src/目录下有编译好的redis指令
6.make install 安装到指定目录,默认在/usr/local/bin

2.3 redis文件配置(避免运行Python代码下报错,一定要进行配制)

vim redis.conf

按向下箭头找见下面白色的ip改成0.0.0.0:

把protected-mode 改为no

找到daemonize,可以看到reids默认情况下不是后台驻留程序,(将daemonize属性改为yes,表明需要在后台运行,这个根据你个人情况来搞,如果选择后台驻留,建议设一个密码)

# By default Redis does not run as a daemon. Use 'yes' if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
# daemonize no
# 修改成:
daemonize yes

2.4.启动redis服务端 ----->坑在这里

 方式一,直接运行(不推荐)

redis-server

 方式二,进入redis文件,指定加载文件运行------>配制好我们的文件后建议使用这个运行,像我使用其他的去和Python链接就会报错

2.5使用redis服务端(重启一个服务)

#执行客户端命令即可进入
redis-cli
#测试是否连接上redis
127.0.0.1:6379 > ping
返回pong代表连接上了

2.5其他命令

查看进程

ps -ef|grep redis

杀死进程

ps -ef | grep redis | awk ‘{print $2}’ | xargs kill -9

指定进程号删除

kill 2337

关闭服务端

redis-cli shutdown

2.6关闭防火墙(重要)  --->这里我嫌麻烦给永久关闭了

  在Python中运行时有时候会报相关错误,要把防火墙关掉

暂时关闭防火墙:(立即生效,开机重启,会重新打开)
service iptables stop
永久关闭防火墙(关机重启才会生效)
chkconfig iptables off

2.7redis设置密码

2.7.1方法一:(不推荐,因为找不到这一行在哪)

1.在配置未检redis.conf中找导如下行:

#requirepass foobared    ------>(这里要说的是,在文件里面找了好久没找见啊)

去掉前面的密码,并自己设置密码

requirepass mypassword
然后重启,这里不多演示了,想学这一步查看前人笔记
2.7.2方法二:(简单好用)

先启动我们的redis

双击脚本,再打开一个客户端

[root@learning ~]# redis-cli
127.0.0.1:6379> config set requirepass mima
OK
127.0.0.1:6379> auth mima
OK

查看密码(登陆后才能查看)

关闭redis服务端(必须登录之后才行)

注意,这里虽然这么能用,但是我测试好像是一次性的,你关闭后下次再次登录密码就失效了,但是一般在云端不会来回开关的,所以也不影响大家的使用,如果想永久使用,在配制文件中进行设置就ok,可以参考链接博客。

3.python安装与运行redis

导入包

pip3 install redis

测试

import redis
conn = redis.Redis(host='192.168.88.128',port=6379) conn.hset('xx','k1','konan')
conn.hset('xx','k2','learning') n1 = conn.hget('xx','k1').decode('utf-8')
n2 = conn.hget('xx','k2').decode('utf-8')
print(n1,n2)

效果:

4.总结

  如果在Python运行过程中或报错,一般就是配置文件以及防火墙的问题,其他问题暂时本人没有遇到

  #####

  还要注意,对于刚开始学的同学,安装完一定要配置密码,现在有许多挖矿软件会自动扫描到云端的redis,为了安全起见一定要设置好密码

linux上部署redis实现与Python上的redis交互(有坑)的更多相关文章

  1. 安装redis,以及python如何引用redis

    下载 cd /usr/local/src/ wget http://download.redis.io/releases/redis-2.8.17.tar.gz 解压 tar -zxvf redis- ...

  2. 【Azure Redis 缓存】 Python连接Azure Redis, 使用redis.ConnectionPool 出现 "ConnectionResetError: [Errno 104] Connection reset by peer"

    问题描述 Python连接Azure Redis, 使用redis.ConnectionPool 出现 "ConnectionResetError: [Errno 104] Connecti ...

  3. Linux配置部署_新手向(四)——Redis安装与配置

    前言 配置完mysql之后,我们来紧接着安装redis,毕竟这些不用太多的思考,就是命令执行,配置文件,连接测试. 安装 首先,我们要看安装哪个版本,可以在Redis官网看看我们安装哪个版本. 在之前 ...

  4. 在Azure上部署IPv6的App通过IOS App Store审核

    随着中国企业出海Go Global,越来越多的用户开始在Global Azure部署自己的应用.由于对Global Azure功能和文档的不熟悉,使用过程中或多或少遇到了一些坑.事实上呢,这些并不是坑 ...

  5. Redis学习笔记(2)——Redis的下载安装部署

    一.下载Redis Redis的官网下载页上有各种各样的版本,如图 但是官网下载的Redis项目不正式支持Windows.如果需要再windows系统上部署,要去GitHub上下载.我下载的是Redi ...

  6. k8s 上部署 Redis 三主三从 集群

    目录 介绍 为什么要使用Redis? 什么是Redis群集? 在Kubernetes中部署Redis集群 从 GitHub 上下载: 创建pv 创建statefulset 创建service 初始化 ...

  7. linux服务器上部署jdk+tomcat+rocketmq+redis-cluster

    通常我们拿到一组干净的linux服务器,需要初始化安装一些基础软件,这里一站式介绍部署jdk+tomcat+rocketmq+redis-cluster 前言:如果要在多台服务器上安装,在一台服务器上 ...

  8. Redis在CentOS 7上的安装部署

    简介: Redis是一种高级key-value数据库.它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富.有字符串,链表,集 合和有序集合.支持在服务器端计算集合的并,交和补集( ...

  9. Redis安装配置及在Python上的应用

    最近在使用Kazoo(开源电话系统) API时,一次请求的处理需要调用几次API,只为了得到一个name和id的对应关系,耗时非常大,开始想使用一种简单的实现,直接将对应关系保存到静态类的静态变量中, ...

随机推荐

  1. vs2017取消起始页(设定起始页)/(.ashx文件的添加)

    1.设定起始页:在要设定起始页的视图(如Index视图)上直接右击,然后点击“设为起始页” 2.取消起始页:点击菜单栏“调试”,然后点击最后一行“项目名+属性”,打开后选中左侧栏中的“web”,选中“ ...

  2. hibernate的各种保存方式的区别 (save,persist,update,saveOrUpdte,merge,flush,lock)

    hibernate的保存hibernate对于对象的保存提供了太多的方法,他们之间有很多不同,这里细说一下,以便区别:一.预备知识:在所有之前,说明一下,对于hibernate,它的对象有三种状态,t ...

  3. Spring课程 Spring入门篇 4-5 Spring bean装配之基于java的容器注解说明--@Bean

    1 解析 2.1 @bean注解定义 2.2 @bean注解的使用 2 代码演练 2.1 @bean的应用不带name 2.2 @bean的应用带name   2.3 @bean注解调用initMet ...

  4. webpack管理资源

    加载Css webpack并不能处理js以外的静态资源,通过loader来支持他们 npm install --save-dev style-loader css-loader const path ...

  5. asp: AJAX Database

    <% @LANGUAGE="VBSCRIPT" CODEPAGE="65001" %> <!DOCTYPE html PUBLIC " ...

  6. sass(混合mixin的调用、@content)

    sass中使用@mixin声明混合,可以传递参数,参数名以$符号开始,多个参数以逗号分开,也可以给参数设置默认值.声明的@mixin通过@include来调用 1.无参数mixin scss.styl ...

  7. IMG标签与before,after伪类

    在CSS中总有一些你不用不知道,用到才知道的“坑”.比如今天要谈的,把 before, after 伪类用在 <img> 标签上.嗯,实际上你用你会发现,在大多数浏览器这是无效的,dom中 ...

  8. 基于ArcGIS Runtime 100.x 的移动应用程序开发框架 开源

    ArcGIS Runtime作为新一代的轻量GIS应用开发产品,它提供多种API,可以使用Android,iOS,Java,Mac OS X(Objective-C/Swift)..NET,Qt(C+ ...

  9. Oracle 修改任何用户的密码

    1.通过sys用户以sysdba身份登陆: 2.修改用户密码:  alter user 用户名 identified by 密码; 比如修改system的密码为 manager : alter use ...

  10. 框架页面jquery装载