一、介绍在ubuntu中安装Redis(附)
二、今天写Java程序来连接redis却出现了错误
三、错误如下
四、程序代码如下
String host = "123.57.36.98";
int port = 6379;
//Jedis jedis = new Jedis(host, port);
/**
* 单机单链接方式
* 使用java代码操作redis
* 一般只用于测试代码
* @throws Exception
*/
@Test
public void test1() throws Exception {
Jedis jedis = new Jedis(host, port);
jedis.set("crxy", "www.crxy.cn");
String string = jedis.get("crxy");
System.out.println(string);
}
五、确认程序代码没有问题,仔细查看错误发现如下的信息
DENIED Redis is running in protected mode
because protected mode is enabled, no bind address was specified, no authentication password
is requested to clients
他说名redis是受保护的,不能进行没有绑定地址和密码的进行连接。
五、解决办法,修改redis.conf配置文件找到如下地方,把原来的yes改为no
六、重新启动redis,再次运行java程序,连接成功。应该也能进行设置密码和账户进行连接,这个我没有进行测试。
附:Ubuntu下安装redis
首先你的Linux要安装的有cpp的编译环境,因为Redis是用C语言进行编写的,在此就不多说了。
一、安装redis,本电脑安装的版本是3.2.3安装命令如下
wget http://download.redis.io/releases/redis-3.2.3.tar.gz
tar -zxvf redis-3.2.3.tar.gz
cd redis-3.2.3
make
二、make之后会出现“make test”的提示,执行make test报错。错误为:
You need tcl 8.5 or newer in order to run the Redis test
1、这是缺少tcl的包所致
2、下载tcl 包:
wget http://downloads.sourceforge.NET/tcl/tcl8.6.1-src.tar.gz
3、解压该包:
tar zxvf tcl8.6.1-src.tar.gz
4、进入Unix文件夹下执行配置:
cd tcl8.6.1/unix
./configure&&make&&make install
三、进入到redis的src目录下执行
redis-server redis.conf
然后会出现redis的欢迎界面以及监听的端口。
但是终端不能再输入命令了,因为这样的启动为前端启动,
那么如何进行后台启动那
1、在redis的安装目录下。我们可以找到一个叫redis.conf的文件,这个文件是redis的配置文件
2、用vi打开
vim redis.conf
3、如图所示
4、往下拉会找到daemonize=no
5、图片上我已经改为yes了,然后保存退出
四、然后再次执行命令
redis-server redis.conf
发现什么也没显示,你可以查看后台运行程序来验证redis服务是否启动
ps -ef|grep redis
结果如图证明已经启动
然后你可以用客户端进行连接测试代码如下
redis-cli
set foo bar
get foo
结果如图
至此redis已经安装测试成功。