ubuntu系统中搭建redis数据库安装以及多实例配置
redis 是一个key value 对应型的NoSql数据库,运行于内存中,属于内存数据库所以读写速度相比传统数据库要快很多,redis被经常用作对接保存网站的Session信息,这 样可以实现Session共享在分布式部署程序的过程中必不可少,而且用redis保存session可以有效避免由于网站程序内存回收导致session丢失,redis在linux下运行效能要比在 windows中运行效能高很多,所以我们不推荐在windows服务器上部署redis,本文讲在ubuntu下部署安装redis,以及配置多个redis实例。
首先 sudo sh 输入密码进入管理员操作模块,然后 apt-get update 更新一下软件源
apt-get install redis-server
编辑 redis 的配置文件需要用到 vim 所以没有安装 vim 的需要执行下面的命令安装vim
apt-get install vim-gtk
vim 和 redis-server 都安装好之后开始配置 redis
redis默认只支持使用127.0.0.1登录连接,而且密码为空,我通过编辑redis的配置文件来开启远程IP连接,并设置登录密码
vim /etc/redis/redis.conf
找到 bind 127.0.0.1 在前面添加# 进行注释,我们可以使用服务器所有的IP地址来连接 redis
找到 # requirepass foobared 取消前面的# ,将foobared替换为你想要设置的密码比如 requirepass 123456
esc : wq 保存退出
重启redis
/etc/init.d/redis-server restart
连接redis
redis-cli -a 123456
接下来试试读写 redis
写入 set key value 如:set name xiaoming
读取 get key 如:get name
读写成功,redis的安装就算完成了。
默认redis 只有一个实例,但是redis在运行是一般只消耗内存对CPU和磁盘IO的消耗很小,所以一般一个服务器会运行多个redis实例,当然土豪无所谓,接下来讲如何设置 多个 redis 实例。
首先复制一个新的 redis.conf 出来,一般复制出来的文件命名规则为 redis+端口号.conf
cp /etc/redis/redis.conf /etc/redis/redis1550.conf
复制完成后编辑新复制出来的配置文件
vim /etc/redis/redis1550.conf
修改一下三点
pidfile /var/run/redis/redis-server.pid 修改为 pidfile /var/run/redis/redis-server1550.pid
port 6379 修改为 port 1550
logfile /var/log/redis/redis-server.log 修改为 logfile /var/log/redis/redis-server1550.log
dbfilename dump.rdb 修改为 dbfilename dump1550.rdb
esc : wq 保存退出
然后复制一个属于这个端口的服务
cp /etc/init.d/redis-server /etc/init.d/redis-server-1550
编辑刚刚复制的服务
vim /etc/init.d/redis-server-1550
DAEMON_ARGS=/etc/redis/redis.conf 修改为 DAEMON_ARGS=/etc/redis/redis1550.conf
PIDFILE=$RUNDIR/redis-server.pid 修改为 PIDFILE=$RUNDIR/redis-server1550.pid
esc : wq 保存退出
启动刚刚创建的 1550 的redies 实例
/etc/init.d/redis-server-1550 start
查看一下现在系统中应该有两个 redis 在运行了
ps auxf|grep redis
可以看到现在有两个 redis 在运行了一个是我们创建的 1550 一个是 默认的 6379
连接1550的实例方法和默认的方式一样的,需要加一个端口参数 -p 1550
redis-cli -p 1550 -a 123456
读写 1550 的实例
set age 18
get age
到此教程就结束了,如果想要多创建几个实例只要按照文中创建1550实例的方式换一个端口再次才做一次就可以了。
上一篇:Windows服务器下phpMyAdmin配置方法
下一篇:ubuntu 使用 vsftpd 基于系统用户配置相互隔离的 ftp (ftps) 服务并禁止账户 ssh shell 登陆功能