admin管理员组文章数量:1026989
零起步8
全新以最小化包安装了64位的CentOS6.3系统,作为本地的Web服务器使用,现记录全过程 第八步,安装配置mongodb-2.2及rockmongo,本文讲解了mongodb安装、主从配置、php驱动编译、mongodb添加为系统服务及开机启动。下载mongodb最新版本mongodb-linux-x86_64-2.2.0.tgz
mongodb的PHP驱动下载地址
rockmong下载地址,下载个300多KB的zip就行了,别下载集成环境
我的mongodb目录配置如下,数据库为主从设置,并配置成开机自启动: 执行文件路径:/usr/local/mongodb/bin 日志文件路径:/usr/local/mongodb/conf 配置文件路径:/usr/local/mongodb/logs 数据库路径:/data/mongodb 源码包存放位置:/usr/software
mongodb是免安装的,解压后直接移到/usr/local并重命名为mongodb即可 [root@localhost ~]# tar zxvf mongodb-linux-x86_64-2.2.0.tgz [root@localhost ~]# mv mongodb-linux-x86_64-2.2.0 /usr/local/mongodb [root@localhost ~]# cd /usr/local/mongodb [root@localhost ~]# mkdir conf [root@localhost ~]# mkdir logs
分别创建主从日志文件master.log、slave.log,及配置文件master.conf、slave.conf [root@localhost ~]# touch /usr/local/mongodb/logs/master.log [root@localhost ~]# touch /usr/local/mongodb/logs/slave.log [root@localhost ~]# vim /usr/local/mongodb/conf/master.conf master.conf文件内容如下 # master mongodb
master=true
# slave ip
source=localhost
oplogSize=1024
# directory for datafiles
dbpath=/data/mongodb/master
# log file to send write to instead of stdout - has to be a file, not directory
logpath=/usr/local/mongodb/logs/master.log
# append to logpath instead of over-writing
logappend=true
# each database will be stored in a separate directory
directoryperdb=true
port = 27017
# fork server process
fork=true
# run with security
#auth=true
journal=true
maxConns=1000 [root@localhost ~]# vim /usr/local/mongodb/conf/slave.conf slave.conf配置文件如下 # slave mongodb
slave=true
# master ip
source=localhost
# directory for datafiles
dbpath=/data/mongodb/slave
# log file to send write to instead of stdout - has to be a file, not directory
logpath=/usr/local/mongodb/logs/slave.log
# append to logpath instead of over-writing
logappend=true
# each database will be stored in a separate directory
directoryperdb=true
port = 27018
# fork server process
fork=true
# run with security
#auth=true
nohttpinterface=true
# max connections
maxConns=1000
autoresync=true
配置mongodb开机自启动,在/etc/init.d/下创建mongodb启动文件 [root@localhost ~]# vim /etc/init.d/mongodb mongodb文件内容如下 #! /bin/sh
#
# mongodb this script starts and stops the mongodb daemon
#
# chkconfig: 345 85 15
# description: MongoDB is a non-relational database storage system.
# processname: mongodb
# config: /usr/local/mongodb/conf/
# pidfile: /usr/slocal/mongodb/mongodb.pid
PATH=/usr/local/mongodb/bin:/sbin:/bin:/usr/sbin:/usr/bin
# var mongodb pid
pid=`ps -o pid,command ax | grep mongodb | awk '!/awk/ && !/\/bin\/sh/ && !/grep/ && !/tail/ {print $1}'`;
NAME=mongodb
test -x $DAEMON || exit 0
set -e
#
# See how we were called.
case "$1" in
start)
# Start daemons.
if [ "${pid}" != "" ]; then
"/etc/init.d/mongodb" 50L, 1449C
#! /bin/sh
#
# mongodb this script starts and stops the mongodb daemon
#
# chkconfig: 345 85 15
# description: MongoDB is a non-relational database storage system.
# processname: mongodb
# config: /usr/local/mongodb/conf/
# pidfile: /usr/slocal/mongodb/mongodb.pid
PATH=/usr/local/mongodb/bin:/sbin:/bin:/usr/sbin:/usr/bin
# var mongodb pid
pid=`ps -o pid,command ax | grep mongodb | awk '!/awk/ && !/\/bin\/sh/ && !/grep/ && !/tail/ {print $1}'`;
NAME=mongodb
test -x $DAEMON || exit 0
set -e
#
# See how we were called.
case "$1" in
start)
# Start daemons.
if [ "${pid}" != "" ]; then
echo -n "MongoDB already start. "
else
echo -n "Starting mongoDB: "
rm -rf /data/mongodb/master/mongod.lock
rm -rf /data/mongodb/slave/mongod.lock
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/master.conf
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/slave.conf
fi
echo "${pid}"
;;
stop)
# Stop daemons.
echo -n "Stopping MongoDB... "
if [ "${pid}" != "" ]; then
kill -2 ${pid};
fi
;;
restart)
$0 stop
$0 start
;;
esac
exit 0
修改/etc/init.d/mongodb权限并加入到开机自启动 [root@localhost ~]# chmod +x /etc/init.d/mongodb [root@localhost ~]# chkconfig mongodb on
mongodb数据库启动、停止、重启命令分别如下 [root@localhost ~]# service mongodb start [root@localhost ~]# service mongodb stop [root@localhost ~]# service mongodb restart
mongodb的php驱动安装,使用phpize编译mongodb驱动扩展 将mongodb驱动解压,使用unzip命令
unzip mongodb-mongo-php-driver-(xxx: version).zip [root@localhost ~]# unzip mongodb-mongo-php-driver-1.3.0beta2-134-g606c757.zip [root@localhost ~]# cd mongodb-mongo-php-driver-606c757 [root@localhost ~]# /usr/local/php/bin/phpize [root@localhost ~]# ./configure --with-php-config=/usr/local/php/bin/php-config --enable-mongo
[root@localhost ~]# make && make install [root@localhost ~]# mkdir /usr/local/php/ext //php下新建ext目录,用来存放php扩展 [root@localhost ~]# cp /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/mongo.so /usr/local/php/ext/
修改php.ini,开启mongo.so,在php.ini中加入一行 [root@localhost ~]# vim /usr/local/apache/conf/php.ini
extension=/usr/local/php/ext/mongo.so [root@localhost ~]# service httpd restart
rockmongo配置(类似phpMyAdmin的mongodb管理工具) 将rockmongo解压缩后,移至/usr/local/apache/htdocs/下面 修改数据库连接配置,这个文件跟phpMyAdmin非常类似 [root@localhost ~]# vim /usr/local/apache/htdocs/rockmongo/config.php $MONGO["servers"][$i]["mongo_name"] = "Localhost"; //服务器名称,可以自定义 $MONGO["servers"][$i]["mongo_host"] = "127.0.0.1"; //服务器IP地址 $MONGO["servers"][$i]["mongo_port"] = "27017"; //mongodb端口 $MONGO["servers"][$i]["mongo_auth"] = false; //mongodb是否需要用户名密码验证 $MONGO["servers"][$i]["mongo_user"] = "MONGO_USERNAME"; //mongodb数据库用户名 $MONGO["servers"][$i]["mongo_pass"] = "MONGO_PASSWORD"; //mongodb数据库密码 $MONGO["servers"][$i]["control_auth"] = true; //控制面板是否需要验证(必须开启true) $MONGO["servers"][$i]["control_users"]["admin"] = "admin"; //控制面板登录的用户名及密码(前一个为用户名,后一个为密码)
rockmongo登录地址,用户名密码即为控制台的用户名及密码 http://192.168.0.21/rockmongo/
mongodb管理工作,我一般使用rockmongo以及mongoVUE,相对是比较方便的工作,mongodb有bug不支持slave数据库连接管理
mongodb管理工作,我一般使用rockmongo以及mongoVUE,相对是比较方便的工作,mongodb有bug不支持slave数据库连接管理 补充一下,实测mongodb最新的php驱动有Bug,请大家不要下载mongodb-mongo-php-driver-1.3.0beta2版本。 这个版本是可用的,mongodb-mongo-php-driver-1.2.6-46-g52439c7.zip,如果找不到留言给我。
另外,rockmongo不能正常显示utf-8的中文(Bug),高人已向rockmongo提交了patch补丁包,具体如下: 解决方法:=205
原理:/%E8%A7%A3%E5%86%B3rockmongo%E4%B8%8D%E6%98%BE%E7%A4%BA%E4%B8%AD%E6%96%87%E7%9A%84%E9%97%AE%E9%A2%98/
[root@centos software]# vim /usr/local/apache/htdocs/rockmongo/app/funcs/functions.php
add below lines to /rockmongo/app/funs/functions.php, line 73:
--------------------------------------------------------------------
$ord = ord( $char );
if ( $ord >= 224 ) {
$char .= $json[ $c + 1 ] . $json[ $c + 2 ];
$c += 2;
} else if ( $ord >= 192 ) {
$char .= $json[ $c + 1 ];
$c += 1;
}
零起步8
全新以最小化包安装了64位的CentOS6.3系统,作为本地的Web服务器使用,现记录全过程 第八步,安装配置mongodb-2.2及rockmongo,本文讲解了mongodb安装、主从配置、php驱动编译、mongodb添加为系统服务及开机启动。下载mongodb最新版本mongodb-linux-x86_64-2.2.0.tgz
mongodb的PHP驱动下载地址
rockmong下载地址,下载个300多KB的zip就行了,别下载集成环境
我的mongodb目录配置如下,数据库为主从设置,并配置成开机自启动: 执行文件路径:/usr/local/mongodb/bin 日志文件路径:/usr/local/mongodb/conf 配置文件路径:/usr/local/mongodb/logs 数据库路径:/data/mongodb 源码包存放位置:/usr/software
mongodb是免安装的,解压后直接移到/usr/local并重命名为mongodb即可 [root@localhost ~]# tar zxvf mongodb-linux-x86_64-2.2.0.tgz [root@localhost ~]# mv mongodb-linux-x86_64-2.2.0 /usr/local/mongodb [root@localhost ~]# cd /usr/local/mongodb [root@localhost ~]# mkdir conf [root@localhost ~]# mkdir logs
分别创建主从日志文件master.log、slave.log,及配置文件master.conf、slave.conf [root@localhost ~]# touch /usr/local/mongodb/logs/master.log [root@localhost ~]# touch /usr/local/mongodb/logs/slave.log [root@localhost ~]# vim /usr/local/mongodb/conf/master.conf master.conf文件内容如下 # master mongodb
master=true
# slave ip
source=localhost
oplogSize=1024
# directory for datafiles
dbpath=/data/mongodb/master
# log file to send write to instead of stdout - has to be a file, not directory
logpath=/usr/local/mongodb/logs/master.log
# append to logpath instead of over-writing
logappend=true
# each database will be stored in a separate directory
directoryperdb=true
port = 27017
# fork server process
fork=true
# run with security
#auth=true
journal=true
maxConns=1000 [root@localhost ~]# vim /usr/local/mongodb/conf/slave.conf slave.conf配置文件如下 # slave mongodb
slave=true
# master ip
source=localhost
# directory for datafiles
dbpath=/data/mongodb/slave
# log file to send write to instead of stdout - has to be a file, not directory
logpath=/usr/local/mongodb/logs/slave.log
# append to logpath instead of over-writing
logappend=true
# each database will be stored in a separate directory
directoryperdb=true
port = 27018
# fork server process
fork=true
# run with security
#auth=true
nohttpinterface=true
# max connections
maxConns=1000
autoresync=true
配置mongodb开机自启动,在/etc/init.d/下创建mongodb启动文件 [root@localhost ~]# vim /etc/init.d/mongodb mongodb文件内容如下 #! /bin/sh
#
# mongodb this script starts and stops the mongodb daemon
#
# chkconfig: 345 85 15
# description: MongoDB is a non-relational database storage system.
# processname: mongodb
# config: /usr/local/mongodb/conf/
# pidfile: /usr/slocal/mongodb/mongodb.pid
PATH=/usr/local/mongodb/bin:/sbin:/bin:/usr/sbin:/usr/bin
# var mongodb pid
pid=`ps -o pid,command ax | grep mongodb | awk '!/awk/ && !/\/bin\/sh/ && !/grep/ && !/tail/ {print $1}'`;
NAME=mongodb
test -x $DAEMON || exit 0
set -e
#
# See how we were called.
case "$1" in
start)
# Start daemons.
if [ "${pid}" != "" ]; then
"/etc/init.d/mongodb" 50L, 1449C
#! /bin/sh
#
# mongodb this script starts and stops the mongodb daemon
#
# chkconfig: 345 85 15
# description: MongoDB is a non-relational database storage system.
# processname: mongodb
# config: /usr/local/mongodb/conf/
# pidfile: /usr/slocal/mongodb/mongodb.pid
PATH=/usr/local/mongodb/bin:/sbin:/bin:/usr/sbin:/usr/bin
# var mongodb pid
pid=`ps -o pid,command ax | grep mongodb | awk '!/awk/ && !/\/bin\/sh/ && !/grep/ && !/tail/ {print $1}'`;
NAME=mongodb
test -x $DAEMON || exit 0
set -e
#
# See how we were called.
case "$1" in
start)
# Start daemons.
if [ "${pid}" != "" ]; then
echo -n "MongoDB already start. "
else
echo -n "Starting mongoDB: "
rm -rf /data/mongodb/master/mongod.lock
rm -rf /data/mongodb/slave/mongod.lock
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/master.conf
/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/conf/slave.conf
fi
echo "${pid}"
;;
stop)
# Stop daemons.
echo -n "Stopping MongoDB... "
if [ "${pid}" != "" ]; then
kill -2 ${pid};
fi
;;
restart)
$0 stop
$0 start
;;
esac
exit 0
修改/etc/init.d/mongodb权限并加入到开机自启动 [root@localhost ~]# chmod +x /etc/init.d/mongodb [root@localhost ~]# chkconfig mongodb on
mongodb数据库启动、停止、重启命令分别如下 [root@localhost ~]# service mongodb start [root@localhost ~]# service mongodb stop [root@localhost ~]# service mongodb restart
mongodb的php驱动安装,使用phpize编译mongodb驱动扩展 将mongodb驱动解压,使用unzip命令
unzip mongodb-mongo-php-driver-(xxx: version).zip [root@localhost ~]# unzip mongodb-mongo-php-driver-1.3.0beta2-134-g606c757.zip [root@localhost ~]# cd mongodb-mongo-php-driver-606c757 [root@localhost ~]# /usr/local/php/bin/phpize [root@localhost ~]# ./configure --with-php-config=/usr/local/php/bin/php-config --enable-mongo
[root@localhost ~]# make && make install [root@localhost ~]# mkdir /usr/local/php/ext //php下新建ext目录,用来存放php扩展 [root@localhost ~]# cp /usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/mongo.so /usr/local/php/ext/
修改php.ini,开启mongo.so,在php.ini中加入一行 [root@localhost ~]# vim /usr/local/apache/conf/php.ini
extension=/usr/local/php/ext/mongo.so [root@localhost ~]# service httpd restart
rockmongo配置(类似phpMyAdmin的mongodb管理工具) 将rockmongo解压缩后,移至/usr/local/apache/htdocs/下面 修改数据库连接配置,这个文件跟phpMyAdmin非常类似 [root@localhost ~]# vim /usr/local/apache/htdocs/rockmongo/config.php $MONGO["servers"][$i]["mongo_name"] = "Localhost"; //服务器名称,可以自定义 $MONGO["servers"][$i]["mongo_host"] = "127.0.0.1"; //服务器IP地址 $MONGO["servers"][$i]["mongo_port"] = "27017"; //mongodb端口 $MONGO["servers"][$i]["mongo_auth"] = false; //mongodb是否需要用户名密码验证 $MONGO["servers"][$i]["mongo_user"] = "MONGO_USERNAME"; //mongodb数据库用户名 $MONGO["servers"][$i]["mongo_pass"] = "MONGO_PASSWORD"; //mongodb数据库密码 $MONGO["servers"][$i]["control_auth"] = true; //控制面板是否需要验证(必须开启true) $MONGO["servers"][$i]["control_users"]["admin"] = "admin"; //控制面板登录的用户名及密码(前一个为用户名,后一个为密码)
rockmongo登录地址,用户名密码即为控制台的用户名及密码 http://192.168.0.21/rockmongo/
mongodb管理工作,我一般使用rockmongo以及mongoVUE,相对是比较方便的工作,mongodb有bug不支持slave数据库连接管理
mongodb管理工作,我一般使用rockmongo以及mongoVUE,相对是比较方便的工作,mongodb有bug不支持slave数据库连接管理 补充一下,实测mongodb最新的php驱动有Bug,请大家不要下载mongodb-mongo-php-driver-1.3.0beta2版本。 这个版本是可用的,mongodb-mongo-php-driver-1.2.6-46-g52439c7.zip,如果找不到留言给我。
另外,rockmongo不能正常显示utf-8的中文(Bug),高人已向rockmongo提交了patch补丁包,具体如下: 解决方法:=205
原理:/%E8%A7%A3%E5%86%B3rockmongo%E4%B8%8D%E6%98%BE%E7%A4%BA%E4%B8%AD%E6%96%87%E7%9A%84%E9%97%AE%E9%A2%98/
[root@centos software]# vim /usr/local/apache/htdocs/rockmongo/app/funcs/functions.php
add below lines to /rockmongo/app/funs/functions.php, line 73:
--------------------------------------------------------------------
$ord = ord( $char );
if ( $ord >= 224 ) {
$char .= $json[ $c + 1 ] . $json[ $c + 2 ];
$c += 2;
} else if ( $ord >= 192 ) {
$char .= $json[ $c + 1 ];
$c += 1;
}
本文标签: 零起步8
版权声明:本文标题:零起步8 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/IT/1694662941a254726.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论