18.08.27 安装redis

安装Redis

1、cd /home/tkamc     Redis安装路径   

2、mkdir redis       创建目录redis

3、redis-4.0.10.tar.gz   从windows拷贝到home/tkamc/

4、tar -xzvf redis-4.0.10.tar.gz      解压到本地

5、进入解压目录:

  1. make    在目录下输入make命令
  2. make install   什么都不写就是安装在本地目录

make PREFIX="/home/tkamc/install/redis3" install   安装在指定目录

8、  如果有bin目录说明安装成功

9、查看bin目录,

Redis-server:用来启动redis工具

Redis-benchmark:用来检测redis在本机的运行效率

Redis-check-aof:修复aof持久化

Redis-check-rbd:修复rbd持久化

Redis-cli :指的是命令行工具    

Redis-sentinel :软链接

  1. redis使用

cd /home/tkamc/redis-4.0.10  

11、cp redis.conf /home/tkamc/install/redis3/      将redis.conf 文件拷贝到redis3

12、cd  /home/tkamc/install/redis3/bin   

./redis-server ../redis.conf    启动redis

运行成功!

  1. ./redis-benchmark  执行当前文件  检测效率(吞吐量)
  2. ./redis-cli   命令行工具

   set key value  设置

   get key        获取

15、

mkdir /home/tkamc/install/redis3/run    创建run目录

touch redis.pid    创建redis.pid文件

mkdir /home/tkamc/install/redis3/var    创建var目录

touch redis.log    创建redis.log文件

15、vi /home/tkamc/install/redis3/redis-conf   修改配置文件

#编辑 去除bind 127.0.0.1 否则远程无法访问

daemonize yes   

#以后台daemon方式运行redis ,默认daemonize no

pidfile "/home/tkamc/install/redis3/run/redis.pid"

#redis以后台运行,默认pid文件路径/var/run/redis_6379.pid

port 6379

 #默认端口

#bind 127.0.0.1

#默认绑定本机所有ip地址,为了安全,可以只监听内网ip

timeout 300

#客户端超时设置,单位为秒,默认timeout 0

loglevel verbose

 #设置日志级别,支持四个级别:debug、notice、verbose、warning

logfile stdout

#日志记录方式,默认为标准输出,logs不写文件,输出到空设备/deb/null

logfile "/home/tkamc/install/redis3/var/redis.log”

#可以指定日志文件路径,默认是“”

databases 16

#开启数据库的数量

save 900 1

save 300 10

save 60 10000

创建本地数据库快照,格式:save * *

900秒内,执行1次写操作

300秒内,执行10次写操作

60秒内,执行10000次写操作

rdbcompression yes

 #启用数据库lzf压缩,也可以设置为no

dbfilename dump.rdb

#本地快照数据库名称

dir "/home/tkamc/install/redis3/var/"

#本地快照数据库存放目录,默认是./

requirepass 123456

#设置redis数据库连接密码,默认#requirepass foobared

maxclients 10000

#同一时间最大客户端连接数,0为无限制,默认#maxclients 10000

maxmemory 1024MB(6096MB)

 #设定redis最大使用内存,值要小于物理内存,必须设置,默认#maxmemory <bytes>

appendonly yes

#开启日志记录,相当于MySQL的binlog,默认appendonly no

appendfilename "appendonly.aof"

#日志文件名,注意:不是目录路径,默认不变

appendfsync everysec

#每秒执行同步,还有两个参数always、no一般设置为everysec,相当于MySQL事物日志的写方式

MySQL

#事物日志的写方式

  1. cd  /home/tkamc/install/redis3/bin   进入bin目录

./redis-server ../redis-cli       启动redis

  1. redis-cli -a 123456     测试数据库

     set name tkamc  #写数据
get name              #读取数据
     exit                   #退出redis数据库控制台

  1. redis-benchmark -h 127.0.0.1 -p 6379 -c 1000 -n 100000  

#1000个并发连接,100000个请求,测试127.0.0.1端口为6379的redis服务器性能

20、配置文件详细说明:

Bind:指的是绑定的ip

Protected-mode:询问是否开启保护模式

如果不开启,bind不起作用(密码也不起作用)

Port:默认6379,若想启动多个redis进程,需要制定不同的端口号(配置多个文件,引用不同的端口号)

Tcp-backlog:设置tcp的backlog(连接队列),tcp三次握手,未完成和已完成的总和。

Timeout:连接超时时间。默认是0.

Tcp-keepalive:检测keepalive的值(健康检查),默认值是0,表示不检测。建议设置60s。做HA

通用配置:

Daemonize:默认是no,如果改成yes,就是后台进程,直接操作,./redis-cli  

Pidfile:指定pid存储的路径和文件。在正式环境,一定使用

一台服务器:搭建redis集群

  1. 创建7000.conf配置文件

#cp /home/tkamc/install/redis3/redis.conf  /home/tkamc/install/redis3/7000.conf

2、修改文件

#vim 7000.conf

port  7000                       //端口      

bind 10.88.158.65               //默认ip为127.0.0.1 需要改为其他节点机器可访问的ip 否则创建集群时无法访问对应的端口,无法创建集群

daemonize yes                   //redis后台运行

pidfile  ./redis_7000.pid          //pidfile文件对应7000

cluster-enabled  yes                  //开启集群  把注释#去掉

cluster-config-file  nodes_7000.conf   //集群的配置  配置文件首次启动自动生成 7000

cluster-node-timeout  15000        //请求超时  默认15秒,可自行设置

appendonly  yes                 //aof日志开启  有需要就开启,它会每次写操作都记录一条日志 

 

 

  1. 启动

#./redis-server ../redis.conf

#./redis-server ../7000.conf

  1. 测试

#./redis-cli -h 10.88.158.65 -p 7000 -a 123456

提示错误:(error) CLUSTERDOWN Hash slot not served   

这是因为虽然我们配置并启动了 Redis 集群服务,但是他们暂时还并不在一个集群中,互相直接发现不了,而且还没有可存储的位置,就是所谓的slot(槽)

  1. 安装ruby和相关接口

解压

#cd /home/tkamc

#tar -zxvf ruby-2.5.1.tar.gz

编辑配置并编译源代码进行安装

#cd /home/tkamc/ruby-2.5.1

# ./configure –-prefix=/usr/local/ruby

#make && make install

配置环境变量

#vim /etc/profile

#source /etc/profile

安装rubygems

解压

#tar -zxvf rubygems-2.7.7.tgz

安装

#cd rubygems-2.7.7.tgz

#ruby setup.rb    安装命令

更新 RubyGems 命令

#gem update --system

报错

修改环境变量

#vim /etc/profile

#source /etc/profile

安装openssl

解压

#tar -zxvf openssl-1.1.1.tar.gz

配置文件和安装

#cd  openssl-1.1.1

# ./config -fPIC --prefix=/usr/local/openssl enable-shared

#./config -t

#make && make install

#openssl  -version            查看版本

#cd /home/tkamc/ruby/ext/openssl

#ruby extconf.rb --with-openssl-include=/usr/local/openssl/include/ --with-openssl-lib=/usr/local/openssl/lib

成功!

#软链接到/目录下

ln -s /home/tkamc/ruby-2.2.3/include /

安装

#make && make install

下载redis.gem

# gem install redis-3.3.0.gem

没网

切换镜像

#sudo gem sources -r https://rubygems.org

#sudo gem sources -a http://rubygems.org

下载redis-3.2.1.gem

安装

#gem install -l redis-3.2.1.gem

成功。

操作集群

#cd /home/tkamc/redis-4.0.1/src/redis-trib.rb  

#redis-trib.rb create --replicas 1 10.88.158.65:7001 10.88.158.65:7002  10.88.158.65:7003 10.88.158.65:7004 10.88.158.65:7005 10.88.158.65:7006

遇到错误:

[ERR] Node 10.88.158.65:7001 is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in database 0.

解决:删除log、pid、aof、nodes-port(对应端口号).conf

 

猜你喜欢

转载自blog.csdn.net/GAOSHIQI5322688/article/details/82107184