您的位置:首页 > 数据库 > Redis

linux下redis安装、启动与停止,redis做成服务

2016-08-31 09:47 826 查看
如果的linux可以链接网络,那么可以直接联网下载。直接输入代码:

wget http://download.redis.io/releases/redis-3.0.2.tar.gz[/code] 
tar zxvf redis-3.0.2.tar.gz





我们会看到在该目录下多了一个文件,redis-3.0.2 ,




我们进入该目录,然后编译执行命令make,等待10左右,我们就会看到已经编译完了,我们看到如下界面,说明我们安装成功了。

    


   


测试

[plain] view
plain copy

# make test  

[plain] view
plain copy

# yum install tcl  

错误1:

You need tcl 8.5 or newer in order to run the Redis test

解决:

# yum install tcl

错误2:

[exception]: Executing test client: NOREPLICAS Not enough good slaves to write..

NOREPLICAS Not enough good slaves to write.

......

Killing still running Redis server 63439

Killing still running Redis server 63486

Killing still running Redis server 63519

Killing still running Redis server 63546

Killing still running Redis server 63574

Killing still running Redis server 63591

I/O error reading reply

......

解决:

vim tests/integration/replication-2.tcl

- after 1000

+ after 10000

错误3:

[err]: Slave should be able to synchronize with the master
in tests/integration/replication-psync.tcl
Replication not started.

解决:

遇见过一次,重试make test就ok了。

错误4:

[err]: Test replication partial resync: ok psync (diskless: yes, reconnect: 1) in tests/integration/replication-psync.tcl

解决:

vim tests/integration/replication-psync.tcl

- after 100

+ after 1000

make PREFIX=/usr/local/redis install    

会在/usr/local/redis下生产bin文件夹  bin下面有

redis-benchmark  redis性能检测工具

 redis-check-rdb 检查rbd日志的工具

 redis-sentinel  Redis集群的管理工具 监控多个master-slave集群,发现master宕机后能进行自动切换

redis-check-aof  检查aof日志的 工具

redis-cli        redis-server

等文件

三、设置服务


    可以看到如果我们启动redis服务的话,每次都要进入到安装目录,这样是不是很繁琐,所以我们将redis做成一个服务,我们直接启动。

(设置服务前如果redis服务在开着 要先关闭redis服务 不然后面生成不了redis-6379.pid,可以查看redis服务进程 关闭杀死resid服务)

     首先将utils/redis_init_script文件复制到/etc/init.d下,同时易名为redis。执行命令

     cp  /usr/local/redis-3.0.2/utils/redis_init_script   /etc/rc.d/init.d/redis

     然后在执行命令,vi  /etc/rc.d/init.d/redis,并在文档第二行添加# chkconfig: 2345 80 90。如果/usr/local/redis/bin中没有redis-server和redis-cli文件的话,我们要在我们的安装目录下复制一个过来。否则服务启动时找不到redis-server。下图第二个红框所示。并且在第三个$EXEC $CONF 后边加一个&,表示让redis作为后台服务启动,否则该服务会独占输入屏。










可以看到在/etc/init.d/redis文件中有这么一行:CONF="/etc/redis/${REDISPORT}.conf"。于是将redis配置文件拷贝到/etc/redis/下 。 

 完成上面的操作之后,即可注册服务:

?
     然后启动redis服务

?
    这样我们就将redis服务注册好了,

如果service redis stop ,你会发现他提示/var/run/redis_6379.pid does not exist, process is not running  这说明在run下没有这个文件,我们进入到/var/run下发先真的没有这个文件,但是有redis.pid文件。




     我们我们要将/etc/rc.d/init.d/redis 文件中的redis_${REDISPORT}.pid修改为redis.pid










     这样我们重启服务后,在用该命令关闭就可以了。到这里我们的redis服务就安装好了,并做好了一个服务。

以上就是Linux下安装Redis的全过程,希望对大家安装Redis有所帮助。

java 客户端链接不上redis解决方案

telnet 192.168.0.104 6379

发现端口不能拼通,但是linu下其他的端口能拼通,说明就是redis自身配置的问题了

看了下配置文件,发现配置文件绑定了本地ip,该配置会导致,其他ip登录被拒绝,所以我们把它注释掉



接下来再测试运行,发先已经链接上了,说明问题解决,但是又出现新的问题 :DENIED Redis is running in protected mode because protected mode is enabled…



该问题说,redis目前处于受保护模式,不允许非本地客户端链接,我们可以通过给redis设置密码,然后客户端链接的时候,写上密码就可以解决了



配置redis的命令

config set requirepass 123 ->123是密码

现在java客户端通过配置主机ip号,密码就能链接上了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: