Linux安装Mongodb改良版tokutek步骤详解

系统环境:CentOS x86_64

tokutek为mongodb的改良版,在很多程度上解决了mongodb的不足之处,如磁盘占用空间等。

开放端口:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 27017 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 28017 -j ACCEPT

安装tokumx
1. 下载tokutek
进入官网http://www.tokutek.com/进行下载,选择 TOKUMX,我现在下载的最新2.0版本
tokumx-2.0.0-linux-x86_64-main.tar.gz

2. 解压并移至/mongodb
# mkdir /mongodb
# mkdir /mongodb/db
# tar -zxvf tokumx-2.0.0-linux-x86_64-main.tar.gz
# mv tokumx-2.0.0-linux-x86_64 /mongodb/tokumx-2.0.0

3. 创建mongdb.conf配置文件
# vim /mongodb/tokumx-2.0.0/etc/mongodb.conf
内容如下:
# mongodb config file
port=27017
dbpath=/mongodb/db
logpath=/mongodb/logs/mongo.log
pidfilepath=/mongodb/tokumx-2.0.0/mongodb.pid
fork=true        //后台启动
logappend=true        //日志记录方式,追加到日志文件中
auth=true        //用户认证开启

4.启动
/mongodb/tokumx-2.0.0/bin/mongod -f /mongodb/tokumx-2.0.0/etc/mongodb.conf

没用配置文件可使用以下命令启动:
# /mongodb/tokumx-2.0.0/bin/mongod --dbpath=/mongodb/db/ --logpath=/mongodb/logs/tokumx.log -fork

安装RockMongo管理工具
1.安装php
# yum install php php-devel

2.测试是否安装成功
# vim /var/www/html/phpinfo.php        //测试完后请将此文件删除,避免系统信息泄露
内容如下:
<?php phpinfo() ?>

3.启动httpd服务
# /etc/init.d/httpd start

4.访问
http://your_ip/phpinfo.php

 

5.出现如下图则表示安装成功:

 

6.开始安装RockMongo

下载: http://rockmongo.com/downloads

当前我下的rockmongo-1.1.7.zip

 

7.解压并移动

# unzip rockmongo-1.1.7.zip 

# mv rockmongo-1.1.7 /var/www/html/rockmongo

 

访问 http://your_ip/rockmongo/ 出现:

8.安装mongo-php驱动

点击提示的连接,安装mongo-php驱动:https://github.com/mongodb/mongo-php-driver

安装方法见http://php.net/manual/en/mongo.installation.php

unzip mongo-php-driver-master.zip

cd mongo-php-driver-master

phpize

./configure

make

make test        -->出错,见文后

make install

 

如果以上操作出错,前往http://pecl.php.net/package/mongo 下载最新的再安装。(我这里在安装的时候按照官方的方法就出现了错误,php --version时出现 PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/mongo.so'无法加载mongo.so模块,重新从这个地址下载安装后,终于成功了)

 

9.安装完成后编辑  # vim /etc/php.ini

extension_dir  后加上

extension=mongo.so

 

10.重启httpd服务 # /etc/init.d/httpd restart

再次访问 http://your_ip/rockmongo/ 出现如下图:

 

11.修改管理用户名和密码

默认用户名为admin,密码为admin,修改账户编辑文件/var/www/html/rockmongo/config.php

大约在32行

$MONGO["servers"][$i]["control_users"]["admin"] = "123456";     //用户名admin,密码123456

 

12.使用新用户名密码登录:

 

 

    

    

 

 

错误集合:

1.启动时报以下错误:

Tue Oct 14 18:20:42.203 [initandlisten]  TokuMX will not run with transparent huge pages enabled.   

Tue Oct 14 18:20:42.203 [initandlisten]  Please disable them to continue.                           

Tue Oct 14 18:20:42.203 [initandlisten]  (echo never > /sys/kernel/mm/transparent_hugepage/enabled) 

Tue Oct 14 18:20:42.203 [initandlisten]                                                             

Tue Oct 14 18:20:42.203 [initandlisten]  The assertion failure you are about to see is intentional. 

 

解决:

执行:echo never > /sys/kernel/mm/transparent_hugepage/enabled

 

2.make test mongo-php-driver时出现以下错误:

=====================================================================

FAILED TEST SUMMARY

---------------------------------------------------------------------

Test for PHP-466: Seed list of 1 replicaset member, and one standalone, with array("replicaSet" => true) fails. [tests/generic/bug00466.phpt]

Test for PHP-602: Use real error codes for MongoConnectionException on ctor failure. [tests/generic/bug00617.phpt]

Test for PHP-795: MongoCode segfaults when internal 'code' property is modified [tests/generic/bug00795.phpt]

MongoID: serialize() and unserialize() [tests/generic/mongid-serialize.phpt]

Test for PHP-270: ext/mongo classes should return meaningful results from Reflection API [tests/no-servers/bug00270-arginfo.phpt]

Test for PHP-434: Mongo::connect() doesn't validate the object. [tests/no-servers/bug00434.phpt]

Test for PHP-747: Improve numeric check for write concern option [tests/no-servers/bug00747.phpt]

Test for bug PHP-814: Passing in invalid MongoDB to MongoDBRef::get() segfaults [tests/no-servers/bug00814.phpt]

Test for PHP-815: MongoCursor ctor doesn't validate the MongoClient object. [tests/no-servers/bug00815.phpt]

Test for PHP-833: Killcursor with wrong hash. [tests/no-servers/bug00833_error.phpt]

Test for PHP-1218: Add MongoDate->toDateTime to allow creation of DateTime object from MongoDate [tests/no-servers/bug01218-php53.phpt]

MongoCollection::toIndexString (broken) [tests/no-servers/mongocollection-toindexstring-broken.phpt]

MongoDate micro/milliseconds discrepancy [tests/no-servers/mongodate-007.phpt]

MongoPool: Check that it is all deprecated [tests/no-servers/mongopool.phpt]

Test for PHP-612: Impossible to provide a list of tagsets to the readPreferenceTags options [tests/replicaset/legacy/bug00612.phpt]

Test for PHP-506: Ensure Mongo constructor casts passwords to strings. [tests/standalone/bug00506.phpt]

=====================================================================

 

php --version出现:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/mongo.so'

 

php -m 没有mongo模块

 

解决:

出现这些错误是我按照官方所说的方法安装mongo-php-driver,结果出现错误,重新从另外的地址http://pecl.php.net/package/mongo 下载新的安装之后,问题修复。

时间: 2024-08-03 09:31:33

Linux安装Mongodb改良版tokutek步骤详解的相关文章

Linux下MongoDB副本集部署步骤详解

说明: 有三台服务器,已经安装好了MongoDB数据库,具体信息如下: MongoDB版本:mongodb-linux-x86_64-2.6.11 MongoDB安装目录:/usr/local/mongodb MongoDB数据库目录:/home/data/mongodb/mongodb_data MongoDB日志目录:/home/data/mongodb/mongodb_log MongoDB配置文件:/usr/local/mongodb/mongodb.conf 三台服务器IP地址: 19

linux安装lamp环境及配置步骤详解

-------------------lamp环境的搭建步骤 从虚拟机创建到lamp环境的完整步骤------------------------ 一.准备一个虚拟机vmware - workstation 1.点击新建虚拟机."选择下一步"."选择下一步": 2.客户机操作系统选择linux系统.版本选择centos."选择下一步": 3.位置安装到你选择的目录我放在了E:centos3这个目录:"下一步": 4.指定磁盘容

mysql免安装版配置步骤详解

 这篇文章主要介绍了mysql免安装版配置步骤详解,提供了二个网友的安装方法,大家可以参考使用 1.准备工作   下载mysql的最新免安装版本mysql-noinstall-5.1.53-win32.zip,解压缩到相关目录,如:d: mysql-noinstall-5.1.53-win32.这个就是mysql的根目录了.   2.配置   在根目录下有几个文件如下:   my-small.ini (这是针对一个小内存(〈= 64MB)的系统,MySQL 只会被时不时地用一下,很重要的是 my

linux5.5下安装Oracle SQL Developer的步骤详解

1.安装jre   tar -zxvf  jdk-7u25-linux-x64.gz   mv jdk1.7.0_25/ /usr/local/java   vim /etc/profile export JAVA_HOME=/usr/local/java export PATH=$PATH:/usr/local/java/bin export CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar   source /etc/pr

CentOS 32 bit安装golang 1.7的步骤详解_Golang

Golang 1.7介绍 Go 1.7在版本计划阶段设定的目标就是改善和优化(polishing),因此在Go语言(Specification)规范方面继续保持着与Go 1兼容,因此理论上Go 1.7的发布对以往Go 1兼容的程序而言是透明的,已存在的代码均可以正常通过Go 1.7的编译并正确执行.下面话不多说了,直接来看在CentOS 32 bit安装golang 1.7的步骤. 安装步骤如下 到这里下载相应的包 CentOS 32bit对应的包为:https://storage.google

linux中安装mysql5.5二进制包步骤详解

今天给大家讲下了怎么安装mysql二进制包,这样避免在自己测试环境中还要去编译安装,浪费大量的时间,好了,来看教程吧.   系统:centos 5.x   需要的软件包:mysql-5.5.33-linux2.6-i686.tar.gz 1.下载mysql二进制包  代码如下 复制代码 wget http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.33-linux2.6-i686.tar.gz 2.安装mysql  代码如下 复制代码 tar z

Linux下配置Shadowsocks服务器的步骤详解

说明: Shadowsocks是一个轻量级的socks5代理软件, 而hadowsocks-libev是一个基于shadowsocks 协议的socks5代理软件, 相比原版,hadowsocks-libev程序体积小.高并发.资源占用更少.跨平台.完全兼容shadowsocks协议. hadowsocks-libev包括三个模块: ss-server:服务器端,部署在远程服务器,提供shadowsocks服务. ss-local:客户端,提供本地socks5协议代理. ss-redir:客户端

清理Linux系统垃圾文件操作方法图文步骤详解

在Linux系统中管理垃圾文件并没那么简单,虽然产生的Linux垃圾文件比较少,但随着对Linux系统的操作难免会产生各种软件安装包.软件残余.浏览器缓存文件和文档缓存文件等等,对这些垃圾文件进行清理可以缓解系统空间容量,有效提高系统运行速度,下面介绍下利用命令清理Linux垃圾文件操作教程. 一.clean 命令删除所有的软件安装包. 在网络连接正常的情况下,我们执行软件安装命令,软件安装结束后,以 .deb 为后缀的软件包就不再需要了.这种情况和 Windows 平台.手机的安卓平台上的情况

linux下httpd增加模块的步骤详解

通常我们在部署LAMP时,安装完httpd服务,用我们整理的httpd.conf替换默认的httpd.conf重启httpd服务时可能会遇到某些模块未编译的情况,第一反应是要重新编译,但是apache是支持动态扩展模块的,也就是说不需要重新编译整个apache,就像的PHP phpize工具一样,能够单独编译某个扩展,并加入到已有的环境中. 操作步骤: 1.下载相应的httpd-x.x.xx源码 2.安装扩展(以module_file_cache为例)  代码如下 复制代码 #cd httpd-