欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

windows下MongoDB的安装及配置

程序员文章站 2024-01-23 10:53:28
...

一、先登录Mongodb官网https://www.mongodb.com/download-center#community 下载   安装包。32、64位的都行。

windows下MongoDB的安装及配置

二、安装MongoDB

下载后的安装包:windows下MongoDB的安装及配置

安装比较简单,类似于普通QQ软件,中间主要是选择“Custom”自定义 安装路径修改下:D:\software\MongoDB

然后不断“下一步”,安装至结束。

安装比较容易。难点在启动Mongodb的服务以及将MongoDB设置成Windows服务,加配置文件在windows的“服务”中找到。

三、先创建数据库文件的存放位置

在MongoDB下创建data,在data下再创建db:D:\software\MongoDB\data\db

因为启动mongodb服务之前需要必须创建数据库文件的存放文件夹,否则命令不会自动创建,而且不能启动成功。

 

四、启动MongoDB服务

1.打开cmd命令行

2.进入D:\software\MongoDB\bin目录(注意:先输入d:进入d盘,然后输入cd D:\software\MongoDB\bin)

3.输入如下的命令启动mongodb服务:mongod --dbpath D:\software\MongoDB\data\db

windows下MongoDB的安装及配置

即是在第三步创建的数据库存放文件路径下启动。

4.在浏览器输入http://localhost:27017 (27017是mongodb的端口号)查看,若显示:

windows下MongoDB的安装及配置

则表示,连接成功。如果不成功,可以查看端口是否被占用。

但是在本地windows“服务”中,是没有配置上mongodb 服务的,可以打开“服务”看下

windows下MongoDB的安装及配置

 

五、配置本地windows mongodb 服务

这样可设置为 开机自启动,可直接手动启动关闭,可通过命令行net start MongoDB 启动。该配置会大大方便。

1.先在data文件下创建一个新文件夹log(用来存放日志文件)

windows下MongoDB的安装及配置

2.在Mongodb新建配置文件mongo.config

windows下MongoDB的安装及配置


可能很多人都不会创建.config配置文件。那给大家介绍下简单的方法:

先创建一个mongo.txt文件,再打开,点击”另存为“,将底下的文件类型更改为”全部类型“,并更改文件名称为mongo.config。

这样就可以创建一个config的配置文件了。

2.用记事本打开mongo.config  ,并输入:

dbpath=D:\software\MongoDB\data\db

logpath=D:\software\MongoDB\data\log\mongo.log

3.用管理员身份打开cmd:

可能还有很多人不会管理员身份打开cmd。这也介绍下:

在下图路径下找到cmd 的运行文件

windows下MongoDB的安装及配置

然后右键,以管理员身份运行。打开后发现在顶端比普通打开的多了”管理员“三个字

windows下MongoDB的安装及配置

 

4.配置windows服务:

cmd先跳转到 D:\software\MongoDB\bin目录下。

输入:mongod --config "D:\software\Mongodb\mongo.config" --install --serviceName "MongoDB"

mongod --config "D:\studeySoft\mongoDbStall\mongo.config" --install --serviceName "MongoDB"

即根据刚创建的mongo.config配置文件安装服务,名称为MongoDB。

windows下MongoDB的安装及配置

完成后,再次查看本地的服务。

windows下MongoDB的安装及配置

如果成功的话,会发现本地服务多了”MongoDB"服务。

这就大功告成了。哈哈~~~

可以通过:“开机自启动,可直接手动启动关闭,命令行net start MongoDB 启动”。

开启后,可以正常连接了。可以用pycharm等IDE连接,

六、创建mongodb的用户

一般用户在配置完毕了上诉的MongoDB后,都可以直接使用MongoDB进行学习和测试了。但是在后来的开发的时候,就需要创建一个专属的账号来和密码来连接数据库了。为了方便,所以还是建议读者能坚持把数据库的用户给配置一下,在后来的使用过程中会很有用。在创建数据库用户的时候,需要将MongoDB的进行免密登录。

1.创建root用户:

1、 首先免密方式开启数据库
$ ./mongod
2、使用admin数据库
> use admin
switch admin
3、为admin库添加 root账户
>db.createUser({
  'user' : 'root',
  'pwd' : '123456',
  'roles':[
    {role:'root',db:'admin'}    #此为admin这个表的根用户,登录以后方可对所有库进行操作
    ]
})
4,验证用户
> db.auth('adminName','yourPassword')
--    1         #此时已成功登录admin 的root账户,可以进行所有库的操作

5、然后退出当前数据库,在上述的mongo.config的后面加上auth=true,然后重启服务器

6、此时没有使用账号密码也能登录,但是无法进行相关操作
mongo localhost:27017/admin
7,使用密码登录 mongo localhost:27017/admin --authenticationDatabse "admin" -u root -p 123456
>show dbs
>db.getUsers()
>show dbs

2.配置windows服务:

使用root登录上后数据库后,因为是数据库的root用户。可以直接切换到自己想要的数据库中,去创建用户。

> use testdata
switched to db testdata
> db.createUser({
    'user':'zhangsan',    //链接数据库的账户名
    'pwd':'lisi',                //密码
    'roles':[
            {
                role:'dbOwner',
                db:'testdata'
              }
      ]
})
Successfully added user: {
    "user" : "zhangsan",
    "roles" : [
        {
            "role" : "dbOwner",
            "db" : "testdata"
        }
    ]
}
> db.auth('zhangsan','lisi')
1  

用户重启数据库服务后,用户就可以使用账户密码进行数据库的登录了。下面介绍一下数据库的角色和角色说明:

1. 数据库用户角色:read、readWrite;  
2. 数据库管理角色:dbAdmin、dbOwner、userAdmin;       
3. 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4. 备份恢复角色:backup、restore;
5. 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
6. 超级用户角色:root  
// 这里还有几个角色间接或直接提供了系统超级用户的访问(dbOwner 、userAdmin、userAdminAnyDatabase)
7. 内部角色:__system

read:允许用户读取指定数据库
readWrite:允许用户读写指定数据库
dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
root:只在admin数据库中可用。超级账号,超级权限

相关命令:

获得数据库的所有用户权限信息: db.getUsers()
获得某个用户的权限信息: db.getUser()
创建角色: db.createRole()
更新角色: db.updateRole()
删除角色: db.dropRole()
获得某个角色信息: db.getRole()
删除用户: db.dropUser()
删除所有用户: db.dropAllUsers()
将一个角色赋予给用户: db.grantRolesToUser()

eg:db.grantRolesToUser ( "root", [ { role: "__system", db: "admin" } ] )
撤销某个用户的某个角色权限: db.revokeRolesFromUser()
更改密码: db.changeUserPassword()
直接输入指令回车,可以看到参数列表和指令的函数代码

pycharm连接mongodb,可以使用pycharm配置mongo插件连接

介绍个博文你学习安装:

http://blog.csdn.net/heshushun/article/details/77777752

centos下使用压缩包安装方式:

https://blog.csdn.net/wangzuokun/article/details/70799976