目录
一、Redis介绍
Redis是NoSql的一种,在弄清楚Redis是个什么玩意之前,先了解下NoSql是什么。
-1、什么是NoSql
NoSql,全名:Not Only Sql,是一种非关系型数据库,它不能替代关系弄数据库,只是关系型数据库的一个补充,是可以解决高并发、高可用、高扩展、大数据存储等一系列问题而产生的数据库解决方案。
- 2、什么是Redis
Redis是使用c语言开发的一个高性能键值数据库,即通过一些键值类型来存储数据。Redis支持的键值类型有:String字符类型、map散列类型、list列表类型、set集合类型、sortedset有序集合类型。
- 3 redis的应用场景
缓存(数据查询、短连接、新闻内容、商品内容等等)、分布式集群架构中的session分离、聊天室的在线好友列表、任务队列。(秒杀、抢购、12306等等)、应用排行榜、网站访问统计、数据过期处理(可以精确到毫秒)。其中,作为缓存的应用场景是最多的。
二、redis安装
一般redis安装于linux服务器,故本例介绍的是Linux下的安装,如果你的电脑是window或mac,请自行百度安装方法。
- 1、下载
可以到redis的官网找到各个Redis版本的下载地址,官网 - 2、安装
使用Xshell等服务器终端连接软件连接上Linux后,进行以下操作: - 3解压
tar -zxvf redis-5.0.9.tar.gz
- 4 进入redis源码:
cd redis-5.0.9
make
- 在/usr/local创建 redis目录
- 编译
make install PREFIX=/usr/local/redis
三、Redis启动与停止
后端启动与停止
第一步,需要把redis源码目录下的redis.conf文件复制到redis安装目录的bin目录下。
第二步,修改redis.conf文件,将daemonize的值改为yes后保存。
后端启动的命令:
[root@localhost bin]# ./redis-server redis.conf
可以发现后端启动命令就只是比前端启动命令多了” redis.conf”,意思很明确,就是让redis根据这个配置文件的配置运行罢了,同时也可以看到,在启动完redis后台,终端不会进入redis控制台,这就是将redis运行后台了,我们可以查查看系统现在是不是有redis的进程:
四、Redis客户端
[root@localhost bin]# ./redis-cli -h 127.0.0.1 -p 6379
-h:指定访问的redis服务器的ip地址
-p:指定访问的redis服务器的port端口
如果使用的ip地址与端口都是默认的,则上述命令可以这么写:
[root@localhost bin]# ./redis-cli
设置redis密码
当前这种linux配置redis密码的方法是一种临时的,如果redis重启之后密码就会失效
b.查看现有的redis密码(可选操作,可以没有)
运行命令:config get requirepass 如果没有设置过密码的话运行结果会如下图所示
c.设置redis密码
运行命令:config set requirepass ****(****为你要设置的密码),设置成功的话会返回‘OK’字样
输入 ./redis-cli 进入命令模式,使用 auth ‘*****’ (****为你设置的密码)登陆
设置redis密码2(永久方式)
需要永久配置密码的话就去redis.conf的配置文件中找到requirepass这个参数,如下配置:
修改redis.conf配置文件
# requirepass foobared
requirepass 123 指定密码123
保存后重启redis就可以了
redis 中文显示问题
在redis 中存储中文,读取会出现乱码(其实不是乱码,只是不是我们存的中文显示)
1 redis> set test “我们”
2 OK
3 redis> get test
4 “\xe6\x88\x91\xe4\xbb\xac”
如何在get时取到它的中文呢?只需要在redis-cli 后面加上 --raw
redis> get test
“我们”
五 Linux中实现redis-cli命令在任意目录执行
修改profile文件:
#vi /etc/profile
在最后行添加:
export PATH=$PATH:/usr/local/redis/bin
注意:/usr/local/redis表示的是redis-cli 命令存在的目录路径
重新加载/etc/profile
#source /etc/profile
在任意目录执行命令
#redis-cli