Mongodb的笔记(安装,Python操作,Robo3t操作)

来源:互联网 发布:淘宝页头图片尺寸 编辑:程序博客网 时间:2024/06/06 06:32

安装Mongodb(Centos7)

  1. 官网上找到需要下载的版本压缩包进行下载。官网链接

    或者在命令行下使用wget命令进行下载

    # 这里下载的是3.4.10版本wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.4.10.tgz
  2. 进行解压缩

    # 解压缩tar -zxvf mongodb-linux-x86_64*.tgz# 重命名mv mongodb-linux-x86_64* mongodb# 移动到你想放置的目录下,这里我放在/opt目录下mv mongodb /opt/
  3. 进行相应的配置,mongodb默认没有任何配置

    # 进行mongodb主目录cd /opt/# 建立存放数据文件和日志文件的目录mkdir -p data/test/logsmkdir -p data/test/db# 创建配置文件,并写入如下配置vim bin/mongodb.conf `   # 设置数据文件的存放目录   dbpath = /opt/mongodb/data/test/db   # 设置日志文件的存放目录及其日志文件名   logpath = /opt/mongodb/data/test/logs/mongodb.log   # 设置端口号(默认的端口号是27017,可以根据个人需求进行更改)   port = 27017   # 设置为以守护进程的方式运行,即在后台运行   fork = true   # 是否不允许表扫描   nohttpinterface = true `# 保存退出
  4. 启动mongodb

# 以配置文件的方式启动./bin/mongod --config mongodb.conf

报错一: ERROR: child process failed, exited with error number 1
检查mongodb.conf的文件路径是否配置错误

报错二:ERROR: child process failed, exited with error number 100
很可能是没有正常关闭导致的,那么可以删除 mongod.lock文件,这里对应我的配置路径在data/里面

  1. 其他
# 链接命令,方便调用mongo命令ln -s /opt/mongodb/bin/mongo /usr/bin# 查看mongodb进程ps -aux |grep mongodb# 检查端口运行情况netstat -lanp | grep 27017# 终止mongodb服务,PID从ps命令获取kill -15 PID# 添加自启动命令vim /etc/rc.local# 末尾追加一行`/opt/mongodb/bin/mongod --config mongodb.conf`# 保存退出
  1. 设置密码权限,默认无密码
# 进行mongodb的交互环境./mongo# 如果进入失败,请检查是否添加了软链接和是否启动了mongodb服务# 进行admin数据库,创建管理员用户root,密码为password,权限是超级用户(最高)>use admin>db.createUser({user:"root",pwd:"password",roles:["root"]})# 验证是否创建成功,返回1表示成功>db.auth({"root", "password"})# 退出交互环境>exit# 重启mongodb服务# 杀死mongodb进程,参照上面的方法# 以密码权限验证启动服务opt/mongodb/mongod --config mongodb.conf --auth

数据库权限说明表

名称 权限 数据库用户角色 read、readWrite 数据库管理角色 dbAdmin、dbOwner、userAdmin 集群管理角色 clusterAdmin、clusterManager、clusterMonitor、hostManager 备份恢复角色 backup、restore 所有数据库角色 readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase 超级用户角色 root 提供了系统超级用户的访问 dbOwner 、userAdmin、userAdminAnyDatabase 内部角色 __system

使用Python连接Mongodb

# 下载第三方包pip3 install pymongo
# /usr/bin/python3from pymongo import MongoClient# 方法一# host主机名,27017连接端口client = MongoClient(host, 27017)db_auth = client.admin# 登陆的用户名(username)和密码(password)db_auth.authenticate(username, password)# 连接指定数据库,数据库名为db_namedb_name = client["db_name"]# 方法二# 用户名(username)、密码(password)、主机名(host)、端口(port)。注:这里的password不能出现@符号,如果用@符号就需要使用方法一client = MongoClient("mongodb://username:password@host:port")# 连接指定数据库,数据库名为db_namedb_name = client["db_name"]# 操作数据库,db_name["db_set"]=db_name.db_set"""查找数据在db_name数据库中的db_set集合里面找到name是a_name的jsonfind是返回一个指针(可以使用列表的方式来读取),find_one返回一个dict"""db_name["db_set"].find_one({"name": "a_name"})# 插入数据# 插入一个json到set1集合中,a_dict是一个字典(如果set1不存在则会被自动创建)db_name.set1.insert_one(a_dict)# 插入多个json到set1集合中,a_dict_lst是一个列表,里面的元素是由字典组成的db_name.set1.insert_many(a_dict_lst)# 更新数据# 查找到一个数据之后,对里面的某个数据进行更改,再使用save方法保存data_one = db_name["db_set"].find_one({"name": "a_name"}) data_one['age'] += 3 db_name.db_set.save(data_one)# 更新多条记录,找到db_set集合中满足age=20,sex=0的数据,将name改为user1db_name.db_set.update({"name": "user1"}, {"$set":{"age": 20, "sex": 0}})# 删除数据id = db_name.db_set.find_one({"name": "user1"})["_id"] # 根据 id 删除一条记录 db_name.db_set.remove(id) # 删除集合里的所有记录 db_name.db_set.remove() # 删除name=user1的记录db_name.db_set.remove({"name": "user1"}) 

可视化Mongodb的操作

强烈推荐Robo 3t,官网地址

  1. 到官网找到对应的系统版本进行下载

  2. 安装

    • Windows的安装十分简单就不赘述了

    • Ubuntu的安装

      # 解压缩tar -zxzf robomongo*.tar.gz# 修改文件名(可选)mv robomongo* robo3t# 移动到/opt目录(可选)mv robo3t /opt# 建立软链接ln -s /opt/robo3t/robomongo /usr/bin# 启动robomongo
      # 如果报如下错误`This application failed to start because it could not find or load the Qt platform plugin "xcb" in "".Available platform plugins are: xcb.Reinstalling the application may fix this problem.Aborted (core dumped)`# 解决办法mkdir ~/robo-backupmv /opt/robo3t/lib/libstdc++* ~/robo-backup/# 之后便可以重新启动mongo试试看了
  3. 使用

    1. 首先创建新的连接,如下图所示。在Connection中,``Name为自定义连接名,Address填入对应的hostport
      pic1
    2. Authentication中,勾选Perform authentication,填上对应的User NamePassword。填写完成之后可以点击Test验证是否能够连接成功,如果无误的话,可以点击Save保存退出。

    pic2

    1. 连接Mongodb。点击Connect,之后就可以可视化数据库中的数据。也可以使用鼠标简单的进行创建/删除数据库,新建/修改信息,也可以使用命令查找数据。
原创粉丝点击