关系型数据库nosql redis初学

来源:互联网 发布:淘宝店家不发货 编辑:程序博客网 时间:2024/06/18 08:45

redis安装过程

解压压缩包

tar zxf redis-3.0.2.tar.gz

然后进入解压目录中

make && make install #确保安装了gcc

然后进入utils目录

cd utils/./install_server.sh #执行安装脚本

默认端口6379
内核参数overcommit_memory

redis-cli #命令行工具

主从配置
在另一台主机上安装redis
然后进入配置文件中进行修改

vim /etc/redis/6379.conf206 # slaveof <masterip> <masterport>207 slaveof 172.25.254.143 6379

按照以上修改即可
最后效果如下

[root@server2 ~]# redis-cli 127.0.0.1:6379> set name daxingsbOK127.0.0.1:6379> get name"daxingsb"[root@server3 utils]# redis-cli 127.0.0.1:6379> get name"daxingsb"

哨兵服务sentinel的配置

53 sentinel monitor mymaster 172.25.254.143 6379 2 #哨兵监控的主机ip和端口 2为两台或以上认为其down机82 sentinel down-after-milliseconds mymaster 30000 #ping 发出后30秒无回应认为其down机90 sentinel parallel-syncs mymaster 1 #可以进行同步的slave数量,越小越慢115 sentinel failover-timeout mymaster 180000 

将这个文件复制到/etc/redis下

cp sentinel.conf /etc/redis

然后可以开启哨兵服务

redis-server /etc/redis/sentinel.conf --sentinel

可以看到
.

           _.-``__ ''-._                                                   _.-``    `.  `_.  ''-._           Redis 3.0.2 (00000000/0) 64 bit  .-`` .-```.  ```\/    _.,_ ''-._                                    (    '      ,       .-`  | `,    )     Running in sentinel mode |`-._`-...-` __...-.``-._|'` _.-'|     Port: 26379 |    `-._   `._    /     _.-'    |     PID: 16915  `-._    `-._  `-./  _.-'    _.-'                                    |`-._`-._    `-.__.-'    _.-'_.-'|                                   |    `-._`-._        _.-'_.-'    |           http://redis.io          `-._    `-._`-.__.-'_.-'    _.-'                                    |`-._`-._    `-.__.-'    _.-'_.-'|                                   |    `-._`-._        _.-'_.-'    |                                    `-._    `-._`-.__.-'_.-'    _.-'                                         `-._    `-.__.-'    _.-'                                                 `-._        _.-'                                                         `-.__.-'           16851:X 07 Aug 11:07:27.830 # Sentinel runid is e4b570ac1279d72070ed073763164e5b5a84293516851:X 07 Aug 11:07:27.830 # +monitor master mymaster 172.25.254.143 6379 quorum 216851:X 07 Aug 11:07:27.831 * +slave slave 172.25.254.146:6379 172.25.254.146 6379 @ mymaster 172.25.254.143 637916851:X 07 Aug 11:07:27.853 * +slave slave 172.25.254.145:6379 172.25.254.145 6379 @ mymaster 172.25.254.143 637916851:X 07 Aug 11:08:14.958 * +sentinel sentinel 172.25.254.145:26379 172.25.254.145 26379 @ mymaster 172.25.254.143 6379

集群cluster的配置过程

我们现在/usr/local下创建cluster目录
然后我们可以在里头创建六个目录来编写每个进程对应的配置文件

cd /usr/localmkdir clustercd cluster/ mkdir 3000{1,2,3,4,5,6}

然后在里面编写配置文件

vim /usr/local/cluster/30001/redis.conf 
1 daemonize yes  2 pidfile "/usr/local/cluster/30001/redis.pid" #pid文件位置  3 port 30001                   #端口号  4 logfile "/usr/local/cluster/30001/redis.log" #日志文件目录  5 dir  "/usr/local/cluster/30001"              #工作目录  6 cluster-enabled yes                          #集群工作模式打开  7 cluster-config-file nodes-30001.conf     #集群节点配置文件  8 cluster-node-timeout  15000          #集群节点等待时间  9 appendonly  yes              #日志格式使用aof 

然后将这个文件复制到创建的那几个目录

cp redis.conf /usr/local/cluster/30002/



修改为自己对应的号码

vim /usr/local/cluster/30002/redis.conf

然后开启redis集群

redis-server 30001/redis.conf redis-server 30002/redis.conf redis-server 30003/redis.conf redis-server 30004/redis.conf redis-server 30005/redis.conf redis-server 30006/redis.conf 

查看进程的情况

ps aux
root     17844  0.1  0.4 137440  2432 ?        Ssl  14:12   0:00 redis-server *:30001 [cluster]root     17849  0.1  0.4 137440  2432 ?        Ssl  14:12   0:00 redis-server *:30002 [cluster]root     17853  0.1  0.4 137440  2432 ?        Ssl  14:13   0:00 redis-server *:30003 [cluster]root     17858  0.1  0.4 137440  2432 ?        Ssl  14:13   0:00 redis-server *:30004 [cluster]root     17863  0.1  0.4 137440  2432 ?        Ssl  14:13   0:00 redis-server *:30005 [cluster]root     17867  0.1  0.4 137440  2436 ?        Ssl  14:13   0:00 redis-server *:30006 [cluster]

使用ruby脚本来控制集群
安装rubygem

yum install rubygems-1.3.7-5.el6.noarch.rpm -y

使用gem命令来安装相应的模块

gem install --local redis-3.3.1.gem

将ruby脚本复制到bin下来使用

cd redis-3.0.2/src/cp redis-trib.rb /usr/local/bin/

创建集群

redis-trib.rb create --replicas 1 127.0.0.1:30001 127.0.0.1:30002  127.0.0.1:30003 127.0.0.1:30004 127.0.0.1:30005 127.0.0.1:30006

数据的迁移

redis-trib.rb import --from 127.0.0.1:6379 127.0.0.0.1:30001
原创粉丝点击