redis(2)-hiredis-centos-ubuntu 下安装和使用

news2024/11/24 1:10:15

ubuntu 下安装vsftpd
 

sudo apt update
sudo apt install vsfptd
sudo systemctl status vsftpd


vim /etc/vsftpd.conf

 local_enables=YES
 write_enable=YES
 anonymous_enable=YES
 anon_mkdir_write_enable=YES   //允许匿名用户在FTP上创建目录
 anon_upload_enable=YES        //允许匿名用户在FTP服务器上上传文件
 anon_other_write_enable=YES   //开启匿名用户的其他写权限
 
 

Filezilla 下匿名登录
 

下载: FileZilla - The free FTP solution
匿名登录:anonymous :

/srv/ftp

 

1..redis 安装+数据类型

1.缺少libQtGui.so.4的库

sudo add-apt-repository ppa:rock-core/qt4
sudo apt update
sudo apt install libqtcore4 libqtgui4
sudo apt-get install libqtgui4:amd64




redis 单线程

1.1下载: https://redis.io/
               https://redis.cn/download

$ wget http://download.redis.io/releases/redis-6.0.6.tar.gz
$ tar xzf redis-6.0.6.tar.gz
$ cd redis-6.0.6
$ make
$ make install

$ redis-server
$ redis-cli




1.2.安装:
   解压: tar zxvf redis5.tar.gz
   构建: make makefile            
   安装: make install 

GitHub - sewenew/redis-plus-plus: Redis client written in C++
 

git clone https://github.com/sewenew/redis-plus-plus.git

cd redis-plus-plus

mkdir build

cd build

cmake ..

make

make install

cd ..



1.3.环境测试:
   1.3.1 启动server:redis-server

1.3.2 启动client: redis-cli


     

1.4.redis 中所有的数据都是键值对

1.5


map 是红黑树结构
hash O(1)
 

2.redis常用命令+数据类型

   打开网页查看  redis.cn/commands.html
   

2.1 字符串操作命令


2.2list


2.3set


2.4sortedset


2.5 hash


2.6key

 


3.redis 配置文件

可视化工具下载与安装
1.windows: 
    https://www.cnblogs.com/telwanggs/p/11431501.html
2.苹果和ubuntu 的下载与安装

Install - RESP.appicon-default.png?t=N7T8https://docs.redisdesktop.com/en/latest/install/#ubuntu-archlinux-debian-fedora-centos-opensuse-etc

目录:  安装包   /etc/redis5/redis.conf

cp redis.conf ~
cd ~
vim redis.conf
1. 绑定ip 
    1.1本机访问: bind 127.0.0.1
    1.2 远程访问:注释掉 :bind
                           去掉保护模式:80行: protected-mode  no 
                           防火墙:           centos 或者redhat 需要关闭

2.port:                       84行  6379
3.daemonize yes : 128行  守护进程
                                 如果yes  会在 /var/run/redis.pid
4.log 日志 类型debug verbose notic
    默认是扔掉的 /dev/null
    可以设置成存到文件中:

5.默认有16个数据库
  0- -1 : 0 1 2 ..... 15

1.按照配置文件启动服务
redis-server ./redis.conf 配置完后 redis.conf、redis.log、 redis.pid 在一个目录下。

2.客户端访问:
   2.1 本地访问  redis-cli -p 6380 //-p 端口 6380



2.2 远程访问:
      redis -cli -h 192.168.9.78 -p 6380
      keys *
     select 1   选定数据库
     keys *      查询所有的数值
     set hello world          添加值
   验证: 本机登录  


 

4.redis 持久化
 

     存在当前目录下\dump.rdb 

1.存储频率:900秒  最少1个key
                  300秒  最少10个key
                   60秒  最少10000个key

2.文件名,目录都可设置:

3.aof 文件的设置,与rdb文件互斥


 

同步频率 :每秒同步一次


5.hiredis的使用
 

  redis.cn/clients.html
 

5.1    下载安装


         make
         make install

 

一般是在/usr/local/include   /usr/local/lib  /usr/local/lib/pkgconfig
cd ~/package/redis/hiredis-master
查看hiredis的库:就这么多文件

1.查看头文件
2.查看example
    2.1 连接 redisContext *c;
                   redisReply *reply;
         
  2.2  连接成功
         

//1.ping server
    reply=redisCommand(c,"PING");
    freeReplayObject(reply);
//2.set a key
    reply=redisCommand(c,"SET %S %S","FOO","HELLO");
    freeReplayObject(reply);
//3.set a key 二进制
    reply=redisCommand(c,"SET %b %b","bar",(size_t)3,"HELLO",(size_t)5);
    freeReplayObject(reply);
//4.创建一个list
    for(j=0;i<10;j++)
    {
          char buf[64];
          snprintf(buf,64,"%u",j);
          reply=redisCommand(c,"push mylist e-%s",buf);
          freeReplyObject(reply);
    }
   //check list
     reply=redisCommand(c,"list 0-1");
     if(reply->type==REDIS_REPLY_ARRY)
     {
            for(j=0;j<reply->elements;j++)
             {
                printf("%u %s\n",j,reply->elements[j]->str);
             }
     }
    freeReplyobject(reply);
    redisFree(c);

            

5.2 API 函数的使用

    5.2.1  连接

tcp连接

5.2.2请求命令 

返回值: 



 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1041077.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[每周一更]-(第64期):Dockerfile构造php定制化镜像

利用php官网镜像php:7.3-fpm&#xff0c;会存在部分插件缺失的情况&#xff0c;自行搭建可适用业务的镜像&#xff0c;才是真理 Dockerhub 上 PHP 官方基础镜像主要分为三个分支&#xff1a; cli: 没有开启 CGI 也就是说不能运行fpm。只可以运行命令行。fpm: 开启了CGI&#x…

2023.9.23 关于 HTTP 详解

目录 HTTP 协议 认识 URL HTTP 请求 认识方法 HTTP 响应 认识状态码 总结 HTTP 请求的构造 Form 表单构造 AJAX 构造 Postman 构造 HTTP 协议 应用层使用最广泛的协议浏览器 基于 HTTP协议 获取网站是 浏览器 和 服务器 之间的交互桥梁HTTP协议 基于传输层的 TCP协…

k8skubectl陈述式及声明式资源管理及金丝雀部署

文章目录 一.陈述式资源管理方法1.陈述式资源管理概念2.基本信息查看&#xff08;1&#xff09;查看版本信息&#xff08;2&#xff09;查看资源对象简写&#xff08;3&#xff09;查看集群信息&#xff08;4&#xff09;配置kubectl自动补全&#xff08;5&#xff09;node节点…

放弃webstrom转战vscode

本来是webstrom的忠实用户&#xff0c;无奈webstrom要么需要在网上找一个破解版或者不断的去找激活码&#xff0c;且破解版和激活码的文章总是很多&#xff0c;但是要找到真正有效的却总是要花费不少功夫。终于忍无可忍&#xff0c;转战vscode。&#xff08;注&#xff1a;文中…

MQTT上传图片数据的4G低功耗摄像头解决方案

为什么要使用MQTT上传数据图片呢&#xff1f; MQTT(消息队列遥测传输)是ISO 标准(ISO/IEC PRF 20922)下基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的&#xff0c;它工作在 TCP/IP协议族上&#xff0c;是为硬件性能低下的远程设备以及网络…

python使用蓝牙库选择

蓝牙库选择 pybluez 项目地址&#xff1a;https://github.com/pybluez/pybluez 文档地址&#xff1a;https://pybluez.readthedocs.io/en/latest/index.html 蓝牙支持&#xff1a;经典蓝牙 / BLE蓝牙【仅Linux】 平台支持&#xff1a; LinuxRaspberry PimacOSWindows✔️✔️…

本地搭建kafka并用java实现发送消费消息

1、下载kafka的jar包文件 https://www.apache.org/dyn/closer.cgi?path/kafka/3.1.0/kafka_2.12-3.1.0.tgz2、下载完成直接操作命令启动 1、打开新的terminal(终端)窗口&#xff0c;进入kafka的bin目录 启动zk./zookeeper-server-start.sh ../config/zookeeper.properties2、…

bash中执行比较的几种方法

bash 脚本中的 test 命令用于检查表达式的有效性&#xff0c;检查命令或表达式为 true 或者 false。此外&#xff0c;它还可以用于检查文件的类型和权限。 如果命令或表达式有效&#xff0c;则 test 命令返回0&#xff0c;否则返回1。 使用 test 命令 test 命令的基本语法如…

速卖通数据分析怎么看?速卖通数据分析工具有哪些?—站斧浏览器

速卖通数据分析怎么看&#xff1f; 1、关注销售指标&#xff1a;在进行速卖通数据分析时&#xff0c;卖家应特别关注销售指标&#xff0c;如销售额、订单量、转化率等。通过对这些指标的分析&#xff0c;卖家可以了解到自己店铺的销售状况以及变化趋势&#xff0c;进而采取相应…

【postgresql】 ERROR: multiple assignments to same column “XXX“

Cause: org.postgresql.util.PSQLException: ERROR: multiple assignments to same column "XXX"; bad SQL grammar []; nested exception is org.postgresql.util.PSQLException: ERROR: multiple assignments to same column "XXX"; 原因&#xff1a;or…

SpringCloud Gateway--Predicate/断言(详细介绍)中

&#x1f600;前言 本篇博文是关于SpringCloud Gateway–Predicate/断言&#xff08;详细介绍&#xff09;中&#xff0c;希望你能够喜欢 &#x1f3e0;个人主页&#xff1a;晨犀主页 &#x1f9d1;个人简介&#xff1a;大家好&#xff0c;我是晨犀&#xff0c;希望我的文章可以…

GraalJS及平台JS脚本能力建设

GraalJS及平台JS脚本能力建设 GraalJS替换Nashorn Oracle宣布弃用Nashorn Javascript引擎&#xff0c;最终将从未来所有的JDK中删除。 Nashorn最初是在JDK 8中引入的&#xff0c;用于取代Rhino脚本引擎。发布时&#xff0c;Nashorn是ECMAScript-262 5.1的完整实现&#xff0…

服务接口调用OpenFeign_日志增强

OpenFeign虽然提供了日志增强功能&#xff0c;但是默认是不显示任何日志的&#xff0c;不过开发者在调试阶段可以自己配置日志的级别。 OpenFeign的日志级别如下&#xff1a; NONE&#xff1a;默认的&#xff0c;不显示任何日志;BASIC&#xff1a;仅记录请求方法、URL、响应状…

CMU15-213 课程笔记 04-Floating Point

文章目录 浮点数如何用二进制表示IEEE 浮点数标准IEEE 浮点数实现IEEE 浮点数在内存里 E exp - bias 计算指数M 1.xxx 尾数计算举例&#xff1a;对一个浮点数进行转换一些关于浮点数的计算等等 浮点数如何用二进制表示 计算机内部的浮点数不是这样存在内存里的&#xff08;至…

解决vs2022项目文件夹内.vs文件夹容量虚高问题

打开系统显示隐藏文件夹 会在vs2022的项目文件夹内有一个.vs文件夹 在子目录里会有一个Browse.VC.db文件,我的项目代码只有120m,而这个db文件居然有70m 而且每次打开vs项目,会使这个文件发生容量变化,如果你的git项目恰好包含这个.vs文件夹,那就比较不爽了,每次都要更新这个文件…

Python中的设计模式 -- 单例

迷途小书童 读完需要 2分钟 速读仅需 1 分钟 当我们谈到单例模式时&#xff0c;可以想象一个非常特殊的餐厅&#xff0c;这个餐厅只有一个桌子&#xff0c;无论多少人来用餐&#xff0c;都只能坐在这个桌子上。这个桌子就是餐厅的单例&#xff0c;它保证了整个餐厅中只有一个桌…

数据结构学习笔记——查找算法中的树形查找(平衡二叉树)

目录 一、平衡二叉树的定义二、平衡因子三、平衡二叉树的插入和构造&#xff08;一&#xff09;LL型旋转&#xff08;二&#xff09;LR型旋转&#xff08;三&#xff09;RR型旋转&#xff08;四&#xff09;RL型旋转 四、平衡二叉树的删除&#xff08;一&#xff09;叶子结点&a…

进行 XSS 攻击 和 如何防御

跨站脚本攻击&#xff08;XSS 攻击&#xff09;是 Web 开发中最危险的攻击之一。以下是它们的工作原理以及防御方法。 XSS 攻击 跨站脚本攻击就是在另一个用户的计算机上运行带有恶意的 JS 代码。假如我们的程序没有对这些恶意的脚本进行防御的话&#xff0c;他们就会由我们的…

【刷题笔记9.25】LeetCode:相交链表

LeetCode&#xff1a;相交链表 一、题目描述 给你两个单链表的头节点 headA 和 headB &#xff0c;请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点&#xff0c;返回 null 。 二、分析及代码 方法一&#xff1a;使用哈希Set集合 &#xff08;注意…

安装ipfs-swarm-key-gen

安装ipfs-swarm-key-gen Linux安装go解释器安装ipfs-swarm-key-gen Linux安装go解释器 https://blog.csdn.net/omaidb/article/details/133180749 安装ipfs-swarm-key-gen # 编译ipfs-swarm-key-gen二进制文件 go get -u github.com/Kubuxu/go-ipfs-swarm-key-gen/ipfs-swarm…