zoukankan      html  css  js  c++  java
  • mongodb操作笔记

    先创建一个库 类似于数据库database
    //use DATABASE_NAME 用于创建数据库。
    该命令将创建一个新的数据库,如果它不存在,否则将返回现有的数据库。
    use mydb 
    switched to db mydb
    要检查当前选择的数据库使用命令 db
    >db
    mydb
    如果想检查数据库列表,使用命令show dbs
    注意,在use mydb后,mydb实际上还没真正建立起来,只是表明目前是在使用mkyongdb了。
    查看当然库下面的表
    可以  show collections
      
    3)保存数据  集合只需要用的时候写上就会自动创建好  或者(db.createCollection('users'))
      定义一个collection,名为“users”,然后插入数据,如下:
    > db.users.save( {username:"mkyong"} )
    > db.users.find()
    { "_id" : ObjectId("4dbac7bfea37068bd0987573"), "username" : "mkyong" }
    >
    //一次插入多条数据
    //person为你想要创建的集合 类似数据库的表 只需要用的时候写上就会自动创建好
    db.person.insert
    ([{name:'Mary',age:21,status:'A'},
    {name:'Lucy',age:89,status:'A'},
    {name:Jacky,age:30,status:'A'}])
    Sphinx全文检索
    作用:代替了like模糊查询,实现了搜索文章功能
    Sphinx知识点
    1、下载资源包
    2、Sphinx目录
    3、修改配置文件
    4、服务操作
    5、php操纵Sphinx
    NoSQL:Not Only SQL
    产品特点的介绍
    MySQL:数据量大、安全性高、效率低、速度慢
    NoSQL:数据量小、安全性低、效率高、速度快
    数据存储在哪里
    MySQL:比较稳定的数据
    NoSQL:经常变更的数据
    NoSQL产品
    1、Memcache      缓存
    2、MongoDB       充当小型的数据库
    3、Redis         公用变量
    MongoDB使用
    1、下载资源包
       mongodb-win32-i386_32-2.6.6.zip(32位)
       mongodb-win32-x86_64-2.6.6.zip(64位)
    2、在MongoDB资源包新建文件夹
       mongodb
         bin--------------------MongoDB命令
         data-------------------存储一些临时产生的数据
           db-------------------存储数据文件
           log
             MongoDB.log--------MongoDB日志文件
    3、配置系统的path环境变量(右键计算机-》属性-》高级系统设置)
       变量名:path
       变量值:asdfajsdfljadsjasdfj;F:mongodbin
    4、操作服务
       1)安装服务(打开命令提示符窗口,输入如下命令)
         mongod --dbpath "e:/mongodb/data/db" --logpath "e:/mongodb/data/log/mongodb.log" --install --serviceName "MongoDB"
       2)卸载服务(打开命令提示符窗口,输入如下命令)
         mongod --remove --serviceName "MongoDB"
       3)启动服务(打开命令提示符窗口,输入如下命令)
         net start MongoDB
       4)停止服务(打开命令提示符窗口,输入如下命令)
         net stop MongoDB
    5、登陆MongoDB(打开命令提示符窗口,输入如下命令)
       mongo 主机地址:27017/库名
       mongo 主机地址/库名
       mongo 主机地址
    使用普通的CMD窗口运行mongo命令即使直接关掉窗口也不会出现该问题,
    看来还是使用原生程序更靠谱。
    发生了此种情况解决方法也很简单,使用如下参数repair即可:
    journaling enable错误
    复制代码 代码如下:
    mongod --auth -dbpath C:mongoMongoDBmongodata --repair
    mongo的端口号27017
    存储数据的方式
    MySQL:库->表->记录->字段
    MongoDB:库->集合->记录->字段
    MongoDB命令注意:
    1、MongoDB命令区分大小写
    2、每个命令都不用写分号
    MongoDB操作命令
    1、退出
       exit
    2、清屏
       cls
    3、查看现存的所有库
       show dbs
    4、使用库
       use 库名
       注意:如果库名存在,那么切换库。如果库名不存在,那么创建库。
    5、删除库(前提:先进入要删除的库)
       db.dropDatabase()
    6、查看当前库中的所有集合
       show collections
    7、删除集合
       db.集合名.drop()
    8、添加记录
       db.集合名.insert({名:值,名:值,名:值...})
       db.userInfo.insert({"userName":"张三","age":30,"sex":"男","address":"北京"})
       db.userInfo.insert({"userName":"李四","age":31,"sex":"女","address":"天津"})
       db.userInfo.insert({"userName":"王五","age":29,"sex":"女","address":"上海"})
       db.userInfo.insert({"userName":"赵六","age":24,"sex":"男","address":"西安"})
       db.userInfo.insert({"userName":"田七","age":33,"sex":"女","address":"山西"})
    9、修改记录
       db.集合名.update({名:值},{名:值,名:值...})
       db.userInfo.update({"userName":"赵六"},{"userName":"赵六","age":24,"sex":"女","address":"西安"})
    10、删除记录
       db.集合名.remove({名:值})
       db.userInfo.remove({"userName":"赵六"})
       db.userInfo.remove({"sex":"男"})
       db.userInfo.remove()
    11、查询语句
       db.集合名.find({名:值,名:值...})
       db.userInfo.find()
       db.userInfo.find({"sex":"女"})
       db.userInfo.find().count()
       db.userInfo.find().limit(2)
       db.userInfo.find().skip(3)
       db.userInfo.find().skip(2).limit(3)
       db.userInfo.find().limit(3).skip(2)
       db.userInfo.findOne({"userName":"田七"})
       db.userInfo.findOne({"sex":"男"})
    PHP操纵MongoDB
    1、下载MongoDB的php扩展
        先将MongoDB的php扩展php_mongo.dll复制到wampinphpphp5.4.16ext中
        再在php配置文件php.ini中开启MongoDB的扩展extension=php_mongo.dll
    2、php代码操纵MongoDB
    mongoose 创建schema (类似于数据库)表格式 
    var
  • 相关阅读:
    Macbook下安装memcached
    CI框架视图继承
    JavaScript&jQuery 基本使用
    Mac下PHP的环境搭建
    完善口语第一步
    php反射
    php_Trait
    php接口和抽象类
    使用seafile搭建自己的私有云存储
    PHP 简单面向对象 验证码类(静态实例对象调用)
  • 原文地址:https://www.cnblogs.com/famensaodiseng/p/11791131.html
Copyright © 2011-2022 走看看