redis入门
版权声明:本文为博主林炳文Evankaka原创文章,转载请注明出处http://blog.csdn.net/evankaka
Redis介绍
Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表、哈希、集合和有序集合5种。支持在服务器端计算集合的并、交和补集(difference)等,还支持多种排序功能。所以Redis也可以被看成是一个数据结构服务器。Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”);也可以把每一次数据变化都写入到一个append only file(aof)里面(这称为“全持久化模式”)
一、安装与启动
Ubuntu上安装Redis,打开终端,然后键入以下命令:
- $sudo apt-get update
- $sudo apt-get install redis-server
这将在您的计算机上安装Redis。
启动 Redis
- $redis-server
出现上面的图案,说明启动成功。
检查Redis是否在工作?
- $redis-cli
- ps -ef | grep redis
停止
- redis-cli SHUTDOWN
停止后再启动,然后连接时,如果出现以下错误:
请输入:
- redis-server /etc/redis/redis.conf
- find / -name redis -type d
二、数据库
- SELECT index
一台服务器上都快开启200个redis实例了,看着就崩溃了。这么做无非就是想让不同类型的数据属于不同的应用程序而彼此分开。
那么,redis有没有什么方法使不同的应用程序数据彼此分开同时又存储在相同的实例上呢?就相当于MySQL数据库,不同的应用程序数据存储在不同的数据库下。
redis下,数据库是由一个整数索引标识,而不是由一个数据库名称。默认情况下,一个客户端连接到数据库0。redis配置文件中下面的参数来控制数据库总数:
默认是16个
- vim /etc/redis/redis.conf
切换数据库
每个数据库都有属于自己的空间,不必担心之间的key冲突。
不同的数据库下,相同的key取到各自的值。
flushdb命令清除数据,只会清除当前的数据库下的数据,不会影响到其他数据库。
flushall命令会清除这个实例的数据。在执行这个命令前要格外小心。
数据库的数量是可以配置的,默认情况下是16个。修改redis.conf下的databases指令:
databases 64
redis没有提供任何方法来关联标识不同的数据库。因此,需要你来跟踪什么数据存储到哪个数据库下。
1、获得键名列表
- keys 关键字
2、决断一个键是否存在
- EXISTS KEY
3、删除键
- DEL KEY [KEY ..]
可以删除一个或多个键,返回值是删除的键的个数
注意删除不能和通配符号一起用!
4、获得键值类型
- TYPE KEY