linux系统中 redis 保存数据的5种形式 linux后端模式启动 jedis无法通过IP地址和端口号访问如何修改linux防火墙
vim修改redis.conf配置文件(我的已经复制到虚拟机的/usr/local/redis/bin目录下)为daemonize yes, 以后端模式启动 ./redis-server redis.conf
bin目录下运行 ./redis-cli连接客户端 输入ping回应pang成功
=================================================================================================================================================================
String的形式
set name xiaoming
get
是String操作也是后来key的操作
del 后面接键名 不关什么串 集合都干掉
keys * 可以看所有key的值 存了些什么 也可 keys my* 也可keys my?????
追加判断建 exists num 判断num存在吗? rename num num1 重命名键值 expire test 10 (先set test xiaohong 10秒后再get发现已逝世)
ttl test 还剩多久活-2 表示死了 -1表示没设置过期
type num 返回类型的 String Set SortedSet List
incr
decr
incrby num 5
decrby num 5
append num any (追加成新字符串)
=================================================================================================================================================================
HashMap的形式
hset 外围键名 内部键名 值
hget 外围键名 内部键名 值
hmset 外名 内名 值 内名2 值 内名3 值...
HMGET user1 name age email phone address
hgetall 外围键名
hdel user1 name (使用del会删除整个user1)
hincrby user1 age 5
hexists user1 age
hlen user1
hkeys user1
hvals user1
=================================================================================================================================================================
linux 中redis的第三种 链表LinkedList集合形式 有序不唯一
lpush 1 2 3 4 5 从左压栈
rpush a b c d e 从右压栈
lrange mylist1 0 9 从左遍历
不知道有多少个呢?如何要全部?
lrange mylist1 0 -1 (负数表示倒数)
不知道多少,剩一个不要
lrange mylist1 0 -2
lpop mylist1 从左侧弹出
rpop mylist1 从右侧弹出
llen mylist1 集合长度
lpushx mylist1 f 仅当mylist1存在时从左存入一个
rpushx mylist1 f 仅当mylist1存在时从右存入一个
lrem mylist1 1 1 删除集合中的1个元素 删除值为左起第一个1
lrem mylist1 2 9 删除集合中的2个元素 删除值为左起前两个9
lrem mylist1 -1 f 删除集合中的1个元素 删除值为右起第一个f
lrem mylist1 0 f 删除所有f
linsert mylist1 before a x 在a前插
linsert mylist1 after a x 在a后插
rpoplpush mylist1 mylist2 从集合1的右边弹出一个放到集合2的左边 (这个的作用涉及到多线程的生产者消费者模型-别人管生产任务,你管消费任务,线程池消化任务) (发邮件我还没有做)
========================================================================================================================================================================
Set集合形式
sadd myset a b c c d e e 集合无序 唯一特点
srem myset b 删除一条
SMEMBERS myset 遍历
sismember myset a 判断a是集合的成员
---------------------------------------------------
sadd zhangsanset lisi wangwu tianqi tom
sadd lucyset tom rose jack
找不同 zhangsan有lucy没有
sdiff zhangsanset lucyset
找不同 lucy有zhangsan没有
sdiff lucyset zhangsanset
求交集
sinter zhangsanset lucyset
求合集
sunion zhangsanset lucyset
scard zhangsanset 求集合个数
srandmember zhangsanset 随机抽取
--------------------------------------
前边的三个集合求完没有存储结果
sdiffstore jieguo zhangsanset lucyset
sinterstore jieguo zhangsanset lucyset
sunionstore jieguo zhangsanset lucyset
===============================================================================================================================================================
SortedSet形式
zadd myset1 21 zhangsan 38 lisi 308 wangu 每个数据前有个权重做排序用 修改就是再添加一个用新值
zrange myset1 0 -1 遍历与有序链表相同
zrange myset1 0 -1 withscores 遍历与有序链表相同
zscore myset1 zhangsan 张三多少分
zcard myset1 获取大小
zrem myset1 lisi 删除某个元素
zrevrange myset1 0 -1 反向遍历 从高到低
zremrangebyrank myset1 0 1 从开始到结束的删除
zremrangebyscore myset1 30 40 从开始到结束的分数删除
zrangebyscore myset1 100 150 limit 0 2根据分数排序查询 只要前两条
zincrby myset1 3 xiaohu 给谁增长3分发帖经验
zcount myset1 100 150 分数之间有多少人
zrank myset1 xiaohu 从小到大排第几
zrevrank myset1 xiaohu 从大到小排第几 0表示第一
===============================================================================================================================================================
jedis java连接redis的jar包导入后set get方法操作数据发现Connection Excepiton 修改Linux防火墙 增加端口成功(同Tomcat 外地IP无法访问)
Linux 安装Tomcat 配置防火墙后,本地可以访问,外地通过IP无法访问,防火墙配置没有起作用原因
(配置Linux防火墙 vim /etc/sysconfig/iptables 增加端口 重启服务service iptables restart)
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
这句没有放在适当的位置
应该放在22端口的下边
JedisPool(jedisPoolConfig,"192.168.199.129",6379)得到的jedis.set("things","写中文") 在jedis服务器端会中文显示16进制?
//这个方法是加载类路径下的资源 src下的
properties.load(RedisUtils.class.getClassLoader().getResourceAsStream("redis.properties"));
补充:
redis也是有多数据库的 在mysql下有use切换数据库 在redis下使用 select 1 可以在0号库move name 1 把内容移到1号库 info查看单机还是集群模式standalone linux版本各种信息
dbsize 数据库有多少个key flushdb清空数据库
订阅subscribe cctv5与发布 publish cctv5 hahaha 双击再建一个连接 俩个连接做不同的事一个订阅一个发布
事务的特性:acid 原子性 (Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)
--------------------------------------------------------------
redis的事务 redis的3条指令要挨着执行就是事务了 redis是单线程的 使用multi命令让数据在queued队列中等待一起exec
当发生错误 在set num4 xiaoming 后incr num4发生错误 redis根本没有回滚 该执行还是执行了 有个discard不是回滚是撤销上一条指令
redis的持久化,当redis进程被kill -9 27921 后,在启动服务启动客户端 发现数据还在 因为在安装目录有一个文件dump.rdb每个一段时间把数据存在硬盘上
他的奥秘在redis.conf配置文件中有一个 save 900 1 save 300 10 save 60 10000
redis 可以在配置文件中配置密码 requiredpass 输密码
linux系统中 redis 保存数据的5种形式 linux后端模式启动 jedis无法通过IP地址和端口号访问如何修改linux防火墙的更多相关文章
- iOS - WKWebView加载不受信任的https (因用到IP地址加端口号去请求数据)
1.描述:因公司域名临时出现问题,所以项目中引用到了IP地址加端口号去请求数据,因而造成在wkwebView中某些网址打不开,查看错误是因为服务器证书无效,实际就是不受信任; 2.解决办法:在plis ...
- Linux系统中Redis和Tomcat的PID文件路径设置
Tomcat: /bin/catalina.sh 文件头注释下面添加一行:CATALINA_PID=/var/run/tomcat.pid Redis: redis.conf配置文件里面搜索pidfi ...
- Linux系统中的vi/vim指令【详解】
vi是Unix世界里极为普遍的全屏幕文本编辑器,vim是它的改进版本Vi IMproved的简称.几乎可以说任何一台Unix机器都会提供这套软件. 只要简单的在Shell下执行vi就可以进入 vi 的 ...
- linux系统中文件的几种类型
Linux系统是以文件的形式来进行管理的.Linux文件类型常见的有:普通文件.目录.字符设备文件.块设备文件.符号链接文件等,如果想了解这方面知识的弟兄,就进来了解了解. Linux系统不同于win ...
- 如何从Linux系统中获取带宽、流量网络数据
引入 国外的云主机厂商,例如AWS提供的网络数据是以流量为单位的,例如下面的图片: 从上图来看,其取值方式为 每隔5分钟取值1次,(每次)每个点显示为1分钟内的流量字节数(Bytes) 带宽与流量 我 ...
- 使用redis进行手机验证码的验证、每天只能发送三次验证码 (redis安装在虚拟机linux系统中)
文章目录 1.代码 2.测试结果 2.1.第一次发送 2.2.填写正确的验证码 2.3.填写错误的验证码 连续发送多次验证码 环境准备:虚拟机Linux系统,redis安装在虚拟机中. 前提条件:虚拟 ...
- Linux系统下Redis缓存安装配置
Redis是一个高性能的key-value数据库,现时越来越多企业与应用使用Redis作为缓存服务器.楼主是一枚JAVA后端程序员,也算是半个运维工程师了.在Linux服务器上搭建Redis,怎么可以 ...
- Linux系统下Redis安装(一)
最近项目要使用Redis,特将这段时间将Redis的学习经验与大家分享,算是对这段时间学习成果的总结和技术提炼,不足之处还望大家批评指正. 项目背景: 有些很少改动的数据和经常使用的数据(例如系统中下 ...
- Linux系统中“动态库”和“静态库”那点事儿 /etc/ld.so.conf 动态库的后缀为*.so 静态库的后缀为 libxxx.a ldconfig 目录名
Linux系统中“动态库”和“静态库”那点事儿 /etc/ld.so.conf 动态库的后缀为*.so 静态库的后缀为 libxxx.a ldconfig 目录名 转载自:http://b ...
随机推荐
- ubuntu 16.04 && google账号问题
1.按ctrl + H 可以显示文件夹的隐藏内容 2.创建文件夹 sudo mkdir -p /usr/share/fonts/vista 创建文件用 vim filename.xxx ...
- BuildAssetBundles文件打包
BuildAssetBundles文件打包: public class BuildAssetBundlesTest : Editor { //定义打包文件路径 public static string ...
- 网站启用GZip压缩后,速度快了3倍!
GZip压缩,是一种网站速度优化技术,也是一把SEO优化利器,许多网站都采用了这种技术,以达到提升网页打开速度.缩短网页打开时间的目的. 本文是一篇研究性文章,将通过某个案例来给大家显示网站采用GZi ...
- 定制Linux
tar -xzvf linux-major-minor-VERSION.tar.gz -C /usr/src cd /usr/src ln -sv linux-major-minor-VERSION ...
- 【转】Android事件分发机制完全解析,带你从源码的角度彻底理解(下)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/9153761 记得在前面的文章中,我带大家一起从源码的角度分析了Android中Vi ...
- Python学习笔记--语音处理初步
语音处理最基础的部分就是如何对音频文件进行处理. 声音的物理意义:声音是一种纵波,纵波是质点的振动方向与传播方向同轴的波.如敲锣时,锣的振动方向与波的传播方向就是一致的,所以声波是纵波.纵波是波动的一 ...
- JetBrains IDE激活
License server(服务器地址为http://idea.iteblog.com/key.php) Active Code:生成网址:http://idea.iteblog.com/
- postMessage解决跨域跨窗口消息传递
平时做web开发的时候关于消息传递,除了客户端与服务器传值还有几个经常会遇到的问题 页面和其打开的新窗口的数据传递 页面与嵌套的iframe消息传递 这些问题都有一些解决办法,但html5引入的mes ...
- c#操作excel的一些记录
//开启Excel APP Excel.Application xlApp = new Excel.Application(); //获取程序下bin—>debug下的文件 ...
- Oracle 求昨天 上个月 去年 日期
到公司发现有一个报表没有收到,查看后发现原来是Oracle数据源异常. ' day, 'yyyyMMdd') AS enddata FROM DUAL; 上面这个sql求上个月今天和昨天.一般情况下不 ...