下载源码:(放到 /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安装目录
1 | mkdir -pv /usr/ local /mongodb |
2 | mkdir -pv /usr/ local /mongodb/data |
3 | mkdir -pv /usr/ local /mongodb/logs |
4 | mv ./bin /usr/ local /mongodb |
#将解压包内的bin文件夹移动到安装目录
1 | cd /usr/ local /src/ |
2 | tar -xzvf ./mongodb-linux-i686-2.2.7.tgz |
3 | cd ./mongodb-linux-i686-2.2.7 |
4 | mv ./bin /usr/ local /mongodb |
#创建mongodb用户和mongodb用户组
1 | groupadd mongodb |
2 | useradd -g mongodb -s /usr/sbin/nologin mongodb |
3 | chown -R mongodb:mongodb /usr/ local /mongodb |
#设置开机启动
1 | echo "/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs/mongodb.log --fork" >> /etc/rc. local |
#启动mongodb
1 | /usr/ local /mongodb/bin/mongod --dbpath=/usr/ local /mongodb/data --logpath /usr/ local /mongodb/logs/mongodb.log --fork |
#将27017端口加入防火墙(参考:CentOS6.3编译安装Memcached)
注意:数据库端口和Web端口,分别是27017和28017,在浏览器中打开 http://localhost:28017,可以看到一些相关信息。
1 | service iptables restart // 重启防火墙 |
可能出现的问题:
问题一:
-bash: /usr/local/bin/mongo: /lib/ld-linux.so.2: bad ELF interpreter: 没有那个文件或目录
解决办法:
1 | 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
解决办法:
1 | yum whatprovides libstdc++.so.6 |
2 | yum install llibstdc++.so.6 |
安装PHP的MongoDB客户端
官方网站(http://pecl.php.net/package/mongo)
1 | cd /usr/ local /src |
2 | wget -c http://pecl.php.net/get/mongo-1.4.4.tgz |
3 | tar -xzvf ./mongo-1.4.4.tgz |
4 | cd ./mongo-1.4.4 |
5 | /usr/ local /php/bin/phpize # 利用PHP的 phpize 命令来安装扩展 |
6 | ./configure --with-php-config=/usr/ local /php/bin/php-config |
7 | make && make install |
完成后,编辑你 php.ini 文件增加一行。
1 | extension=mongo.so |