Redis基于内存存储的非关系型数据库,存储速度快,支持主从复制,支持字符串(string)、列表(list)、集合(set)、散列(hash)、有序集合(zset) 五种数据类型,
一、数据库安装
11、使用yum安装 2[root@test ~]# yum install redis 3 4[root@test ~]# redis-server --version 5Redis server v=3.2.12 sha=00000000:0 malloc=jemalloc-3.6.0 bits=64 build=7897e7d0e13773f 6[root@test ~]# redis-cli --version //可以看出使用yum安装的版本都比较旧,下面我们安装最新的5.0.5版本的redis 7redis-cli 3.2.12 8 92、编译安装最新版本redis 10 11[root@test ~]# wget http://download.redis.io/releases/redis-5.0.5.tar.gz 12 13[root@test ~]# tar -zxvf redis-5.0.5.tar.gz 14 15[root@test ~]# yum install gcc -y //gcc -v查看,如果没有需要安装 16 17[root@test redis-5.0.5]# make MALLOC=lib 18 19[root@test redis-5.0.5]# cd src && make all 20 21[root@test src]# make install 22 23[root@test src]# ./redis-server 24 2521522:C 17 Jun 2019 15:36:52.038 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo 2621522:C 17 Jun 2019 15:36:52.038 # Redis version=5.0.5, bits=64, commit=00000000, modified=0, pid=21522, just started 2721522:C 17 Jun 2019 15:36:52.038 # Warning: no config file specified, using the default config. In order to specify a config file use ./redis-server /path/to/redis.conf 28 _._ 29 _.-``__ ''-._ 30 _.-`` `. `_. ''-._ Redis 5.0.5 (00000000/0) 64 bit 31 .-`` .-```. ```\/ _.,_ ''-._ 32 ( ' , .-` | `, ) Running in standalone mode 33 |`-._`-...-` __...-.``-._|'` _.-'| Port: 6379 34 | `-._ `._ / _.-' | PID: 21522 35 `-._ `-._ `-./ _.-' _.-' 36 |`-._`-._ `-.__.-' _.-'_.-'| 37 | `-._`-._ _.-'_.-' | http://redis.io 38 `-._ `-._`-.__.-'_.-' _.-' 39 |`-._`-._ `-.__.-' _.-'_.-'| 40 | `-._`-._ _.-'_.-' | 41 `-._ `-._`-.__.-'_.-' _.-' 42 `-._ `-.__.-' _.-' 43 `-._ _.-' 44 `-.__.-' 45 46出现以上界面说明安装成功 47 48[root@test src]# ./redis-cli --version //查询是安装的最新版本的redis 49redis-cli 5.0.5 50[root@test src]# ./redis-server --version 51Redis server v=5.0.5 sha=00000000:0 malloc=libc bits=64 build=4db47e2324dd3c5
二、配置启动数据库
11、第一种方法就是安装时候的./redis-server,但是这种启动方式需要一直打开窗口,不能进行其他操作,不太方便。 2 32、以后台进程方式启动redis 4 5[root@test src]# vim /etc/redis-5.0.5/redis.conf //默认安装好的配置文件并不在这个目录下,需要找到复制到该目录下 6 7daemonize no 改为 daemonize yes //以守护进程运行 8 9[root@test src]# ./redis-server /etc/redis-5.0.5/redis.conf 1021845:C 17 Jun 2019 15:44:14.129 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo 1121845:C 17 Jun 2019 15:44:14.129 # Redis version=5.0.5, bits=64, commit=00000000, modified=0, pid=21845, just started 1221845:C 17 Jun 2019 15:44:14.129 # Configuration loaded 13 14关闭redis进程 15[root@test src]# ps -ef|grep redis 16root 21846 1 0 15:44 ? 00:00:00 ./redis-server 127.0.0.1:6379 17root 22042 6950 0 15:46 pts/1 00:00:00 grep --color=auto redis 18 19[root@test src]# kill -9 21846 20 21此方法启动关闭较为麻烦,且不能设置开机自启动
三、设置系统进程启动数据库
1先编辑配置文件,然后在把配置文件拷贝到/etc/redis下 2[root@test ~]# vim /root/redis-5.0.5/redis.conf 3 4#bind 127.0.0.1 //将bind 127.0.0.1注释掉,否则数据库只有本机能够使用 5 6daemonize yes //将no改为yes,使数据库能够以后台守护进程运行 7 8protected-mode no //把保护模式的yes改为no,否则会阻止远程访问 9 10requirepass redis //打开注释,设置密码 11 12[root@test ~]# cp /root/redis-5.0.5/redis.conf /etc/redis/ 13 14开机自启动,将redis的启动脚本复制一份放到/etc/init.d目录下 15[root@test redis]# vim /etc/init.d/redis 16 17CONF="/etc/redis/redis.conf" //将conf的变量修改下,否则读不到配置文件 18 19[root@test init.d]# cp /root/redis-5.0.5/utils/redis_init_script /etc/init.d/redis 20 21[root@test ~]# cd /etc/init.d 22 23[root@test init.d]# chkconfig redis on 24 25下面就可以用systemctl管理redis 26[root@test ~]# systemctl start redis 27 28[root@test ~]# systemctl status redis 29● redis.service - LSB: Redis data structure server 30 Loaded: loaded (/etc/rc.d/init.d/redis; bad; vendor preset: disabled) 31 Active: active (running) since Mon 2019-06-24 11:10:48 CST; 54s ago 32 Docs: man:systemd-sysv-generator(8) 33 Process: 3184 ExecStop=/etc/rc.d/init.d/redis stop (code=exited, status=0/SUCCESS) 34 Process: 3187 ExecStart=/etc/rc.d/init.d/redis start (code=exited, status=0/SUCCESS) 35 CGroup: /system.slice/redis.service 36 └─3189 /usr/local/bin/redis-server *:6379 37 38Jun 24 11:10:48 test systemd[1]: Starting LSB: Redis data structure server... 39Jun 24 11:10:48 test redis[3187]: Starting Redis server... 40Jun 24 11:10:48 test redis[3187]: 3188:C 24 Jun 2019 11:10:48.203 # oO0OoO0OoO0Oo R...0Oo 41Jun 24 11:10:48 test redis[3187]: 3188:C 24 Jun 2019 11:10:48.203 # Redis version=5...ted 42Jun 24 11:10:48 test redis[3187]: 3188:C 24 Jun 2019 11:10:48.203 # Configuration loaded 43Jun 24 11:10:48 test systemd[1]: Started LSB: Redis data structure server. 44Hint: Some lines were ellipsized, use -l to show in full.