美文网首页
数据持久化-mongodb

数据持久化-mongodb

作者: 巧克力_404 | 来源:发表于2021-05-08 09:02 被阅读0次

    mongodb是非关系型数据库的代表,在前端时代LAMP是黄金搭档,在现在这个时代MEAN已经上线(Mongo DB Express Angular/react Nodejs)

    MENA

    mongodb安装、配置

    可以使用docker安装,下载mongoDB镜像,mongo-express可视化图形界面可以直接访问,安装完成之后查看

    首先进入docker 执行 docker ps -a 查看当前安装的镜像

    所有镜像

    执行  docker exec -it brave_jepsen bash  进入mongodb

    首先执行mongo来进入命令行的界面 后面就可以执行命令了 show dbs  中 admin config local三个数据库是系统内置的   执行 use test 切换test数据库,这时候只是切换过来,但是没有创建test数据库,执行 db.fruits.save({name:'apple',price:3})  插入一条数据

    这条数据就插入成功了

    // 条件查询    db.fruits.find({price:5})     db.fruits.find({price: {$lte: 10}})    

    // 得到当前db的所有聚集集合    db.getCollectionNames()

    直接就可以查询出结果 ,这是mongodb自己的一个特点  查看更多mongo命令行操作(https://www.cnblogs.com/wywnet/p/5102946.html)

    mongodb原生驱动

    参考资料:菜鸟文档 https://www.runoob.com/mongodb/mongodb-create-database.html

    安装mongodb 模块: npm install mongodb --save

    连接mongodb

    创建一个客户端 建立mongodb连接

    实战mongodb的开发

    创建market瓜果超市项目  创建models文件夹将我们的db.js放在这里创建conf.js

    数据库信息

    创建db.js

    创建数据库连接信息

    这时候我们需要写入test数据

    写入test数据

    数据后端准备好以后,我们构建一个前端express服务

    创建express服务 监听3000端口

    利用el-ui做一个简单的展示页面

    数据成功展示

    ODM - Mongoose

    概述:优雅的Nodejs对象文档模型 object document model 

    Mongoose有两个特点

    通过关系型数据库的思想来设计非关系型数据库

    基于mongodb驱动,简化操作    安装: npm install mongoose -S

    我们一起看一下mongoose的写法和其他的数据库有什么不同,首先连接数据库成功之后,如果有一个表,我们可以通过这个表直接建一个对象 Schema,它有什么字段,我不需要直接去建库,直接定义文件的结构,它的增删改查和mogondb非常类似

    创建链接 定义schema表结构 增删改查

    https://www.cnblogs.com/xiaohuochai/archive/2018/04/11/8794687.html

    使用mongo-express管理mongodb数据库

    首先,全局安装 mongo-express 包 npm install -g mongo-express 

    接着,使用如下命令来找到mongo-express的安装目录   npm list -g mongo-express

    然后进入该目录下的node_modules/mongo-express目录中,找到config.js文件,复制该文件,并命名为config.default.js文件

    接下来,修改配置文件config.js

    if (process.env.VCAP_SERVICES) {

      vardbLabel ='mongodb-2.4';

      varenv = JSON.parse(process.env.VCAP_SERVICES);

      if (env[dbLabel]) {

        mongo = env[dbLabel][0].credentials;

      }

    } else {

      mongo = {

        db:'blogs',

        host:"118.1.1.1",

        port:27017,

        ssl:false,

        username:'blogs',

        password:'123456',

        url:"mongodb://118.1.1.1:27017/blogs",

        // setting the connection string will only give access to that database

        // to see more databases you need to set mongodb.admin to true or add databases to the mongodb.auth listconnectionString: process.env.ME_CONFIG_MONGODB_SERVER ?'' : process.env.ME_CONFIG_MONGODB_URL,

      };

    }

    启动

    由于mongo-express是全局安装,则可以在任何目录下,使用mongo-express命令来启动应用

    mongo-express

    输入完成后,控制台输出如下信息

    Mongo Express server listening at http://localhost:8081basicAuth credentials are"admin:pass", itisrecommended you changethisinyour config.js!Database connected

    Connecting to blogs...

    Database blogs connected

    在地址栏中,输入localhost:8081,以用户名:admin,密码:pass的验证即可登录

    相关文章

      网友评论

          本文标题:数据持久化-mongodb

          本文链接:https://www.haomeiwen.com/subject/pjgioqtx.html