centos安装Linux CentOS下安装Redis

CentOS下安装Redis

 Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表,集 合和有序集合。支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能。所以Redis也可以被看成是一个数据结构服务 器。

  Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”);也可以把每一次数据变化都写入到一个append only file(aof)里面(这称为“全持久化模式”)。

1.安装tcl支持(可以不安装,这个是在安装好redis后进行test使用的,如果是生产环境可以安装)

$yum install tcl

 安装gcc,不然make的时候会报错(redis是c语言编写的,需要使用gcc对源代码进行编译)

make[3]: gcc:命令未找到,//没有安装gcc
[root@winner ~]# yum install -y gcc g++ gcc-c++ make
[root@winner ~]# gcc -v

2.安装redis

[root@winner 桌面]# wget http://download.redis.io/releases/redis-3.0.5.tar.gz
下载下来以后在桌面,可以拷贝到/usr/local中
[root@winner local]# tar zxf redis-3.0.5.tar.gz 
[root@winner local]# cd redis-3.0.5
[root@winner redis-3.0.5]$ make

若出现错误:

zmalloc.h:50:31: 错误:jemalloc/jemalloc.h:没有那个文件或目录
zmalloc.h:55:2: 错误:#error "Newer version of jemalloc required"
make[1]: *** [adlist.o] 错误 1
make[1]: Leaving directory `/home/winner/桌面/redis-3.0.5/src'
make: *** [all] 错误 2

解决办法是:

make MALLOC=libc
[winner@winner redis-3.0.5]$ make MALLOC=libc
Hint: It's a good idea to run 'make test' ;)

make[1]: Leaving directory `/usr/local/redis-3.0.5/src'

安装(make安装完成后必须make install 才可以正常安装成功)

[root@winner redis-3.0.5]# make install
cd src && make install
make[1]: Entering directory `/usr/local/redis-3.0.5/src'

Hint: It's a good idea to run 'make test' ;)

    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install
    INSTALL install
make[1]: Leaving directory `/usr/local/redis-3.0.5/src'
[root@winner redis-3.0.5]#cp redis.conf /etc/

测试通过后安装,安装后会自动把redis-server,redis-cli,redis-benchmark,redis-check-aof,redis-check-dump复制到/usr/local/bin目录下。

参数介绍:

make install命令执行完成后,会在/usr/local/bin目录下生成几个可执行文件,分别是redis-server、redis-cli、 redis-benchmark、redis-check-aof 、redis-check-dump,它们的作用如下:

redis-server:Redis服务器的daemon启动程序

redis-cli:Redis命令行操作工具。也可以用telnet根据其纯文本协议来操作

redis-benchmark:Redis性能测试工具,测试Redis在当前系统下的读写性能

redis-check-aof:数据修复

redis-check-dump:检查导出工具

修改redis配置文件,redis配置文件是redis-server启动时候使用的(redis-server redis.conf  启动redis服务)

redis.conf参数介绍:

daemonize:是否以后台daemon方式运行

pidfile:pid文件位置

port:监听的端口号

timeout:请求超时时间

loglevel:log信息级别

logfile:log文件位置

databases:开启数据库的数量

save * *:保存快照的频率,第一个*表示多长时间,第三个*表示执行多少次写操作。在一定时间内执行一定数量的写操作时,自动保存快照。可设置多个条件。

rdbcompression:是否使用压缩

dbfilename:数据快照文件名(只是文件名,不包括目录)

dir:数据快照的保存目录(这个是目录)

appendonly:是否开启appendonlylog,开启的话每次写操作会记一条log,这会提高数据抗风险能力,但影响效率。

appendfsync:appendonlylog如何同步到磁盘(三个选项,分别是每次写都强制调用fsync、每秒启用一次fsync、不调用fsync等待系统自己同步)

设置开机自动启动服务

sudo chkconfig redis on

4. 启动redis

[root@winner etc]# cd /usr/local/bin
[root@winner bin]# ./redis-server /etc/redis.conf

5. 检查是否启动成功(查看redis服务是否已经启动)

[root@winner 桌面]# ps -ef | grep redis
root      6121     1  0 19:37 ?        00:00:02 ./redis-server *:6379         
root      6433  6422  0 19:58 pts/1    00:00:00 grep redis

6.客户端登录

[root@winner bin]# ./redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> 

配置防火墙打开对应的端口:

$vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT

重启防火墙

$service iptables restart

测试:

127.0.0.1:6379> set test "hello"
OK
127.0.0.1:6379> get test
"hello"

关闭Redis:

[root@winner bin]# ./redis-cli -h 127.0.0.1 -p 6379 shutdown 

猜你喜欢

转载自www.cnblogs.com/huanghuanghui/p/9297027.html