centos6 安装redis-4.0.9
从redis官网下载Linux redis4.0.9版本,我下载的redis-4.0.9.tar.gz(目前最新稳定版),下载到/usr/local/src目录,如果没有就mkdir创建一个.
下载链接:https://redis.io/download
http://download.redis.io/releases/redis-4.0.9.tar.gz
############ 开始 ###############
################################## 1.安装redis ######################################
将安装包下载到此目录
/usr/local/src
将redis安装到此目录
/usr/local/redis
安装过程指令如下:
mkdir /usr/local/redis
cd /usr/local/src
tar xzf redis-4.0.9.tar.gz
ln -s redis-4.0.9 redis #建立一个链接
cd redis
make PREFIX=/usr/local/redis install #安装到指定目录中
start
上面的最后一行,我们通过PREFIX指定了安装的目录。如果make失败,一般是你们系统中还未安装gcc,那么可以通过yum安装:
yum install gcc
安装完成后,继续执行make.
这里也可以执行更新yum
sudo yum update
end
在安装redis成功后,你将可以在/usr/local/redis看到一个bin的目录,里面包括了以下文件:
redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server
################################# 2.将redis做成一个服务并注册 ################################
1.复制脚本到/etc/rc.d/init.d目录
ps: /etc/rc.d/init.d/目录下的脚本就类似与windows中的注册表,在系统启动的时候某些指定脚本将被执行
按以上步骤安装Redis时,其服务脚本位于:
/usr/local/src/redis/utils/redis_init_script
必须将其复制到/etc/rc.d/init.d的目录下:
cp /usr/local/src/redis/utils/redis_init_script /etc/rc.d/init.d/redis
将redis_init_script复制到/etc/rc.d/init.d/,同时易名为redis。
如果这时添加注册服务:
chkconfig --add redis
将报以下错误:
redis服务不支持chkconfig
为此,我们需要更改redis脚本。
2.更改redis脚本
打开使用vi打开脚本,查看脚本信息:
vim /etc/rc.d/init.d/redis
看到的内容如下(下内容是更改好的信息):
#!/bin/sh
#chkconfig: 2345 80 90
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem. REDISPORT=6379
EXEC=/usr/local/redis/bin/redis-server
CLIEXEC=/usr/local/redis/bin/redis-cli PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/${REDISPORT}.conf" case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed"
else
echo "Starting Redis server..."
$EXEC $CONF &
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$CLIEXEC -p $REDISPORT shutdown
while [ -x /proc/${PID} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
*)
echo "Please use start or stop as first argument"
;;
esac
和原配置文件相比(以下几处都要更改,特别是第一个#chkconfig,否则会导致无法添加配置):
1.需要添加第二行内容如以上脚本中第二行:
#chkconfig: 2345 80 90
2.原文件EXEC、CLIEXEC参数,也是有所更改。
EXEC=/usr/local/redis/bin/redis-server
CLIEXEC=/usr/local/redis/bin/redis-cli
3.redis开启的命令,以后台运行的方式执行。
$EXEC $CONF &
ps:注意后面的那个“&”,即是将服务转到后面运行的意思,否则启动服务时,Redis服务将
占据在前台,占用了主用户界面,造成其它的命令执行不了。
4.将redis配置文件拷贝到/etc/redis/${REDISPORT}.conf
mkdir /etc/redis
cp /usr/local/src/redis/redis.conf /etc/redis/6379.conf
这样,redis服务脚本指定的CONF就存在了。默认情况下,Redis未启用认证,可以通过开启6379.conf的requirepass 指定一个验证密码。
以上操作完成后,即可注册yedis服务:
chkconfig --add redis
3.启动redis服务
service redis start
######################## 3.将Redis的命令所在目录添加到环境变量PATH中 ##############################
修改profile文件:
vi /etc/profile
在最后行追加:
export PATH="$PATH:/usr/local/redis/bi
应用这个文件
. /etc/profile
#################################### 4.设置redis密码 #########################################
打开配置文件:# vi /etc/redis/6379.conf
vi /etc/redis/6379.conf
进入命令模式查找"requirepass"字符串,找到这一段,去掉前面的#号,后面密码就自定义了(此处修改为-Tq8UA7zredis)
# Warning: since Redis is pretty fast an outside user can try up to
# 150k passwords per second against a good box. This means that you should
# use a very strong password otherwise it will be very easy to break.
#
requirepass -Tq8UA7zredis # Command renaming.
#
# It is possible to change the name of dangerous commands in a shared
# environment. For instance the CONFIG command may be renamed into something
# hard to guess so that it will still be available for internal-use tools
# but not available for general clients.
要使配置生效可以重启一下
##################################### 5.安装完成,进入redis ####################################
这样就可以直接调用redis-cli的命令了,如下所示:
redis-cli
redis 127.0.0.1:6379> auth -Tq8UA7zredis
OK
redis 127.0.0.1:6379>
PS:可能需要防火墙将6379端口打开外部就能访问了
解决问题redis问题:ERR Client sent AUTH, but no password is set
明明在redis.conf中设置了密码,而且redis还启动了,为什么说没有密码呢?
大家都知道linux下启动redis有很多种方法,
其中有 ./redis-server &
这种方法启动,不会带上你的redis.conf配置文件启动
还有 ./redis-server ../redis.conf
这种方法启动的时候,会去带上配置文件redis.conf
上面的问题 ERR Client sent AUTH, but no password is set 。我遇到过一次,原因是我大意了,我用了第一种方式启动
这个时候redis是没有密码的,但是我的redis配置文件中配置了密码,所以当我在set值的时候就报这个错误了。
所以如果你配置了redis.conf这个文件,那么启动redis的时候也一定要带上这个文件启动。
那么解决问题就要先退出来
cd /usr/local/redis/bin
service redis stop
./redis-server
-bash: ./redis-server: 没有那个文件或目录 ,
经过搜索:
find / -name redis-server
/usr/local/redis/bin/redis-server
原来是能在当前bin的目录下才能执脚本文件
cd /usr/local/redis/bin/
再次执行

成功显示Redis信息
centos6 安装redis-4.0.9的更多相关文章
- 安装Redis 4.0单实例
一.Redis简单介绍 转载于网络 Redis是一个开源(BSD许可)的内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件.由于Redis采用运行在内存中的数据集工作方式,其性能卓越,能支持 ...
- liunx 安装redis 4.0
liunx 上安装redis 4.0.1 第一步:将 redis-4.0.1.tar.gz 压缩问上传至/home目录下 第二步: 解压文件 tar -zxvf redis-4.0.1.tar.g ...
- CentOS7.2 安装redis 3.0.6集群
1.环境确认 a.系统版本查看 [hadoop@p168 ~]$ cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) b.安装依 ...
- centos / Linux 服务环境下安装 Redis 5.0.3
原文:centos / Linux 服务环境下安装 Redis 5.0.3 1.首先进入你要安装的目录 cd /usr/local 2.下载目前最新稳定版本 Redis 5.0.3 wget http ...
- linux安装 redis(redis-3.0.2.tar.gz) 和 mongodb(mongodb-linux-x86_64-rhel62-4.0.0)
1:首先 要下载 这两个 压缩包 注意:liunx是否已经安装过 gcc没安装的话 先安装:yum install gcc-c++ 2:安装 redis:redis-3.0.2.tar.gz (1): ...
- CentOS 7.3 安装redis 4.0.2服务
CentOS 7.3 安装redis 4.0.2服务 1.下载解压 下载地址:/home/xiaoming/ wget http://download.redis.io/releases/redis- ...
- Linux安装Redis 6.0.5 ./install_server.sh报错
Linux安装Redis 6.0.5 ./install_server.sh报错 linux 安装Redis6.0.5时 进行到./install_server.sh时报错, This systems ...
- Centos6 安装 Redis
先确认gcc和tcl已经安装 sudo yum install gcc-c++ sudo yum install tcl 解压, 编译和安装 .tar.gz /usr/src/ cd /usr/src ...
- Centos6 安装 Redis 和集群配置
Redis安装 先确认gcc和tcl已经安装 sudo yum install gcc-c++ sudo yum install tcl 解压, 编译和安装 .tar.gz /usr/src/ cd ...
- Centos7 linux下 安装 Redis 5.0
网上找了很多文章,发现不全而且有些问题,安装很多次之后,总结一篇可以使用的,记录之. 环境:Centos7+Redis 5.0,如果环境不符合,本篇仅供参考. 1.准备工作 作者习惯软件安装包放在单独 ...
随机推荐
- Angular UI框架 Ng-alain @delon的脚手架的生成开发模板
前言 首先感谢下 cipchk基于 Ng-Zorror 框架上制作的ng-alain . 之前很早就关注了 ng-alain,今天得空折腾了下. 折腾的时候发现官方文档有些坑,没有写清楚,所以我作为一 ...
- 详解k8s零停机滚动发布微服务 - kubernetes
1.前言 在当下微服务架构盛行的时代,用户希望应用程序时时刻刻都是可用,为了满足不断变化的新业务,需要不断升级更新应用程序,有时可能需要频繁的发布版本.实现"零停机"." ...
- ord()与char()
>>> ord('王')#获取字符编码 29579 >>> chr(29579)#把编码转成对应的字符 '王'
- PHP 常用header头定义
在php的开发中,我们常常需要使用到header函数头来进行做标记 header() 函数向客户端发送原始的 HTTP 报头. 常用header设置列表如下: header('HTTP/1.1 200 ...
- jacascript AJAX 学习
前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! AJAX 是 asynchronous javascript and XML 的简写,就是异步的 java ...
- [LeetCode] Accounts Merge 账户合并
Given a list accounts, each element accounts[i] is a list of strings, where the first element accoun ...
- [LeetCode] Can Place Flowers 可以放置花
Suppose you have a long flowerbed in which some of the plots are planted and some are not. However, ...
- Unity3D UGUI 自动调节大小
可添加以下组件 组件包含的两个枚举参数,可以自行设定适应方式. 例如一个Text UI元素,当文字过多的时候他不会自动增加高度而导致文字不能完全显示,这时候就可以挂载这个组件,如上图设置参数,就可以自 ...
- 用ECMAScript4 ( ActionScript3) 实现Unity的热更新 -- 使用原型链和EventTrigger
原型链是JS的必备,作为ECMAScript4,原型链也是支持的. 特别说明,ActionScript3是支持完整的面向对象继承支持的,原型链只在某些非常特殊的情况下使用. 本文旨在介绍如何使用原型链 ...
- MySQL的安全机制
MySQL的安全机制: 1.MySQL登录 mysql -u账户 -p密码 -h127.0.0.1 -P端口 数据库名 mysql -h hostname|hostIP -p port -u user ...