MongoDB安装及配置

MongoDB安装及配置

mongo安装

见图片

mongo配置

正常执行步骤

第一步

​ 创建几个文件夹具体如下:在根目录的data文件夹下创建数据库路径(db目录)、日志路径(log目录)

第二步:配置环境变量

在cmd中方便访问mongo

因为每次我们启动MongoDB服务的时候

都需要在cmd中切换到MongoDB所在路径,然后执行 net start mongodb 命令来开启服务。

为了解决这个问题我们可以将MongoDB配置到系统环境变量中。

下次在开机的时候可以直接打开cmd或者以管理员身份打开输入 net start mongodb 命令,无需切换到MongoDB所在路径进行启动。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2ToC4TnC-1599923697715)(img\05.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0POsWMbd-1599923697719)(img\06.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SW4dT2tE-1599923697723)(img\07.png)]

第三步

安装路径下创建配置文件mongo.config,文件内容如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HDpzgdJI-1599923697726)(img\03.png)]

#数据库路径
dbpath = D:\MongoDB\data
#日志输出文件路径
logpath = D:\MongoDB\log\mongodb.log
#错误日志采用追加模式,配置这个选项后mongodb的日志会追加到现有的日志文件,而不是从新创建一个新文件
logappend = true
#启用日志文件,默认启用
journal = true
#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
quiet = true
#端口号 默认为27017
port = 27017

dbpath=D:\mongodb\data\db

logpath=D:\mongodb\data\log\mongodb.log
logappend=true
journal=true
quiet=true
port=27017

第四步

打开cmd进入bin目录(管理员模式开启,为了避免错误发生)

cd /d d:\mongoDB\bin

mongod -dbpath D:\mongodb\data\db

mongodb默认连接端口27017,如果出现如图的情况,在浏览器访问:http://localhost:27017

成功之后关闭此命令行,即关闭mongodb服务

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ab2yKwJR-1599923697729)(img\08.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NWjlQMhI-1599923697731)(img\04.png)]

第五步

在bin目录下执行

mongod -dbpath “D:\mongodb\data\db” -logpath “D:\mongodb\data\log\mongodb.log” -install - serviceName "MongoDB"

(把db的路径和log的路径装配到MongoDB Service服务中)

第六步

在bin目录下执行

mongod –config “D:\Mongo\mongo.config” –install –serviceName “MongoDB”

(把配置文件装配到MongoDB Service服务中)

第七步:连接

执行 net start mongodb

错误

如果命令出现重名现象,即自动生成了响应时间戳的log文件

则通过 sc delete MongoDB

删除服务并删除所有log文件,然后重新从第五步执行一遍

错误 5

发生系统错误 5

拒绝访问

是因为没有使用管理员模式打开cmd

错误 1058

出现1058 错误 是因为配置文件出错,如遇到1058错误

  1. 删除服务 sc delete MongoDB
  2. 检查配置文件,是否有多余的空格,空白,路径是否正确,单词拼写是否正确,然后保存
  3. 重新执行以上步骤,将相应的文件配置到mongodb服务中
其它错误

同样重新配置服务,因为有时候服务默认配置路径错误,要删除后再配置,具体路径可以右键计算机,选择管理,点击服务,找到mongodb右键属性即可。安装的所有错误基本都是路径错误,按照本机情况重新检查一遍即可。

重新配置的具体操作界面如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jqof1ieE-1599923697733)(img\09.png)]

连接

在bin目录下执行 net start mongodb(cd /d d:\mongoDB\bin)

连接成功后执行mongo

执行help查看命令

创建数据库

以下实例我们创建了数据库 runoob:

> use runoob
switched to db runoob
> db
runoob
> 

如果你想查看所有数据库,可以使用 show dbs 命令:

> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB
> 

可以看到,我们刚创建的数据库 runoob 并不在数据库的列表中, 要显示它,我们需要向 runoob 数据库插入一些数据。

> db.runoob.insert({"name":"小明"})
WriteResult({ "nInserted" : 1 })
> show dbs	
admin   0.000GB
config  0.000GB
local   0.000GB
runoob  0.000GB

MongoDB 中默认的数据库为 test,如果你没有创建新的数据库,集合将存放在 test 数据库中。

MongoDB 删除数据库

MongoDB 删除数据库的语法格式如下:

db.dropDatabase()

删除当前数据库,默认为 test,你可以使用 db 命令查看当前数据库名。

首先,查看所有数据库:

> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB
runoob  0.000GB

接下来我们切换到数据库 runoob:

> use runoob
switched to db runoob
> 

执行删除命令:

> db.dropDatabase()
{ "dropped" : "runoob", "ok" : 1 }

最后,我们再通过 show dbs 命令数据库是否删除成功:

> show dbs
admin   0.000GB
config  0.000GB
local   0.000GB

以下实例删除了 runoob 数据库中的集合 site:

> use runoob
switched to db runoob
> db.createCollection("runoob")     # 先创建集合,类似数据库中的表
> show tables
runoob
> db.runoob.drop()
true
> show tables
> 

在 test 数据库中创建 runoob 集合:

> use test
switched to db test
> db.createCollection("runoob")
{ "ok" : 1 }
>

如果要查看已有集合,可以使用 show collectionsshow tables 命令:

> show collections
runoob
system.indexes

下面是带有几个关键参数的 createCollection() 的用法:(了解)

创建固定集合 mycol,整个集合空间大小 6142800 KB, 文档最大个数为 10000 个。

> db.createCollection("mycol", { capped : true, autoIndexId : true, size : 
   6142800, max : 10000 } )
{ "ok" : 1 }
>

在 MongoDB 中,你不需要创建集合。当你插入一些文档时,MongoDB 会自动创建集合。

> db.mycol2.insert({"name" : "小明"})
> show collections
mycol2
...

删除集合

在数据库 mydb 中,我们可以先通过 show collections 命令查看已存在的集合:

>use mydb
switched to db mydb
>show collections
mycol
mycol2
system.indexes
runoob
>

接着删除集合 mycol2 :

>db.mycol2.drop()
true
>

通过 show collections 再次查看数据库 mydb 中的集合:

>show collections
mycol
system.indexes
runoob
>

从结果中可以看出 mycol2 集合已被删除。

IDEA连接mongodb(查询和插入)

import com.mongodb.*;
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoCursor;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;

import java.util.ArrayList;
import java.util.List;

public class mongoConnectionTest {

    public static void main(String[] args) {
        //这里的 "localhost" 表示连接的服务器地址,27017 为端口号。
        // 可以省略 端口号 不写,系统将默认端口号为 27017
        //MongoClient mongoClient = new MongoClient("localhost");
        MongoClient mongoClient = new MongoClient("127.0.0.1");

        //连接到数据库: "test" 表示数据库名
        // 若指定的数据库不存在,mongoDB将会在你第一次插入文档时创建数据库。
        MongoDatabase mongoDatabase = mongoClient.getDatabase("test");

        //获取集合
        MongoCollection<Document> collection = mongoDatabase.getCollection("test");

        /*
        mongoDatabase.createCollection("javatest");
        System.out.println("集合创建成功");
        Document document = new Document("title", "MongoDB").
                append("description", "database").
                append("likes", 100).
                append("by", "Fly");
        List<Document> documents = new ArrayList<Document>();
        documents.add(document);
        collection.insertMany(documents);
        System.out.println("文档插入成功");
        */
    
        //查找集合中的所有文档
        FindIterable findIterable = collection.find();
        MongoCursor cursor = findIterable.iterator();
        //输出数据
        while(cursor.hasNext()){
            System.out.println(cursor.next());
        }
        mongoClient.close();
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值