Redis单机版安装
1. Redis 单机版安装
为了提高ssh登录的速度,可以修改一个文件:
vi /etc/ssh/sshd_config
重启sshd服务
service sshd restart
ps aux | grep yum 在进程中查找yum的进程信息
|表示管道
手动下载rpm的地址:
http://rpmfind.net/linux/rpm2html/search.php
查看程序安装到哪里了
whereis gcc(程序名称)
/etc/yum.repos.d这个文件夹中的文件
更换yum源为aliyun的:(慎重!!!有时候会很慢)
第一步:备份你的原镜像文件,以免出错后可以恢复。 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo yum clean all yum makecache
|
安装gcc-c++的命令也是:yum install gcc-c++
使用本地rpm安装gcc-c++
从这里搜索需要的rpm包:http://rpm.pbone.net/
1、安装:rpm -ivh mpfr-2.4.1-6.el6.x86_64.rpm
libstdc4.4.7-18.el6.x86_64.rpm软件包已经安装到操作系统了,但是操作系统本身自带的版本比较低,如果要安装新版本,需要先将旧版本卸载或者直接更新旧版本(有其他包依赖要更新的包的时候)
通过命令查看操作系统究竟有没有安装该软件: rpm -qa|grep -i <要查询的rpm名称>
2、更新:rpm -U libstdc4.4.7-18.el6.x86_64.rpm 3、安装:rpm -ivh libstdcdevel-4.4.7-18.el6.x86_64.rpm 4、更新:rpm -U tzdata-2016j-1.el6.noarch.rpm rpm -ivh ppl-0.10.2-11.el6.x86_64.rpm rpm -ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm rpm -U libgcc-4.4.7-18.el6.x86_64.rpm rpm -ivh kernel-headers-2.6.32-696.6.3.el6.x86_64.rpm rpm -ivh libgomp-4.4.7-18.el6.x86_64.rpm rpm -ivh cpp-4.4.7-18.el6.x86_64.rpm --oldpackage 表示操作系统中已经安装了该软件,但是版本比较高,使用该命令可以将高版本软件降级为低版本软件 rpm -U glibc-common-2.12-1.209.el6.x86_64.rpm glibc-2.12-1.209.el6.x86_64.rpm glibc-2.12-1.209.el6.x86_64.rpm rpm -ivh glibc-headers-2.12-1.209.el6.x86_64.rpm rpm -ivh glibc-devel-2.12-1.209.el6.x86_64.rpm rpm -ivh gcc-4.4.7-18.el6.x86_64.rpm rpm -ivh gcc-c++-4.4.7-18.el6.x86_64.rpm
安装完,执行下面的命令,看输出结果,如果有结果表明安装成功 whereis gcc |
教程使用redis3.0版本。3.0版本主要增加了redis集群功能。
安装的前提条件:
需要安装gcc:yum install gcc-c++
1、下载redis的源码包。 https://redis.io/download
2、把源码包上传到linux服务器
3、解压源码包
tar -zxvf redis-3.0.0.tar.gz
在/root/myapps/redis-3.0.0/中执行下面的语句
4、make或者make MALLOC=libc(强制使用libc的内容来编译)
5、make install PREFIX=/usr/local/redis 将redis安装到/usr/local/redis目录中
安装完成之后,可以在/usr/local/redis/bin目录下看到
redis-benchmark redis性能测试工具
redis-check-aof AOF文件修复工具
redis-check-dump dump文件检查工具
redis-cli Redis命令行客户端
redis-sentinel Redis软连接指向redis-server
redis-server Redis服务器
1. 启动Redis的两种方式
3.1 前置启动
/usr/local/redis/bin/redis-server
在redis的安装目录的bin目录,./redis-server
默认是前端启动模式,端口是6379
ctrl+c停止前端模式的redis
3.2 后置启动(守护进程)
从redis的源码目录中复制redis.conf到redis的安装目录。/usr/local/redis/bin
cp ~/myapps/redis-3.0.0/redis.conf .
将家目录下的myapps目录中的redis-3.0.0文件夹中的redis.conf文件拷贝到当前目录
安装了vim
yum install -y vim
修改配置文件
在vim的命令模式输入/,然后输入daemonize,回车找到第一处出现的位置,按n查找下一处位置
[[email protected] bin]# ./redis-server redis.conf
ps aux | grep redis查看是否有有一个进程,它的名字包含了redis这个字符串
./redis-cli shutdown关闭redis服务器
指定IP地址和端口号的关闭redis服务器命令
./redis-cli -h 192.168.75.133 -p 1234 shutdown
./redis-cli -h 192.168.10.11 -p 6379 shutdown
./redis-cli空格-h 空格192.168.75.133(IP地址)空格 -p 空格1234(端口号)空格 shutdown
kill -9 <redis进程编号> 可以关闭服务器进程
1. Redis 配置文件介绍(Redis.conf)
4.1 端口号
6379在是手机按键上MERZ对应的号码,而MERZ取自意大利歌女Alessia Merz的名字。MERZ长期以来被Redis作者antirez及其朋友当作愚蠢的代名词。后来Redis作者在开发Redis时就选用了这个端口。
4.2 数据库数量
这里的数据库类似于MySQL的数据库,在一个MySQL的实例中可以有多个数据库,不同的应用使用不同的数据库,同样在一个redis实例中也可以有多个数据库。
可以使用 select <数据库ID>来选择使用哪个数据库。数据库0 <= ID <= datebases - 1
4.3 持久化方式
4.3.1 rdb
Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”)
快照是默认的持久化方式。这种方式是就是将内存中数据以快照的方式写入到二进制文件中,默认的文件名为dump.rdb。可以通过配置设置自动做快照持久化的方式。我们可以配置redis在n秒内如果超过m个key被修改就自动做快照,下面是默认的快照保存配置
save 900 1 #900秒内如果超过1个key被修改,则发起快照保存
save 300 10 #300秒内容如超过10个key被修改,则发起快照保存
save 60 10000
需改频率越高,持久化次数越频繁
4.3.2 aof
也可以把每一次数据变化都写入到一个append only file(aof)里面(这称为“全持久化模式”)。
aof 比快照方式有更好的持久化性,是由于在使用aof持久化方式时,redis会将每一个收到的写命令都通过write函数追加到文件中(默认是 appendonly.aof)。当redis重启时会通过重新执行文件中保存的写命令来在内存中重建整个数据库的内容。当然由于os会在内核中缓存 write做的修改,所以可能不是立即写到磁盘上。这样aof方式的持久化也还是有可能会丢失部分修改。不过我们可以通过配置文件告诉redis我们想要通过fsync函数强制os写入到磁盘的时机。有三种方式如下(默认是:每秒fsync一次)
appendonly yes //启用aof持久化方式
# appendfsync always //每次收到写命令就立即强制写入磁盘,最慢的,但是保证完全的持久化,不推荐使用
appendfsync everysec //每秒钟强制写入磁盘一次,在性能和持久化方面做了很好的折中,推荐
# appendfsync no //完全依赖os,性能最好,持久化没保证
4.4 密码验证
Redis默认配置是不需要密码认证的,可以启用Redis的认证密码,增加Redis服务器的安全性。
取消注释,foobared修改为要使用的密码。
2、重启redis服务器
# ./redis-cli shutdown 停止
# ./redis-server redis.conf 启动
3、客户端使用密码登录:
# ./redis-cli -h 127.0.0.1 -p 6379 -a myPassword
或者
# ./redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379> auth myPassword
OK
[[email protected] bin]# ./redis-cli 127.0.0.1:6379> ping (error) NOAUTH Authentication required. 127.0.0.1:6379> auth foobared OK 127.0.0.1:6379> ping PONG 127.0.0.1:6379> ping PONG 127.0.0.1:6379> exit [[email protected] bin]# ./redis-cli -a foobared 127.0.0.1:6379> ping PONG 127.0.0.1:6379> exit |
4、如果Redis服务器,使用了集群。除了在master中配置密码外,也需要在slave中进行相应配置。在slave的配置文件中找到如下行,去掉注释并修改与master相同的密码即可:
从服务器的同步复制过程自动使用master密码进行认证
需要在从服务器上设置主服务器的密码。materauth foobared
带密码的时候关闭操作:
./redis-cli -a foobared shutdown