MongoDB数据库新手入门
windows安装mongodb 5.0.2
官网下载msi文件
自定义安装到 d:/apptoools/mongodb/
不要勾选mongodb compass
报错:verify that you have sufficient privileges to install system services
权限不足
解决办法:
1.默认C盘安装路径
2.其它磁盘根目录,D:/mongodb/
配置环境变量
bin目录添加到path环境变量里面
创建数据库存储文件 D:/mongoDatabase/
指定数据库存储文件
mongod --dbpath D:/mongoDatabase/
启动

mongo
或者指定连接本地数据库 mongo 127.0.0.1:27017
show dbs
use admin
show collections
db.product.insert({'title': 'aaa'})
db.product.drop() // 删除集合
db.dropDatabase() 删除数据库
db.createCollection("runoob")
使用SQL命令强迫关闭mongo服务
use admin
db.shutdownServer()
创建管理员:
use admin
show users
db.createUser({user:"root",pwd:"123456",roles:["root"]}) //添加管理员
db.dropUser('grade') // 删除用户
指定数据库创建用户
use grade
db.createUser({user:"gradeAdmin",pwd:"123456",roles:[{role: 'dbOwner',db: 'grade'}]})
Mongodb数据库角色
- 数据库用户角色:
read、 readWrite
- 数据库管理角色:
dbAdmin、 dbOwner、 userAdmin
- 集群管理角色:
clusterAdmin, clusterManager, clusterMonitor, hostManager
- 备份恢复角色:
backup、 restore;
- 所有数据库角色:
readAnyDatabase, readWriteAnyDatabase、 userAdminAnyDatabase, dbAdminAnyDatabase
- 超级用户角色:
root
开启认证之后连接数据库:
use admin
db.auth('root','123456')
nodejs连接数据库
通过client对象连接到MongoDB
通过实例化一个MongoClient对象连接MongoDB数据库是最常用也是最佳的方式。
创建MongoClient对象实例的语法:
MongoClient( server, options );
server : 一个serverd对象;
options : 数据库连接选项;
通过一个连接字符串连接到MongoDB
调用MongoClient类的connect()方法
MongoClient.connect(connString, options, callback)
connString:mongodb://username:password@host:port/database?opations
nosqlbooster连接mongodb

linux 安装mongodb,配置以及使用
安装
官网下载tar包,上传到服务器目录: /usr/local/mongodb
解压,tar -zxvf mongodb-linux-x86_64-xxx 并重命名
创建mongodb数据存储文件和日志文件
cd /usr/local/mongodb/
mkdir data
mkdir logs
cd ./logs
touch mongodb.log
cd ../
mkdir etc
cd etc
touch mongodb.conf
mongodb.conf配置文件:
#数据库路径
dbpath=/usr/local/mongodb/data
#日志输出文件路径
logpath=/usr/local/mongodb/logs/mongodb.log
#错误日志采用追加模式
logappend=true
#启用日志文件,默认启用
journal=true
#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false
quiet=true
#端口号 默认为27017
port=27017
#允许远程访问
bind_ip=0.0.0.0
#开启子进程
fork=true
#开启认证,必选先添加用户,先不开启(不用验证账号密码)
#auth=true
配置环境变量
vi /etc/profile写入:
export PATH=/usr/local/mongodb/bin:$PATH
保存退出执行
source /etc/profile
启动mongodb服务
- 方式一
bin目录下执行:
./mongod --config /usr/local/mongodb/etc/mongodb.conf
- 方式二
把上面的命令写成脚本文件,我把它放到 ~/restartMongo 中,如下:
cd ~
vim restartMongo
#写入:
mongod --config /usr/local/mongodb/etc/mongodb.conf
# 保存退出
# 执行脚本启动
./restartMongo
查看进程
mongodb默认端口号27017
执行命令查看:
netstat -ltunp
或者使用如下命令
netstat -lanp | grep "27017"
启动之后就可以连接mongo server了
操作mongo数据库
mongo (或者指定ip:port: mongo ip:port)
admin数据库添加用户、安全认证
use admin
show users
db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})
show users
关闭mongo server
db.shutdownServer()
启用安全认证
- 修改
etc/mongodb.conf
#开启认证,必选先添加用户
auth=true
- 重新开启
mongo server
mongod --config /usr/local/mongodb/etc/mongodb.conf
此时show dbs查看不到任何数据库
use admin
db.auth('root', '123456') # 输出1标记访问数据库成功
show dbs
客户端链接
开放防火墙端口号,不再赘述。
开机启动
配置开机启动脚本文件: /etc/rc.d/init.d/mongod
start() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/etc/mongodb.conf
}
stop() {
/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/etc/mongodb.conf --shutdown
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo
$"Usage: $0 {start|stop|restart}"
exit 1
esac
我是 甜点cc
热爱前端开发,也喜欢专研各种跟本职工作关系不大的技术,技术、产品兴趣广泛且浓厚。本号主要致力于分享个人经验总结,希望可以给一小部分人一些微小帮助。
希望能和大家一起努力营造一个良好的学习氛围,为了个人和家庭、为了我国的互联网物联网技术、数字化转型、数字经济发展做一点点贡献。数风流人物还看中国、看今朝、看你我。
MongoDB数据库新手入门的更多相关文章
- mongodb新手入门,mongodb命令学习
下面来总结一下mongodb新手入门的常用命令吧.要是您是mongodb新手,可以看下. 1,show dbs 查询mongodb里面的数据库列表 如果想查看当前连接在哪个数据库下面,可以直接输入db ...
- MongoDB索引(一) --- 入门篇:学习使用MongoDB数据库索引
这个系列文章会分为两篇来写: 第一篇:入门篇,学习使用MongoDB数据库索引 第二篇:进阶篇,研究数据库索引原理--B/B+树的基本原理 1. 准备工作 在学习使用MongoDB数据库索引之前,有一 ...
- 入门系列之在Ubuntu 14.04上备份,还原和迁移MongoDB数据库
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由信姜缘 发表于云+社区专栏 MongoDB是最受欢迎的NoSQL数据库引擎之一.它以可扩展,强大,可靠和易于使用而闻名.在本文中,我们 ...
- 【MongoDB数据库】MongoDB 命令入门初探
MongoDB是一款NoSql数据库,使用了"面向集合"(Collection-Oriented)原理,意思是数据被分组存储在数据集中,被称为一个集合(Collection).每一 ...
- nodeJS从入门到进阶三(MongoDB数据库)
一.MongoDB数据库 1.概念 数据库(DataBase)是一个按照数据结构进行数据的组织,管理,存放数据的仓库. 2.关系型数据库 按照关系模型存储的数据库,数据与数据之间的关系非常密切,可以实 ...
- 【原创】新手入门一篇就够:从零开发移动端IM
一.前言 IM发展至今,已是非常重要的互联网应用形态之一,尤其移动互联网时代,它正以无与论比的优势降低了沟通成本和沟通代价,对各种应用形态产生了深远影响. 做为IM开发者或即将成为IM开发者的技术人员 ...
- 【MongoDB数据库】怎样安装、配置MongoDB
本blog以最简洁的方式记录了博主在折腾MongoDB过程中点点滴滴,当中包含下载MongoDB.配置环境变量.怎样启动MongoDBserver.怎样连接MongoDBserver以及怎样连接Mon ...
- 【MongoDB数据库】Java MongoDB CRUD Example
上一页告诉我们MongoDB 命令入门初探,本篇blog将基于上一篇blog所建立的数据库和表完毕一个简单的Java MongoDB CRUD Example.利用Java连接MongoDB数据库,并 ...
- PHP常用代码大全(新手入门必备)
PHP常用代码大全(新手入门必备),都是一些开发中常用的基础.需要的朋友可以参考下. 1.连接MYSQL数据库代码 <?php $connec=mysql_connect("loc ...
随机推荐
- 通过cpu热插拔解决rcu stall的问题
在linux 3.10环境一次故障处理中,发现有类似如下打印: NFO: rcu_sched_state detected stalls on CPUs/tasks: {15 } (detected ...
- windows绕过杀软添加账户密码
windows绕过杀软添加账户密码 起因:system权限下存在杀软无法添加账户信息 绕过方法 1.C#脚本 运行后会在目标机器上创建一个用户为 wh4am1 密码为 qqai@love 的 Admi ...
- C#通过反射实现简单的控制反转和依赖注入(一)
Java项目中通过@Autowire便可以实现将对象实例化到指定的字段,无需手动new一个对象出来,用起来非常方便,因为Java类加载器在在加载过程会将扫描所有@Servie.@Mapper.@Com ...
- 并发编程二、CPU多级缓存架构与MESI协议的诞生
前言: 文章内容:线程与进程.线程生命周期.线程中断.线程常见问题总结 本文章内容来源于笔者学习笔记,内容可能与相关书籍内容重合 偏向于知识核心总结,非零基础学习文章,可用于知识的体系建立,核心内容 ...
- HCNP Routing&Switching之DHCP安全
前文我们了解了MAC地址防漂移技术,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/16632239.html:今天我们来了解下DHCP安全相关话题: 回顾DHC ...
- git rebase合并多个commit总结
git rebase 合并多个commit 方法 在开发过程中,有时一个任务会分几次commit提交,这样可能对于有些分支要cherry pick时会比较麻烦,这是我们可以通过git rebase 将 ...
- Ansible_playbook
前言 连接https://galaxy.ansible.com下载相应的roles # 列出已安装的galaxy ansible-galaxy list # 安装galaxy ansible-gala ...
- 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(19)-Fiddler精选插件扩展安装,将你的Fiddler武装到牙齿
1.简介 Fiddler本身的功能其实也已经很强大了,但是Fiddler官方还有很多其他扩展插件功能,可以更好地辅助Fiddler去帮助用户去开发.测试和管理项目上的任务.Fiddler已有的功能已经 ...
- Nginx几种负载均衡方式介绍
Nginx几种负载均衡方式介绍 前言 负载均衡就是Nginx将请求分摊到不同的服务器中,保证服务的可用性,缓解服务压力,保证服务的响应速度,即使某一个应用服务不可用,也可以保证业务的正常进行,并且方便 ...
- C++ "链链"不忘@必有回响之单链表
1. 前言 数组和链表是数据结构的基石,是逻辑上可描述.物理结构真实存在的具体数据结构.其它的数据结构往往在此基础上赋予不同的数据操作语义,如栈先进后出,队列先进先出-- 数组中的所有数据存储在一片连 ...