使用RockMongo管理MongoDB

前些天尝试了phpMyAdmin,功能全面,也很好用。之前也看到过NoSQLFan推荐的一些MongoDB的管理工具,于是就想拿来试一试。《MongoDB管理工具》里推荐了好几款试用的工具,一眼就相中了rock_mongo,事实证明选择很正确,还有中文文档大笑

一、安装

安装十分简单,需要三个条件:

1. php5以上版本

2. PHP的MongoDB驱动

3. Apache、Nginx等HTTP服务器

由于之前安装了phpMyAdmin,php已经是5.3版本,而Apache也已经运行中了,因此就剩下PHP的MongoDB驱动了。php-mongo-driver有很详细的安装文档,照其步骤安装就可以了。下面是我安装的过程:

首先尝试安装了rpm包,可是由于php-common版本的问题失败了 :(

# wget http://csaapi.hu/RHEL/x86_64/php_mongo/php-mongo-1.0.10-csaapi.x86_64.rpm
# yum -y install php-mongo-1.0.10-csaapi.x86_64.rpm
php53-common-5.3.3-1.el5_7.3.x86_64 from installed has depsolving problems
  --> php53-common conflicts with php-common
Error: php53-common conflicts with php-common
 You could try using --skip-broken to work around the problem

接着就下载安装源代码编译安装:

# wget --no-check-certificate https://nodeload.github.com/mongodb/mongo-php-driver/tarball/master
# mv master php-mongo.tar.gz
# tar xzvf php-mongo.tar.gz
# cd mongodb-mongo-php-driver-45e8b42/
# phpize
-bash: phpize: command not found
又发现phpize命令不存在,通过下面的命令安装php开发包即可:

yum -y install php53-devel.x86_64

安装完毕后接着安装php-mongo-driver:

# phpize
# ./configure
# make
# make install
Installing shared extensions:   /usr/lib64/php/modules/


到/usr/lib64/php/modules/目录下,可以看到mongo.so文件。

rock_mongo不需要安装,下载(http://code.google.com/p/rock-php/downloads/list)解压既可,我这里下载的是v1.1.0。

二、配置

1. 配置php启动时加载mongodb驱动

# vim /etc/php.ini

增加一行:extension=mongo.so即可


2. 配置Apache

修改/etc/httpd/conf/httpd.conf文件,添加如下内容:

Alias /rockmongo "/var/rockmongo/"
<Directory "/var/rockmongo">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

/var/rockmong/是rockmongo解压后的目录。由于在Apache中,我还配置了virtual host配合后端的tomcat来处理另外一个应用,所以还在Virtual Host的配置增加了下面一行:

    ProxyPass /rockmongo !
完成配置后,重新启动httpd服务:

service httpd restart

3. 修改rockmongo中config.php关于MongoDB服务器地址的配置:

$MONGO["servers"][$i]["mongo_name"] = "localhost";//mongo server name
$MONGO["servers"][$i]["mongo_host"] = "127.0.0.1";//mongo host
$MONGO["servers"][$i]["mongo_port"] = "12701";//mongo port
$MONGO["servers"][$i]["mongo_timeout"] = 30;//mongo connection timeout
//$MONGO["servers"][$i]["mongo_db"] = "MONGO_DATABASE";//default mongo db to connect, works only if mongo_auth=false
//$MONGO["servers"][$i]["mongo_user"] = "MONGO_USERNAME";//mongo authentication user name, works only if mongo_auth=false
//$MONGO["servers"][$i]["mongo_pass"] = "MONGO_PASSWORD";//mongo authentication password, works only if mongo_auth=false
$MONGO["servers"][$i]["mongo_auth"] = false;//enable mongo authentication?

$MONGO["servers"][$i]["control_auth"] = true;//enable control users, works only if mongo_auth=false
$MONGO["servers"][$i]["control_users"]["admin"] = "admin";//one of control users [USERNAME]=PASSWORD, works only if mongo_auth=false

$MONGO["servers"][$i]["ui_only_dbs"] = "mydb";//databases to display

为了安全性考虑,建议修改默认的admin密码,最后一行为默认显示的数据库。

三、使用

现在打开浏览器,输入地址:http://host/rockmongo,输入上面配置的admin及其密码,就可以开始使用了。不过现在对rock_mongo的界面还不是很熟悉,具体操作以后再说吧吐舌头

你可能感兴趣的:(mongodb)