systemctl stop firewalld.service #中止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
复制代码
sudo yum install gcc-c++
复制代码
wget http://download.redis.io/releases/redis-4.0.11.tar.gz
复制代码
tar -zxvf redis-4.0.11.tar.gz
复制代码
cd redis-4.0.11
复制代码
make MALLOC=libc
复制代码
注意:javascript
make命令执行完成编译后,会在src目录下生成6个可执行文件,分别是java
make install
复制代码
./utils/install_server.sh
复制代码
显示结果信息以下:node
Welcome to the redis service installer
This script will help you easily set up a running redis server
复制代码
config set protected-mode no
复制代码
// 获取密码
config get requirepass
// 设置密码
config set requirepass yourpassword
复制代码
安装redisc++
npm install redis --save
复制代码
//引入redis
var redis = require('redis')
// 链接redis服务器
// 链接redis数据库,createClient(port,host,options);
// 若是REDIS在本机,端口又是默认,直接写createClient()便可
client = redis.createClient(6379, '192.168.73.128', {
password: 'lentoo'
});
//错误监听?
client.on("error", function (err) {
console.log(err);
});
复制代码
经过redis回显redis
client.set('key','value')
// 设置过时时间 10s后过时
client.set('key','value','EX',10)
复制代码
client.get('key') // value
复制代码
client.hset('hash key','key','value', redis.print)
复制代码
client.hget('hash key','key', redis.print)
复制代码
// 遍历哈希表"hash key"
client.hkeys("hash key", function (err, replies) {
console.log(replies.length + " replies:");
replies.forEach(function (reply, i) {
console.log(" " + i + ": " + reply);
});
client.quit();
});
复制代码
client.hmset('hash 1', 'key', 'value111', 'key2', 'value222', 'key3', 'value3', redis.print)
复制代码
client.hmget('hash 1', 'key', 'key2', 'key3', redis.print)
复制代码
const sub = redis.createClient() // 订阅者
const pub = redis.createClient() // 发布者
var msg_count = 0;
sub.on("subscribe", function (channel, count) {
client.publish("a nice channel", "I am sending a message.");
client.publish("a nice channel", "I am sending a second message.");
client.publish("a nice channel", "I am sending my last message.");
});
sub.on("message", function (channel, message) {
console.log("sub channel " + channel + ": " + message);
msg_count += 1;
if (msg_count === 3) {
sub.unsubscribe();
sub.quit();
client.quit();
}
});
复制代码
redis客户端链接准备好后触发,在此前全部发送给redis服务器的命令会以队列的形式进行排队,会在ready事件触发后发送给redis服务器数据库
client.on('ready',function(){
console.log('ready');
})
复制代码
client.on('connect',function(){
console.log('connect');
})
复制代码
client.on('reconnecting ', function (resc) {
console.log('reconnecting',resc);
})
复制代码
client.on("error", function (err) { console.log(err); });npm
client.on('end',function(){ console.log('end')
})bash
redis.createClient([options])
redis.createClient(unix_socket[, options])
redis.createClient(redis_url[, options])
redis.createClient(port[, host][, options])
复制代码
属性 | 默认值 | 描述 |
---|---|---|
host | 127.0.0.1 | redis服务器地址 |
port | 6379 | 端口号 |
connect_timeout | 3600000 | 链接超时时间 以ms为单位 |
password | null | 密码 |
欢迎关注个人公众号“码上开发”,天天分享最新技术资讯。关注获取最新资源服务器