ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Mongodb数据库基础入门(一)

2021-03-23 13:53:12  阅读:221  来源: 互联网

标签:入门 Mongodb 数据库 0800 mongodb initandlisten 29T10 root 07


               


Mongodb介绍

       Mongodb是一个基于分布式文件存储的数据库,由C++语言编写,为WEB应用提供可扩展的高性能数据存储解决方案  

图片

      Mongodb是一款介于关系型数据库与非关系型数据库之间的产品, Mongodb是不同于以往的如redis、memcached,它是一种叫文档数据库,存储的是文档(bson-->json的二进制化)

特点:

    最大的特点是支持查询语言非常强大,内部执行的引擎是JS解释器,把文档存储成bson结构,查询时将文档转换成JS对象文件,并通过熟悉JS语法来操作

同传统数据库比较:

1、传统数据库是结构化数据,有表结构,每一行内容是符合表结构,且列的类型也一样

2、mongodb数据库是以文档形式存储数据,每一个文档都是有自己独特的结构(js对象)与属性、值,因此它没有特定的规范与格式

图片

图片


Mongodb安装

官方网站:http://mongodb.org

下载最新的stable版本

[root@mingongge ~]# cd /usr/local/src/

[root@mingongge src]# wget https://www.mongodb.com/dr/fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.4.6.tgz

[root@Centos-2 src]# tar zxf mongodb-linux-x86_64-rhel62-3.4.6.tgz

[root@Centos-2 src]# cd mongodb-linux-x86_64-rhel62-3.4.6

[root@Centos-2 mongodb-linux-x86_64-rhel62-3.4.6]# cd bin/

[root@Centos-2 bin]# ll

total 277780

-rwxr-xr-x 1 root root 10431547 Jul  6 02:23 bsondump

#二进制导出(bson结构)

-rwxr-xr-x 1 root root 29870496 Jul  6 02:48 mongo

#客户端

-rwxr-xr-x 1 root root 54389424 Jul  6 02:48 mongod

#服务端

-rwxr-xr-x 1 root root 12771652 Jul  6 02:24 mongodump    

#导出数据库

-rwxr-xr-x 1 root root 10783691 Jul  6 02:23 mongoexport  

#导出易识别的json文档或CSV

-rwxr-xr-x 1 root root 10668482 Jul  6 02:23 mongofiles

-rwxr-xr-x 1 root root 10942731 Jul  6 02:23 mongoimport

-rwxr-xr-x 1 root root 10433507 Jul  6 02:24 mongooplog

-rwxr-xr-x 1 root root 53753432 Jul  6 02:48 mongoperf

-rwxr-xr-x 1 root root 14070941 Jul  6 02:24 mongoreplay

-rwxr-xr-x 1 root root 14127528 Jul  6 02:24 mongorestore

#导入数据库

-rwxr-xr-x 1 root root 30539024 Jul  6 02:48 mongos 

#路由器(分片)

-rwxr-xr-x 1 root root 11003296 Jul  6 02:23 mongostat

#状态

-rwxr-xr-x 1 root root 10631445 Jul  6 02:24 mongotop  

[root@Centos-2 src]# mv mongodb-linux-x86_64-rhel62-3.4.6 /usr/local/mongodb

[root@Centos-2 src]# cd /usr/local/mongodb/

启动服务

创建数据目录与日志目录

[root@Centos-2 ~]# mkdir /data/mongodb -p

[root@Centos-2 ~]# mkdir /data/mongodblog -p

[root@Centos-2 mongodb]# ./bin/mongod --dbpath /data/mongodb/ --logpath /data/mongodblog/mongo.log --fork --port 27017

about to fork child process, waiting until server is ready for connections.

forked process: 19027

child process started successfully, parent exiting

[root@Centos-2 mongodb]# lsof -i :27017

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME

mongod 19027 root 7u IPv4  48419 0t0 TCP *:27017 (LISTEN)

参数说明:

--dbpath  指定数据存储目录

--logpath  指定日志存储目录

--fork   后台运行

--port   指定端口(默认27017)

连接数据库

[root@Centos-2 mongodb]# ./bin/mongo      

MongoDB shell version v3.4.6

connecting to: mongodb://127.0.0.1:27017

MongoDB server version: 3.4.6

Server has startup warnings:

2017-07-29T10:36:50.683+0800 I STORAGE  [initandlisten]

2017-07-29T10:36:50.683+0800 I STORAGE  [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine

2017-07-29T10:36:50.683+0800 I STORAGE  [initandlisten] ** See http://dochub.mongodb.org/core/prodnotes-filesystem

2017-07-29T10:36:51.494+0800 I CONTROL  [initandlisten]

2017-07-29T10:36:51.494+0800 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.

2017-07-29T10:36:51.494+0800 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.

2017-07-29T10:36:51.494+0800 I CONTROL  [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.

2017-07-29T10:36:51.494+0800 I CONTROL  [initandlisten]

2017-07-29T10:36:51.495+0800 I CONTROL  [initandlisten]

2017-07-29T10:36:51.495+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.

2017-07-29T10:36:51.495+0800 I CONTROL  [initandlisten] **   We suggest setting it to 'never'

2017-07-29T10:36:51.495+0800 I CONTROL  [initandlisten]

2017-07-29T10:36:51.495+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.

2017-07-29T10:36:51.496+0800 I CONTROL  [initandlisten] **  We suggest setting it to 'never'

2017-07-29T10:36:51.496+0800 I CONTROL  [initandlisten]

2017-07-29T10:36:51.496+0800 I CONTROL  [initandlisten] ** WARNING: soft rlimits too low. rlimits set to 7671 processes, 65535 files. Number of processes should be at least 32767.5 : 0.5 times number of files.

2017-07-29T10:36:51.496+0800 I CONTROL  [initandlisten]

报错解决方法如下:

WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine

强烈建议使用带WiredTiger存储引擎的XFS文件系统


WARNING:Access control is not enabled for the database.

意思是:未对数据库启用访问控制,对数据和配置的读写访问不受限制

解决方法:开启数据库的认证就可以解决

在配置文件mongod.conf中开启,如下:

security:

  authorization: enabled 


WARNING:/sys/kernel/mm/transparent_hugepage/enabled is 'always'.

#cat /sys/kernel/mm/transparent_hugepage/enabled

[always] madvise never

关闭命令:

#echo never > /sys/kernel/mm/transparent_hugepage/enabled 


WARNING:/sys/kernel/mm/transparent_hugepage/defrag is 'always'.

将/sys/kernel/mm/transparent_hugepage/defrag设置为never

#cat /sys/kernel/mm/transparent_hugepage/defrag

[always] madvise never

关闭命令:

echo never >/sys/kernel/mm/transparent_hugepage/defrag 


WARNING:soft rlimits too low. rlimits set to 1024 processes, 64000 files. Number of processes should be at least 32000

设置ulimit

vi /etc/security/limits.conf

mongod soft nofile 64000

mongod hard nofile 64000

mongod soft nproc 32000

mongod hard nproc 32000

重启mongodb服务后重新登陆

[root@Centos-2 mongodb]# ./bin/mongo      

MongoDB shell version v3.4.6

connecting to: mongodb://127.0.0.1:27017

MongoDB server version: 3.4.6

> show databases;

admin  0.000GB

local  0.000GB

> show dbs;   #查看当前的数据库

admin  0.000GB #管理数据库

local  0.000GB     

图片


标签:入门,Mongodb,数据库,0800,mongodb,initandlisten,29T10,root,07
来源: https://blog.51cto.com/15127557/2669263

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有