Linux系统安装NoSQL(MongoDB和Redis)步骤及问题解决办法

502 查看

原文出自【听云技术博客】:http://blog.tingyun.com/web/a...

如下是我工作中的记录,介绍的是linux系统下NoSQL:MongoDB和Redis的安装过程和遇到的问题以及解决办法:

需要的朋友可以按照如下步骤进行安装,可以快速安装MongoDB和Redis,希望可以帮助大家:)!

一、MongoDB

1、MongoDB安装

(1)将安装包mongodb-linux-i686-3.0.2.tgz拷贝到要安装的服务器中

这里我用的rz命令,如果不支持需要安装yum -y install lrzsz

(2)解压安装程序 tar xzvf mongodb-linux-i686-3.0.2.tgz

(3)进入目录:/usr/local/ 创建文件夹 mkdir mongodb

(3)移动文件到/usr/local/mongodb目录中:

mv mongodb-linux-i686-3.0.2/* /usr/local/mongodb    进入/usr/local/mongodb执行

(4)mkdir data

(5)touch logs

(6)进入bin目录下执行启动

   ./mongod --dbpath=/usr/local/mongodb/data/ --fork --logpath=/usr/local/mongodb/logs
   说明:--dbpath  指定存放mongodb库数据
        --fork    后台执行,不然一直前台执行
--logpath  指定mongodb的日志记录文件
    报错:-bash: ./mongod: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
解决办法:sudo yum install glibc.i686
报错:./mongod: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
解决办法:yum provides libstdc++.so.6  查看哪个里面包含so.6 查看到
libstdc++-4.8.5-4.el7.i686,然后执行安装
    yum install libstdc++-4.8.5-4.el7.i686 执行安装
报错:Error: Protected multilib versions: libstdc++-4.4.7-4.el6.i686 != 
libstdc++-4.4.7-3.el6.x86_64
解决办法:yum  update libstdc++-4.4.7-11.el6.x86_64  然后再执行步骤 yum install libstdc++-4.4.7-4.el6.i686
    安装成功后,在执行启动./mongod --dbpath=/usr/local/mongodb/data/ --fork --logpath=/usr/local/mongodb/logs

(7)查看mongodb进程(以下两种均可)

 netstat -tlnup|grep mongod
netstat -tlnup|grep 27017

2、MongoDB启动:

(1)进入/usr/bin

(2)执行命令连接客户端:./mongo

3、查看启动状态:

netstat -lntup|grep 27017
> show dbs;
db.stats()
use test;

至此,redis已经安装并测试成功,可以放心使用了:)

二、Redis

Redis分为服务端和客户端,我们首先安装服务端,实际就是用C语言进行编译,编译成功即安装成功,然后再启动客户端连接服务端进行测试。

1、安装Redis服务端

(1)下载安装包

在服务器相应目录下(/opt)执行wget命令进行下载:

wget  https://redis.googlecode.com/files/redis-2.6.13.tar.gz
报错:Permission  denied 
原因:当前用户ec2-user 对opt 这个文件夹没有w的权限
解决办法:sudo -i chmod a+x /opt 使当前用户对opt文件有执行权限

(2) 解压缩安装包

 tar xzf redis-2.6.13.tar.gz

(3)编译

 进入redis-2.6.13目录进行编译
1)cd redis-2.6.13
2)make
报错:/bin/sh: cc: command not found
原因:没有C语言编译环境
解决办法:yum install gcc
继续执行编译安装
3)make install

(4)拷贝redis.conf到etc文件夹下

  cp redis.conf /etc/

2、启动Redis

(1)进入目录redis的src:cd /opt/redis-3.0.0/src

(2)启动服务端(src目录):./redis-server &

或者在redis-3.0.0目录下执行 src/redis-server

(3)打开客户端(src目录):./redis-cli &

或者在redis-3.0.0目录下执行 src/redis-cli

3、测试Redis安装

两种方式测试redis是否启动成功,选择任意一种即可

(1)检测6379端口是否在监听

netstat -lntp | grep 6379

(2)检测后台进程是否存在

ps -ef |grep redis

4、执行Redis测试

127.0.0.1:6379> set name yhb
OK
127.0.0.1:6379> get name
"yhb"
127.0.0.1:6379>

至此,Redis已经安装并测试成功,可以放心使用了:)