CentOS6.3安装MongoDB2.2 及 安装PHP的MongoDB客户端
下载源码:(放到 /usr/local/src 目录下)
到官网 http://www.mongodb.org/downloads 下载源码
https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.2.7.tgz (64位)
https://fastdl.mongodb.org/linux/mongodb-linux-i686-2.2.7.tgz (32位)
注意:32位系统安装32位的,64位系统安装64位的!
安装MongoDB
#创建mongodb安装相关目录
mkdir -pv /usr/local/mongodb
mkdir -pv /usr/local/mongodb/etc
mkdir -pv /usr/local/mongodb/data
mkdir -pv /usr/local/mongodb/logs
mkdir -pv /usr/local/mongodb/repair
#将解压包内的bin文件夹移动到安装目录
cd /usr/local/src/
tar -xzvf ./mongodb-linux-i686-2.2.7.tgz
cd ./mongodb-linux-i686-2.2.7
mv ./bin /usr/local/mongodb
#创建mongodb用户和mongodb用户组
groupadd mongodb
useradd -g mongodb -s /usr/sbin/nologin mongodb
chown -R mongodb:mongodb /usr/local/mongodb
#创建配置文件 mongodb.conf
vim /usr/local/mongodb/etc/mongodb.conf
添加如下内容:
dbpath = /usr/local/mongodb/data
logpath = /usr/local/mongodb/logs/mongodb.logfork = true
#启动mongodb
ln -s /usr/local/mongodb/bin/mongod /usr/bin/mongod
mongod -f /usr/local/mongodb/etc/mongodb.conf
看看是不是启动起来了,但是使用这种方式管理mongodb服务器很不明智,我们完善一下:
mkdir -p /usr/local/mongodb/srv
vim /usr/local/mongodb/srv/mongodb-start
添加下面的内容
#!/bin/sh
mongod -f /usr/local/mongodb/etc/mongodb.conf
vim /usr/local/mongodb/srv/mongodb-stop
添加下面的内容
#!/bin/bash
pid=`ps -o pid,command ax | grep mongod | awk '!/awk/ && !/grep/ {print $1}'`;
if [ "${pid}" != "" ]; then
kill -2 ${pid};
fi
添加执行权限
chmod a+x /usr/local/mongodb/srv/mongodb-start
chmod a+x /usr/local/mongodb/srv/mongodb-stop vim /etc/rc.d/init.d/mongodb
添加下面的内容
#! /bin/sh
#
# mongodb – this script starts and stops the mongodb daemon
#
# chkconfig: - 85 15
# description: MongoDB is a non-relational database storage system.
# processname: mongodb
# config: /usr/local/mongodb/etc/mongodb.conf
# pidfile: /usr/local/mongodb/mongodb.pid PATH=/usr/local/mongodb/bin:/sbin:/bin:/usr/sbin:/usr/bin
NAME=mongodb
test -x $DAEMON || exit 0
set -e
case "$1" in
start)
echo -n "Starting MongoDB... "
/usr/local/mongodb/srv/mongodb-start
;;
stop)
echo -n "Stopping MongoDB... "
/usr/local/mongodb/srv/mongodb-stop
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop}" >&2
exit 1
;;
esac
exit 0
添加服务
chmod a+x /etc/rc.d/init.d/mongodb
chkconfig --add mongodb
chkconfig --level 345 mongodb on
service mongodb start // 或 /etc/rc.d/init.d/mongodb start
【备份:以前的做法】
#设置开机启动
echo "/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs/mongodb.log --fork" >> /etc/rc.local
#启动mongodb
/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data --logpath /usr/local/mongodb/logs/mongodb.log --fork
#将端口加入防火墙(参考:CentOS6.3编译安装Memcached)
注意:数据库端口和Web端口,分别是和,在浏览器中打开 http://localhost:28017,可以看到一些相关信息。
service iptables restart // 重启防火墙
可能出现的问题:
问题一:
-bash: /usr/local/bin/mongo: /lib/ld-linux.so.2: bad ELF interpreter: 没有那个文件或目录
解决办法:
yum install ld-linux.so.2
问题二:
mongo: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
解决办法:
yum whatprovides libstdc++.so.6
yum install llibstdc++.so.6
问题三:查看日志的内容如下
Tue Jan 4 09:51:37 MongoDB starting : pid=2794 port=27017 dbpath=/var/lib/mongodb 32-bit
** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data
** see http://blog.mongodb .org/post/137788967/32-bit-limitationsTue Jan 4 09:51:37 db version v1.6.5, pdfile version 4.5
Tue Jan 4 09:51:37 git version: 0eb017e9b2828155a67c5612183337b89e12e291
Tue Jan 4 09:51:37 sys info: Linux domU-12-31-39-01-70-B4 2.6.21.7-2.fc8xen #1 SMP Fri Feb 15 12:39:36 EST 2008 i686 BOOST_LIB_VERSION=1_37
**************
old lock file: /var/lib/mongodb /mongod.lock. probably means unclean shutdown
recommend removing file and running --repair
see: http://dochub.mongodb .org/core/repair for more information
*************
Tue Jan 4 09:51:37 exception in initAndListen std::exception: old lock file, terminating
Tue Jan 4 09:51:37 dbexit:
参考:http://blog.csdn.net/a9529lty/article/details/6456969
安装PHP的MongoDB客户端
官方网站(http://pecl.php.net/package/mongo)
cd /usr/local/src
wget -c http://pecl.php.net/get/mongo-1.4.4.tgz
tar -xzvf ./mongo-1.4.4.tgz
cd ./mongo-1.4.4
/usr/local/php/bin/phpize # 利用PHP的 phpize 命令来安装扩展
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
完成后,编辑你 php.ini 文件增加一行。
extension=mongo.so
CentOS6.3安装MongoDB2.2 及 安装PHP的MongoDB客户端的更多相关文章
- centos6.5环境源码编译安装mysql5.6.34
centos6.5环境源码编译安装mysql5.6.34 源码下载地址http://dev.mysql.com/downloads/mysql/5.6.html#downloads 选择Generic ...
- centos vmware centos6.6 64位 kvm虚拟化安装配置 第四十二节课
centos vmware centos6.6 64位 kvm虚拟化安装配置 第四十二节课 上半节课 下半节课 f
- CentOS-6.5-x86_64 最小化安装后,怎样安装 man 程序?
CentOS-6.5-x86_64 最小化安装后.怎样安装man 程序? CentOS-6.5-x86_64 最小化安装后,没有man 程序,没它还真的不方便. man 是 manual(手冊)的意思 ...
- CentOS6.5+mysql5.1源码安装过程
一:先安装依赖包(不然配置的时候会报错的!) yum -y install ncurses* libtermcap* gcc-c++* 新建mysql用户 [root@HE1Packages]# gr ...
- centos 6.5 安装mongodb2.6
前言: 系统版本号:Centos-6.5-x86_64 *** Centos编译安装mongodb 2.6 系统最好是64位的,才干更好发挥mongodb的性能 1.准备,下载源文件(二进制编译版) ...
- centos6.5环境disconf管理端安装配置详解
操作系统:centos6.5 x86_64 安装目录/data 1.安装nginx1.10.1 rpm -ivh http://nginx.org/packages/centos/6/noarch/R ...
- centos6.5环境通过rpm包安装mysql5.5.51数据库
centos6.5环境通过rpm包安装mysql5.5.51数据库 注意:此方法适用于单独安装数据库的需求,如果在该机器上还需要安装php环境,建议mysql通过编译或yum方式安装 1.查找已经安装 ...
- CentOS6.5上Zabbix3.0的RPM安装【一】-安装并配置Server
一.Environment OS:CentOS6.5 64bit [桌面版安装] Server端:192.168.201.109 ServerName Clinet端:192.168.201.199 ...
- Go程序开发---Go环境配置:CentOS6.5+Go1.8标准包安装
1.Go安装 1.1Go的三种安装方式 Go有多种安装方式,可以选择自己习惯的方式进行,这里介绍三种安装方式: 1)Go源码安装 2)Go标准包安装 3)第三方工具安装 这里主要介绍下Go标准包在Ce ...
随机推荐
- UVA数学入门训练Round1[6]
UVA - 11388 GCD LCM 题意:输入g和l,找到a和b,gcd(a,b)=g,lacm(a,b)=l,a<b且a最小 g不能整除l时无解,否则一定g,l最小 #include &l ...
- 第8章 文件系统管理(2)_挂载、fdisk分区及分配swap分区
3. fdisk分区 3.1 fdisk命令分区过程 (1)添加新硬盘 (2)查看新硬盘#fdisk –l (3)使用fdisk命令分区:#fdisk /dev/sdb Fdisk交互指令说明 命令 ...
- idea如何设置类头注释和方法注释
CSDN 2016博客之星评选结果公布 [系列直播]算法与游戏实战技术 "我的2016"主题征文活动 详细:idea如何设置类头注释和方法注释 标签: idea ...
- jdbc java数据库连接 3)Statement接口之执行DDL、DML、DQL
|- Statement接口: 用于执行静态的sql语句 |- int executeUpdate(String sql) : 执行静态的更新sql语句(DDL,DML) |- ResultSet ...
- 通过trie树单词自动补全(二)
经常使用iciba进行单词查询, 关于他的搜索建议是通过单词前缀做的索引, 所以自己想动手实现下, 当然如果借助mysql的话,一条sql语句就能实现, 网上查询了下trie正适合做这个,所以通过C语 ...
- IIS部署站点相关经验总结
IIS部署站点相关经验总结 1.IIS和.net4.0安装是有先后顺序的,应该先安装.net framework 4.0,再安装IIS.如果按相反顺序安装的话,IIS中看不到4.0相关的东西,那么只能 ...
- Binder理解
native takepicture -> camera -> ICamera: class bpbinder: transact -> BpBinder: transact -&g ...
- Python学习Day2笔记(集合和文件操作)
1.集合的使用 列表是有序的可包含重复内容的 集合是无序的不可包含重复内容的 1) 集合关系测试 #列表去重list_1=[1,4,5,6,7,8,9,7,5,4,23,2] #有重复数据 list_ ...
- JavaScript indexOf() 方法 和 lastIndexOf() 方法
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置. lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索. 语法: in ...
- 【转】js实现复制到剪贴板功能,兼容所有浏览器
两天前听了一个H5的分享,会议上有一句话,非常有感触:不是你不能,而是你对自己的要求太低.很简单的一句话,相信很多事情不是大家做不到,真的是对自己的要求太低,如果对自己要求多一点,那么你取得的进步可能 ...