使用认证的数据库(!!!使用前先备份一下,以防万一呢)

修改数据库

  1. 进入数据库mongo
  2. 选择leanote数据库use leanote;
  3. 执行如下代码

    db.createUser({
    user: '用户名',
    pwd: '密码',
    roles: [{role: 'dbOwner', db: 'leanote'}]
    });
  4. 测试下是否正确
    db.auth("用户名", "密码");
  5. 返回1 表示正确。

修改相关配置文件

  1. 编辑mongodb.conf 添加认证
    vim /usr/local/mongodb-linux-x86_64-4.0.6/bin/mongodb.conf
  2. 编辑conf/app.conf 写入数据库账户、密码
    vim /www/wwwroot/你的网站目录/leanote/conf/app.conf
  3. 重启运行测试

登陆数据库以及修改数据库中的内容

  1. mongo -u 用户名 -p 密码 --authenticationDatabase leanote
  2. 选择leanote use leanote
  3. 查询操作 db.users.find("document");
  4. 删除操作 db.users.remove("document");
  5. 修改操作 db.users.update({"Username" : "admin"}, {$set:{"Email":"admin@leanote.com","Verified" : true}}); 包括用户id、用户名、以及其他信息,自行选择
  6. 标签显示不全,需要将数据库中的tags表中的一个空值删除或修改后即可能解决该问题。
    修改示例:
  1. use leanote;
  2. db.tags.find(); // 检查是否存在那个空值,若在执行修改,下标是否是3(0起算)
  3. db.tags.update({'_id':ObjectId("5368c1aa99c37b029d000001")},{$set:{'Tags.3':'yellow'}});

Mongodb、leanote开机启动

Mongodb后台运行所需的配置

  1. 新建日志目录
    cd /data
    mkdir -p logs/leanote
  2. 我们用配置文件的方式设置(还有一种直接写命令和参数)
    • 新建配置文件
    • cd /usr/local/mongodb-linux-x86_64-4.0.6/bin
    • vim mongodb.conf
    • 输入以下内容

      dbpath = /data/leanote # 数据库
      logpath = /data/logs/leanote/leanote.log # 日志
      port = 27017 # 端口
      fork = true # 是否后台运行
      auth = true # 是否认证登陆
      logappend = true # 指定日志文件
      bind_ip=yourIpAddress # 设置那些IP可以访问数据库,可选
  3. 其他问题
    • 用户对日志目录/data/logs的权限不足,需赋权(不懂请百度)
    • 32位系统启动需加入参数:--journal
    • 参见 mongodb.conf 配置文件详解

leanote、mongodb开机自启

  1. 到网站目录/leanote/bin的目录下对run.sh的赋予可执行的权限
    chmod +x run.sh
  2. 编辑
    • /etc/rc.d/rc.local
    • 在文件后面加上如下内容

      /usr/local/mongodb-linux-x86_64-4.0.6/bin/mongod --config /usr/local/mongodb-linux-x86_64-4.0.6/bin/mongodb.conf
      cd /www/wwwroot/网站目录/leanote/bin
      ./run.sh
  3. 赋予可执行的权限
    chmod +x /etc/rc.d/rc.local
  4. 重启测试