Linux下安装Redis
补充一点linux下的目录结构(更多细节百度一下):
/opt:这个给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放在这个目录下,默认是空的
/usr:这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。
首先在Centos下可以登陆官网进行下载(http://redis.io/ 或者中文redis网站http://www.redis.cn/)
一般安装在opt下 从桌面移动到opt下的命令mv redis-3.2.0.tar.gz ../../../opt(Centos7.2)
解压:tar -zxvf redis-3.2.0.tar.gz 然后进入 cd redis-3.2.0 执行安装 make 报错
原因:
未安装gcc
解决方法:
安装gcc
[ckl@localhost ~]$ yum -y install gcc automake autoconf libtool make
结果:
安装后再执行make便成功了
2. 如果输入make提示:
zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录
在README 有这个一段话。
Allocator
---------
Selecting a non-default memory allocator when building redis is done by setting
the `MALLOC` environment variable. Redis is compiled and linked against libc
malloc by default, with the exception of jemalloc being the default on linux
systems. This default was picked because jemalloc has proven to have fewer
fragmentation problems than libc malloc.
To force compiling against libc malloc, use:
% make MALLOC=libc
To compile against jemalloc on Mac OS X systems, use:
% make MALLOC=jemalloc
说关于分配器allocator, 如果有MALLOC 这个 环境变量, 会有用这个环境变量的 去建立Redis。
而且libc 并不是默认的 分配器, 默认的是 jemalloc, 因为 jemalloc 被证明 有更少的 fragmentation problems 比libc。
但是如果你又没有jemalloc 而只有 libc 当然 make 出错。 所以加这么一个参数。
解决方法:
[root@localhost redis-3.2.0]# make MALLOC=libc
直到输出结果:
这就ok了。
make完后 redis-3.2.0目录下会出现编译后的redis服务程序redis-server,还有用于测试的客户端程序redis-cli,两个程序位于安装目录 src 目录下:
下面启动redis服务.
#cd src
#./redis-server
注意这种方式启动redis 使用的是默认配置。也可以通过启动参数告诉redis使用指定配置文件使用下面命令启动。
#cd src
#./redis-server redis.conf redis.conf是一个默认的配置文件。我们可以根据需要使用自己的配置文件。
启动redis服务进程后,就可以使用测试客户端程序redis-cli和redis服务交互了。 比如:
#cd src
#./redis-cli
#set foo bar
OK
#get foo
"bar"
---------------------到此安装成功
你们都是有经验的开发人员