六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 968|回复: 0

mongodb 数据库创建,切换,删除

[复制链接]
 楼主| 发表于 2015-9-28 18:14:11 | 显示全部楼层 |阅读模式
mongodb 数据库创建,切换,删除
mongodb是nosql里面最像关系型数据库的数据库。单表操作,基本上可以和关系型数据库差不多。mongodb比较易学,易用,分几期记录一下,学习和使用mongodb过程。mongodb安装就不说了,请参考:centos yum 安装 mongodb 以及php扩展
一,创建,切换,删除数据库
查看复制打印?

  • [root@localhost zhangy]# mongo  
  • MongoDB shell version: 2.4.6  
  • connecting to: tank  
  • > use test            //创建 or 切换数据库  
  • switched to db test  
  • > db.dropDatabase()   //删除数据库  
  • { "dropped" : "test", "ok" : 1 }  

二,php创建,切换,删除数据库
1,切换数据库
查看复制打印?

  • $mongo = new Mongo();  
  • $db = $mongo->selectDB('test');   //切换数据库  

2,创建数据库
查看复制打印?

  • $mongo = new Mongo();  
  • $db = $mongo->selectDB('test');  
  • $users = $db->createCollection("users");  
  •   
  • $alldb = $mongo->listDBs();  //列出所有数据库  
  • print_r($alldb);           //可以看到db创建成功了  

在这里要注意一下,如果你不创建一个collection(根关系型数据库的表基本上是一样的),是创建不了数据库的。
3,删除数据库
查看复制打印?

  • $mongo = new Mongo();  
  • $db = $mongo->selectDB('test');  
  • $db->drop();  

三,小节
这篇文章很简单吧,哈哈,不想在一篇文章里面写太多的东西,折开来写,看的更清楚一点,更细一点。
在这儿要提一下,mongodb命令下的帮助,这个对于命令行操作很有帮助。
1,db的帮助
查看复制打印?

  • db.AddUser(username,password)  添加用户  
  • db.auth(usrename,password)     设置数据库连接验证  
  • db.cloneDataBase(fromhost)     从目标服务器克隆一个数据库  
  • db.commandHelp(name)           returns the help for the command  
  • db.copyDatabase(fromdb,todb,fromhost)  复制数据库fromdb---源数据库名称,todb---目标数据库名称,fromhost---源数据库服务器地址  
  • db.createCollection(name,{size:3333,capped:333,max:88888})  创建一个数据集,相当于一个表  
  • db.currentOp()                 取消当前库的当前操作  
  • db.dropDataBase()              删除当前数据库  
  • db.eval(func,args)             run code server-side  
  • db.getCollection(cname)        取得一个数据集合,同用法:db['cname'] or  
  • db.getCollenctionNames()       取得所有数据集合的名称列表  
  • db.getLastError()              返回最后一个错误的提示消息  
  • db.getLastErrorObj()           返回最后一个错误的对象  
  • db.getMongo()                  取得当前服务器的连接对象get the server  
  • db.getMondo().setSlaveOk()     allow this connection to read from then nonmaster membr of a replica pair  
  • db.getName()                   返回当操作数据库的名称  
  • db.getPrevError()              返回上一个错误对象  
  • db.getProfilingLevel()         获取profile level  
  • db.getReplicationInfo()        获得重复的数据  
  • db.getSisterDB(name)           get the db at the same server as this onew  
  • db.killOp()                    停止(杀死)在当前库的当前操作  
  • db.printCollectionStats()      返回当前库的数据集状态  
  • db.printReplicationInfo()        打印主数据库的复制状态信息  
  • db.printSlaveReplicationInfo()        打印从数据库的复制状态信息  
  • db.printShardingStatus()       返回当前数据库是否为共享数据库  
  • db.removeUser(username)        删除用户  
  • db.repairDatabase()            修复当前数据库  
  • db.resetError()  
  • db.runCommand(cmdObj)          run a database command. if cmdObj is a string, turns it into {cmdObj:1}  
  • db.setProfilingLevel(level)    设置profile level 0=off,1=slow,2=all  
  • db.shutdownServer()            关闭当前服务程序  
  • db.version()                   返回当前程序的版本信息  

2,表的帮助,格式,db.表名.help()
查看复制打印?

  • db.test.find({id:10})          返回test数据集ID=10的数据集  
  • db.test.find({id:10}).count()  返回test数据集ID=10的数据总数  
  • db.test.find({id:10}).limit(2) 返回test数据集ID=10的数据集从第二条开始的数据集  
  • db.test.find({id:10}).skip(8)  返回test数据集ID=10的数据集从0到第八条的数据集  
  • db.test.find({id:10}).limit(2).skip(8)  返回test数据集ID=1=的数据集从第二条到第八条的数据  
  • db.test.find({id:10}).sort()   返回test数据集ID=10的排序数据集  
  • db.test.findOne([query])       返回符合条件的一条数据  
  • db.test.getDB()                返回此数据集所属的数据库名称  
  • db.test.getIndexes()           返回些数据集的索引信息  
  • db.test.group({key:...,initial:...,reduce:...[,cond:...]})    返回分组信息  
  • db.test.mapReduce(mayFunction,reduceFunction,<optional params>)  这个有点像存储过程  
  • db.test.remove(query)                      在数据集中删除一条数据  
  • db.test.renameCollection(newName)          重命名些数据集名称  
  • db.test.save(obj)                          往数据集中插入一条数据  
  • db.test.stats()                            返回此数据集的状态  
  • db.test.storageSize()                      返回此数据集的存储大小  
  • db.test.totalIndexSize()                   返回此数据集的索引文件大小  
  • db.test.totalSize()                        返回些数据集的总大小  
  • db.test.update(query,object[,upsert_bool]) 在此数据集中更新一条数据  
  • db.test.validate()                         验证此数据集  
  • db.test.getShardVersion()                  返回数据集共享版本号  


摘自:http://blog.51yip.com/cache/1572.html
mongodb 数据库创建,切换,删除

该会员没有填写今日想说内容.
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表