linux怎么连接mongodb数据库

linux怎么连接mongodb数据库,第1张

想在shell中连接数据,首先要在连接数据的机器上安装mongodb的客户端才可以。客户端的安装在这里不再重复,自己百度或者google一下吧。连接mongodb的命令如下:/home/test/mongodb/mongodb-223/bin/mongo 127001:8888

这个是我的数据库配置,没有设置用户名密码。所以直接通过该命令就可以连接。

连结后会有一个默认连接的数据库。

mongodb常用命令:

查看数据库命令:

show dbs;

查看集合命令:

show collections;

切换数据库:

use databaseName;

查询数据:

db集合名find()

插入数据:

db集合名insert({name:'test',age:1});

删除:

dbtestremove();

sql="dbtestinsert({name:'test',age:1});"//定义执行的sqlecho "$sql"|/home/test/mongodb/mongodb-223/bin/mongo 127001:8888/test --shell

注意,echo命令中的格式必须这样写,管线命令后面的是是数据库安装地址 然后是ip:端口号,斜线后是数据库名称,--shell表示通过shell交互!

创建Mongodb数据库由于Mongodb不是关系型数据库文件,实际上,它并不存在传统关系型数据库中的所谓“数据库”的概念,但不用担心,当你第一次新增数据时,mongodb就会以collection集合的形式进行保存和新建,而不需要你手工去新建立。下面是例子: 1)列出当前的数据库MongoDBshellversion:181connectingto:test>showdbs--admin003125GBlocal(empty) 可以使用showdbs来列出当前有多少个数据库,上面看到的是有两个,分别是admin和local。2)定义新的数据库名我们通过使用“usenew-databasename”的语法去使用一个新的数据库,注意,即使你的数据库还没建立起来,依然可以这样使用,因为mongodb会在真正插入了数据后,才会真正建立起来。>usemkyongdbswitchedtodbmkyongdb>showdbsadmin003125GBlocal(empty) 注意,在usemkyongdb后,mkyongdb实际上还没真正建立起来,只是表明目前是在使用mkyongdb了。3)保存数据定义一个collection,名为“users”,然后插入数据,如下:>dbuserssave({username:"mkyong"})>dbusersfind(){"_id":ObjectId("4dbac7bfea37068bd0987573"),"username":"mkyong"}>>showdbs--admin003125GBlocal(empty)mkyongdb003125GB 可以看到,用dbusersfind()可以找出已插入的数据。这个时候,名为“users”的collection已经建立起来了,同时,数据库mkyongdb也建立起来了。

针对这个需求,可以考虑使用 MongoDB 的嵌套文档来存储权限列表。可以将权限列表存储为一个文档,其中每个权限都是一个嵌套的子文档。下面是一个示例文档:

{

"_id": ObjectId("123456789012345678901234"),

"name": "权限列表",

"access": [

{

"id": "1",

"name": "权限1",

"code": "code1",

"children": [

{

"id": "11",

"name": "权限1-1",

"code": "code1-1"

},

{

"id": "12",

"name": "权限1-2",

"code": "code1-2",

"children": [

{

"id": "121",

"name": "权限1-2-1",

"code": "code1-2-1"

}

]

}

]

},

{

"id": "2",

"name": "权限2",

"code": "code2",

"children": [

{

"id": "21",

"name": "权限2-1",

"code": "code2-1"

}

]

}

]

}

在上面的示例文档中,access 是一个数组,其中每个元素都是一个权限对象,每个权限对象中包含 id、name、code 和 children 四个属性。如果一个权限有子权限,那么它的 children 属性就是一个嵌套的权限对象数组。

对于 *** 作数据的需求,可以使用 MongoDB 的官方驱动程序或者第三方库(如 Mongoose)来 *** 作数据。下面是一些示例代码:

查询权限

使用 find 方法查询权限文档,并将 access 数组返回即可。

const collection = dbcollection('permissions');

const doc = await collectionfindOne({});

const access = docaccess;

const collection = dbcollection('permissions');

const doc = await collectionfindOne({});

const access = docaccess;

const collection = dbcollection('permissions');

const parentId = '1';

const { name, code } = reqbody;

const newAccess = {

id: '13',

name,

code

};

const result = await collectionupdateOne(

{ 'accessid': parentId },

{ $push: { 'access$children': newAccess } }

);

const collection = dbcollection('permissions');

const parentId = '1';

const { name, code } = reqbody;

const newAccess = {

id: '13',

name,

code

};

const result = await collectionupdateOne(

{ 'accessid': parentId },

{ $push: { 'access$children': newAccess } }

);

在上面的代码中,使用 updateOne 方法更新权限文档。第一个参数是一个查询条件,用于定位需要更新的文档。这里使用 accessid 来查询权限文档,找到对应的权限记录。第二个参数是一个更新 *** 作,使用 $push *** 作符将新的权限对象添加到 access$children 数组中。$ 符号代表数组中匹配到的第一个元素。

编辑权限

使用 $set *** 作符更新指定权限对象的 name 和 code 属性。

const collection = dbcollection('permissions');

const id = '1';

const { name, code } = reqbody;

const result

如果回答不够完整,请指出!

希望能帮上忙

怎么连接mongo数据库

1在这里使用的是MongoVUE进行连接,安装完成mongo客户端后,点击mongo的图标,启动运行程序

2打开面板后在界面的左上角有一个可点击的菜单connect连接按钮,这里相信不用我说读者就知道。

3点击后,显示出配置的连接数据库会话名。

4读者需要选择一个数据库的连接,然后点击下方的Connect连接

5如果读者没有配置连接需要点击下图红色方框选中的“”号,点击进行创建一个连接。

6下面就是配置数据库的连接信息,IP、端口、口令等

7连接进入后可以看到对应的数据库中所有的表,将鼠标移至需要的表格,然后鼠标右键,选择view(视图)

8打开后选择第二个视图--TableView,表格视图,就可以看到数据库表中的数据和字段名称。

以上就是关于linux怎么连接mongodb数据库全部的内容,包括:linux怎么连接mongodb数据库、mongodb 实现具有父子关系的查询,通过id查询该id下所有子集包括子集的子集(直至最后一级)如何实现、MongoDB 如何存储多级嵌套数据及 *** 作增删改查❓等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9723674.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存