启动

配置数据库数量:

Redis默认开启16个数据库,不能像mysql自定义数据库名称,只能是数值,不能修改。

配置内存大小:

会生成一个和内存大小一样的文件。

maxmemory 200mb #在真实环境必须部署,否则物理内存会被耗尽。一般配置200mb/500mb/1gb/2gb。可以分散到多台服务器,和其它业务共享服务器,以充分利用资源。同时因为分散,防止单点故障,造成大量缓存失效。

启动

redis-server #默认找redis.conf配置文件

redis-server & #上面ctrl+c中断reis会退出,这个不会

redis-server redis6380.conf #指定配置文件,这样可以启动多个实例

注意两种启动方式的差异

ps -ef|grep redis

root      3511     1  0 16:29 ?   00:00:01 redis-server *:6379

root      3515     1  0 16:29 ?   00:00:01 redis-server 127.0.0.1:6380

注释掉redis.conf配置文件中的48行;# bind 127.0.0.1 ::1即可

设置访问密码

默认没有密码,可以随意访问。

redis速度相当快,在一个较好的服务器下,外部用户每秒可以进行15w此的密码尝试,这意味着必须指定非常强大的密码来防止暴力破解。

如果要加,打开redis.conf的

requirepass 123456 #480行,设置请求密码,这样访问时都需要先登录

127.0.0.1:6379> auth 123456 #客户端访问方式

jedis.auth(“123456”); #jedis访问方式


常用命令

redis-cli的使用之发送命令:

  1. 默认连接:IP 127.0.0.1 端口 6379
  2.  
  3. redis-cli
  4.  
  5. 指定IP端口:
  6.  
  7. redis-cli h 127.0.0.1 p 6379
  8.  
  9. Redis提供了PING-PONG机制,测试与客户端和服务器链接是否正常
  10.  
  11. redis-cli ping
  12.  
  13.  
  14. redis-cli
  15.  
  16. redis 127.0.0.1:6379>ping
  17.  
  18. PONG

redis-cli的使用之命令返回值:

  1. 127.0.0.1:6379>SET test 123
  2.  
  3. OK
  4.  
  5. 错误回复(以error开头,后面跟着错误信息)
  6.  
  7. 127.0.0.1:6379>TEST
  8.  
  9. (error) ERR unknown command 'TEST'
  10.  
  11. 整数回复
  12.  
  13. 127.0.0.1:6379>INCR test_incr
  14.  
  15. (integer) 1
  16.  
  17. 字符串回复(最长久的一种回复,双引号包裹)
  18.  
  19. 127.0.0.1:6379>get test
  20.  
  21. 123
  22.  
  23. 多行字符串回复
  24.  
  25. 127.0.0.1:6379>KEYS *
  26.  
  27. 1) "test_incr"
  28.  
  29. 2) "test"

退出

  1. 127.0.0.1:6379> exit

关闭

  1. 127.0.0.1:6379> shutdown

keys

字符串类型是redis中最基本的数据类型,它能存储任何形式的字符串,包括二进制数据。

可以存储JSON化的对象、字节数组等。一个字符串类型键允许存储的数据最大容量是512MB。

  1. 赋值与取值:
  2.  
  3. SET key value
  4.  
  5. GET key
  6.  
  7. 127.0.0.1:6379> keys *
  8.  
  9. (empty list or set)
  10.  
  11. 127.0.0.1:6379> set test 123
  12.  
  13. OK
  14.  
  15. 127.0.0.1:6379> set test1 ab
  16.  
  17. OK
  18.  
  19. 127.0.0.1:6379> keys *
  20.  
  21. 1) "test1"
  22.  
  23. 2) "test"
  24.  
  25. 127.0.0.1:6379> get test
  26.  
  27. "123"
  28.  
  29. 127.0.0.1:6379> get test1
  30.  
  31. "abc"
  32.  
  33. 127.0.0.1:6379> get test2
  34.  
  35. (nil)
  36.  
  37. 127.0.0.1:6379>

select

redis默认支持16个数据库,对外都是以一个从0开始的递增数字命名,可以通过参数database来修改默认数据库个数。

客户端连接redis服务后会自动选择0号数据库,可以通过select命令更换数据库,

说明:

Redis不支持自定义数据库名称。

Redis不支持为每个数据库设置访问密码。

Redis的多个数据库之间不是安全隔离的,FLUSHALL命令会清空所有数据库的数据。

例如选择1号数据库:

  1. 127.0.0.1:>SELECT
  2.  
  3. OK
  4.  
  5. 127.0.0.1:>GET test
  6.  
  7. (nil)

获取符合规则的建名列表。

说明:

? 匹配一个字符

*   匹配任意个(包括0个)字符

[]  匹配括号间的任一字符,可以使用“-“表示范围。如a[a-d]匹配ab/ac/ad

\x 匹配字符x,用于转义符合,如果要匹配“?“就需要使用\?

  1. KEYS *
  2.  
  3. keys test[_]*
  4.  
  5. keys t[a-d]

判断一个键是否存在

如果键存在则返回整数类型1,否则返回0。

  1. 127.0.0.1:6379> keys *
  2.  
  3. 1) "test_incr"
  4.  
  5. 2) "test"
  6.  
  7. 127.0.0.1:6379> exists test
  8.  
  9. (integer) 1
  10.  
  11. 127.0.0.1:6379> exists test1
  12.  
  13. (integer) 0
  14.  
  15. 127.0.0.1:6379>

删除键

可以删除一个或者多个键,多个键用空格隔开,返回值是删除的键的个数

  1. 127.0.0.1:6379> del test
  2.  
  3. (integer) 1
  4.  
  5. 127.0.0.1:6379> del test
  6.  
  7. (integer) 0
  8.  
  9. 127.0.0.1:6379> del test test_incr
  10.  
  11. (integer) 1
  12.  
  13. 127.0.0.1:6379>

获得键值的数据类型

返回值可能是string(字符串)、hash(散列类型)、list(列表类型)、set(集合类型)、zset(有序集合类型)。

  1. 127.0.0.1:6379> keys *
  2.  
  3. 1) "test1"
  4.  
  5. 2) "test"
  6.  
  7. 127.0.0.1:6379> type test
  8.  
  9. string
  10.  
  11. 127.0.0.1:6379> type test1
  12.  
  13. string

清空所有数据库 flushall

  1. 127.0.0.1:6379> FLUSHALL
  2.  
  3. OK

清空当前数据库flushdb

  1. 127.0.0.1:6379> FLUSHDB
  2.  
  3. OK

Redis整理第二波(启动、命令)的更多相关文章

  1. celery 启动命令

    celery 任务启动命令  celery worker -A  _tasks.tasks -l info -E tasks 就是celery 任务的文件 celery beat启动命令  celer ...

  2. Redis、Nginx加入启动命令

    1.redis加入系统启动命令 vim /etc/init.d/redis #!/bin/sh #chkconfig: 2345 80 90 # Simple Redis init.d script ...

  3. Redis介绍及常用命令

    一 Redis介绍 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发 ...

  4. 转:Redis介绍及常用命令大全

    一 Redis介绍 Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API.从2010年3月15日起,Redis的开发 ...

  5. Redis服务器的启动过程分析

    转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/127.html?1455808771 本文将通过分析代码来介绍Redis的 ...

  6. 2016022602 - redis安装和启动

    redis安装 我使用的是ubuntu15.1,打开终端,输入命令:sudo apt-get install redis-server 将会在本机安装上redis. 启动redis 启动redis命令 ...

  7. redis 安装及启动关闭

    1.redis下载 方式1:直接去官网下载 https://redis.io/download 方式2:通过命令下载 wget http://download.redis.io/releases/re ...

  8. redis设置开机启动

    方式一 1.设置redis.conf中daemonize为yes,确保守护进程开启,也就是在后台可以运行.(设置为yes后,启动时好像没有redis的启动界面,不知道为什么) #vi编辑redis安装 ...

  9. 数据库之redis篇(2)—— redis配置文件,常用命令,性能测试工具

    redis配置 如果你是找网上的其他教程来完成以上操作的话,相信你见过有的启动命令是这样的: 启动命令带了这个参数:redis.windows.conf,由于我测试环境是windows平台,所以是这个 ...

随机推荐

  1. tomcat启动后 项目运行缓慢,要几十到几百秒不等 怎么样./startup.sh 运行加快

    修改 linux系统中 /usr/local/jdk1.8.0_11/jre/lib/security/java.security 借力 好文章.我们新的Linux系统,部署了多个 Tomca,同时重 ...

  2. tomcat8性能优化

    在tomcat/catalina.sh中加入下面的配置,内存要根据机器实际情况配置,如果配置内存太大了有可能机器很慢. JAVA_OPTS="-server -Xms512m -Xmx512 ...

  3. Java Web之数据库连接池

    数据库连接池 一.数据库连接池 1. 数据库连接池就是存放数据库连接(Connection)的集合 2. 我们获取一个数据库连接是一个相对很麻烦的过程,如果我们获取一个数据库连接,使用一次以后就给它关 ...

  4. java8 获取某天最大(23:59:59)和最小时间(00:00:00)

    public class DateUtil { // 获得某天最大时间 2018-03-20 23:59:59 public static Date getEndOfDay(Date date) { ...

  5. Laplace(拉普拉斯)算子

    [摘要] Laplace算子作为边缘检测之一,和Sobel算子一样也是工程数学中常用的一种积分变换,属于空间锐化滤波操作.拉普拉斯算子(Laplace Operator)是n维欧几里德空间中的一个二阶 ...

  6. [TJOI2013]松鼠聚会 BZOJ 3170

    题目描述 草原上住着一群小松鼠,每个小松鼠都有一个家.时间长了,大家觉得应该聚一聚.但是草原非常大,松鼠们都很头疼应该在谁家聚会才最合理. 每个小松鼠的家可以用一个点x,y表示,两个点的距离定义为点( ...

  7. kuangbin专题十六 KMP&&扩展KMP HDU1238 Substrings

    You are given a number of case-sensitive strings of alphabetic characters, find the largest string X ...

  8. java.sql.Date/ java.util.Date/ java.util.Calendar 用法与区别

    在 JDK API  这样解释," 在 JDK 1.1 之前,类 Date 有两个其他的函数.它允许把日期解释为年.月.日.小时.分钟和秒值.它也允许格式化和解析日期字符串.不过,这些函数的 ...

  9. composer.json 配置设置

    配置文件的值为 key:val 必须双引号包裹 一.配置文件 名字 name包名称由用户名名称和仓库名称组成包版本限制来请求Monolog软件包 1.0.*.这意味着1.0开发分支中的任何版本,或大于 ...

  10. Python语言、编译解释、动态库静态库、编译过程、头文件

    学习Python这门语言首先要了解 什么是编译与解释,什么是连接,什么是动态库与静态库, 什么是编译: 编译就是先把高级语言设计的程序翻译成二进制的机器语言,然后CPU直接执行机器码就可以了.一把翻译 ...