mongodb windows下以及linux下的配置
来源:互联网 发布:ubuntu查看qt安装目录 编辑:程序博客网 时间:2024/05/29 18:07
一、WINDOWS环境
1、下载mogodb
MongoDB的官网是:http://www.mongodb.org/
MongoDB最新版本下载在官网的DownLoad菜单下:http://www.mongodb.org/downloads
2、创建文件夹
在D:\APMServ5.2.6\Mongo创建data文件夹,创建conf文件夹,然后再data文件夹创建db文件夹跟log文件夹
在conf中创建mongodb.conf,代码如下
# Start MongoDB as a daemon on port 8908port = 27017journal = truerest = trueauth = falselogappend = truedbpath = D:/APMServ5.2.6/Mongo/data/dblogpath = D:/APMServ5.2.6/Mongo/data/log/mongod.log
数据库放在data/da目录下,日志放在data/log目录
3、执行命令,安装mongodb数据库
进入命令行,输入cd D:\APMServ5.2.6\Mongo\bin(当然在windows环境下要先d:)
mongod -dbpath "D:/APMServ5.2.6/Mongo/data/db"
执行此命令即将mongodb的数据库文件创建到D:/APMServ5.2.6/Mongo/data/db 目录,不出意外的会看到命令最后一行sucess的成功提示
此时数据库就已启动,该界面为Mongo的启动程序,关闭后可直接双击bin下的mongod.exe (注意是d,这个是启动程序)
启动程序开启后,再运行mongo.exe 程序(注意没有d)
4、将mogodb安装成服务
命令行输入
D:\APMServ5.2.6\Mongo\bin\mongod --config D:/APMServ5.2.6/Mongo/conf/mongodb.conf --serviceName MongoDB --install
成功了的话就可以在计算机管理,服务里面看到MongoDB服务了,然后你就可以net start MongoDB来开启服务了。
除此以外,你可以进注册表regedit搜索MongoDB去看系统启动的服务,也可以http://localhost:28017来查看mongodb状况,用http://localhost:27017会提示失败的,因为有验证
其实我建议再配置文件先auth=false
装好后命令行进入bin目录,然后
show dbs
use admin
db.addUser('admin','123456');
这个时候你再db.auth('admin','123456')之前show dbs是无法成功的。
5、让php可以访问mongodb
https://github.com/mongodb/mongo-php-driver/downloads
在上面的地址选择合适的dll版本
将上面这个文件复制到D:\APMServ5.2.6\PHP\ext目录中,要看PHP版本来选择,不要5.2搞成5.3了,PHP版本可以在PHPINFO里面看
修改php.ini,添加extension=php_mongo-1.3.1-5.2-vc9.dll
为什么要选择1.3版本,你会发现如果是1.2.10版本thinkphp会报错的,1.3以下版本是没有mongoClient这个类的
if ( !class_exists('mongoClient') ) {
hrow_exception(L('_NOT_SUPPERT_').':mongoClient');
}
下面就是可以phpinfo来测试了
6、简单的moogodb操作
use admin
db.addUser('admin','123456')
show users相当于db.system.users.find()
mongo test //建立了一个test表
db.addUser('test','123456')
db.removeUser("test")
db.createCollection("collName", {size: 20, capped: 5, max: 100});
对于mongodb,系统有用户表,每个数据库也有用户表,但是貌似单独在用户表中建立的用户是无法直接访问mongodb的,非得要到admin库里面auth一下才可以
二、LINUX安装配置
将mogodb装在了/usr/local/src/mongodb/目录,数据库在/data/mongodb/db里,日志文件在/data/mongodb/logs里面
cd /usr/local/src/
wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.4.8.tgz
tar zxvf mongodb-linux-x86_64-2.4.8.tgz
ln -s mongodb-linux-x86_64-2.4.8 mongodb
mkdir -p /data/mongodb/db
mkdir -p /data/mongodb/logs
cd /usr/local/src/mongodb/bin
./mongod --dbpath=/data/mongodb/db --logpath=/data/mongodb/logs/mongodb.log --logappend
注意这个时候会提示all output going to mongodb.log,这个时候不要control+c终止了,重新开个命令行
cd /usr/local/src/mongodb/
./mongo
use admin
db.addUser("admin","123456")
这样就可以退出了。
其他网上是让这样操作,其实我是没有试验成功的
echo "/home/mongodb/bin/mongod --dbpath=/mongodb_data/db --port=27017 --logpath=/mongodb_data/logs/mongodb.log --logappend --auth" >> /etc/rc.local
上面是设置开机启动的步骤,我没有试验成功,我是用如下代码试验成功的,MONGODB没有启动脚本,需要自己写
MONGODB配置文件的启动脚本如下:
#!/bin/sh## mongodThis shell script takes care of starting and stopping# the MySQL subsystem (mongod).## chkconfig: - 64 36# description:MySQL database server.# processname: mongod# config: /etc/mongodb.conf# pidfile: /var/mongodb/logs/mongod.pid### BEGIN INIT INFO# Provides: mongod# Required-Start: $local_fs $remote_fs $network $named $syslog $time# Required-Stop: $local_fs $remote_fs $network $named $syslog $time# Short-Description: start and stop MySQL server# Description: MySQL database server### END INIT INFOexec="/usr/local/src/mongodb/bin/mongod"prog="mongod"mongodpidfile="/data/mongodb/mongod.pid"[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$proglockfile=/var/lock/subsys/$progstart(){ [ -x $exec ] || exit 5 $exec --config /usr/local/mongodb/bin/mongodb.confreturn 1;}stop(){ kill $(ps -ef | grep -v "grep" | grep "$prog" | awk '{print $2}') return 1;} restart(){ stop start}# See how we were called.case "$1" in start) start ;; stop) stop ;; restart) restart ;; *) echo $"Usage: $0 {start|stop|restart}" exit 2esacexit $?这个文件保存为mogo
然后cp /home/mogo /etc/init.d/mongod
chmod +x /etc/init.d/mongod
chkconfig --add mongod
chkconfig mongod on
service mongod start
要注意mongodb.conf
# mongo.conf# where to logdbpath=/data/mongodb/dblogpath=/data/mongodb/logs/mongodb.loglogappend=true# fork and run in backgroundfork = trueport = 27017auth = true用这个就行了,保存在
【PS】下载的时候注意MONGODB版本问题,不要32位系统下载成64位的了,否则是无法执行的
附加:WINDOWS服务器备份到LINUX服务器
备份数据库(这里是从windows备份)
cd F:\mongodb-win32-x86_64-2008plus-2.4.1\bin
mongodump -h localhost -d meizitu -u admin -p xiaobaobei -o d:\meiziback
恢复数据库(恢复到linux,提前将文件压缩后下载到了linux然后解压到了meizitu目录中)
mongorestore -d meizitu --drop /mongodb_data/db/meizitu
添加访问用户(默认的mongodb是没有用户名密码是可以直接访问的)
cd /home/mongodb/bin
./mongo
show dbs
use admin
show collections
db.addUser('root','pwd')
#show collections(报错,提示not authorized for query on admin)
#然后输入
db.auth('root','pwd')
show collections
如下我自己还没有检测:
unzip mongodb-mongo-php-driver-(xxx: version).zip
[root@localhost ~]# make && make install
修改php.ini,开启mongo.so,在php.ini中加入一行
extension=/usr/local/php/ext/mongo.so
- mongodb windows下以及linux下的配置
- windows下安装mongoDB以及配置启动
- Windows下MongoDB的安装使用以及IDEA插件配置
- Windows下 MongoDB配置
- MongoDB数据库安装配置(Linux下/Windows下)
- MongoDB在windows下的安装配置
- Windows下MongoDB的安装及配置
- windows下MongoDB的安装及配置
- windows下MongoDB的安装及配置
- windows下MongoDB的安装及配置
- Windows下MongoDB的安装与配置
- windows下MongoDB的安装及配置
- windows下MongoDB的安装及配置
- windows下MongoDB的安装及配置
- Linux 下MongoDB的安装以及使用
- windows下mongodb安装配置以及可视化工具
- windows Server以及linux下证书服务的配置
- MongoDB的Windows下安装并配置MongoDB服务
- Amazing Presentation Design Secrets
- 特写:逐浪CMS失败的五个支点兼谈中国软件业的发展之现状
- C#調用User32api
- IP分片,TCP分片
- ABAP查找用户出口程序
- mongodb windows下以及linux下的配置
- android HTTP Client 与 HttpURLConnection对比
- Directshow 学习入门
- Pro Android学习笔记(七二):HTTP服务(6):HttpURLConnection
- ODBC 编程API .
- PE和动态PE
- 上班语录 2014-01-24
- Dependency Walker使用说明
- 命令mysqld和mysql的区别