由于工作需要想要更改数据库名称,为其赋予一个更易与理解的名字,由于已存储数据较多,重新转存效率较低,遂打算直接修改数据库名称。
经过查阅官网内容、社区、博客,发现mongodb未提供直接修改数据库名称的方法,社区中有人說可以通过重命名collection的方法间接实现目的。
步骤如下:
# 首先进入mongodb
use yourdbname
use admin #使用管理员权限
db.runCommand({renameCollection:"yourdbname.yourcollection", to:"newdbname.yourcollection"})
通过上述操作原先的数据即被移动到新的数据库中,原数据库不再包含该collection。新数据库的collection名称和原数据库的collection名称可以相同。
其他mongodb命令整理
使用mongodb命令行上传一张图片
# 无需进入mongodb,直接在命令行下操作
mongofiles put --host 127.0.0.1 --port 27017 --db test --local C:\Users\MaMQ\Pictures\IMG_0633.JPG photo1.jpg --type JPG
--host 是mongodb的ip;
--port 是端口号
--db 是数据库的名称
--local 要填2个参数,第一个是本地图片的路径,第二个是在数据库中的别名。
--type 是保存的格式。
show dbs # 查看数据库列表
use yourdb # 进入数据库
show collections # 查看当前数据库下所有集合
db.yourcollection.distinct("url") # 得到url字段不重复的url列表
db.yourcollection.distinct("url") # 统计url字段不重复的数据量
db.yourcollection.remove({"key":"value"}) # 删除符合该条件的所有数据,删除后无法恢复、撤回
db.yourcollection.drop() # 删除集合
db.dropDatabase() # 删除数据库
db.yourcollection.insert({"url":"http://blog.csdn.net/qq_23926575/article/category/7428558", "name":"MoonBreeze", "blog_num":30})
db.yourcollection.update({"name":"MoonBreeze"},{"$set":{"blog_num":35}}) # 更新数据,首先查找name字段为MoonBreeze的数据,然后更改blog_num字段的值。
#更新后的数据为{"url":"http://blog.csdn.net/qq_23926575/article/category/7428558", "name":"MoonBreeze", "blog_num":35}
相关文章:
python2.7+mongo3.0+gridfs从mongodb下载图片及属性数据
python进行mongodb-gridfs去重