mongodb:linux操作
1 安装和启动
安装:apt-get install mongodb
启动:sudo mongod
用mongodb 写操作语句的时候先在mongo中操作一遍会降低开发的难度
可视化工具robomogo:https://robomongo.org/download
2 创建数据库管理员和给数据库设置用户名和密码
创建mongodb数据库管理员
> use admin
switched to db admin
> db.createUser({user:"root",pwd:"root",roles:["userAdminAnyDatabase"]})
Successfully added user: { "user" : "root", "roles" : [ "userAdminAnyDatabase" ] }
这个例子创建了一个名为 root 的用户管理员。创建完了这个用户之后,我们应该马上以该用户的身份登录:
> db.auth("root","root")
1
创建数据库用户
> use test
switched to db test
> db.createUser({user:"root",pwd:"root",roles:["readWrite"]})
Successfully added user: { "user" : "testuser", "roles" : [ "readWrite" ] }
> db.auth("root","root")
1
3 基本操作
测试mongo能不能连得上
mongo --host xxx.xxx.xxx.xx
use test 进入表中
db 查看时什么数据库
db.stats(); 查看数据库信息
db.test.stats();查看数据库test表信息
创建唯一索引:
第一层的:
db.phone_code.ensureIndex({"phone_num":1},{"unique":true})
db.phone_code.getIndexes()
多层深入的:
db.users.ensureIndex({"wechat_info.token_info.unionid":1},{"unique":true})
db.users.getIndexes()
db.test.ensureIndex({"username":1})
可以通过下面的名称查看索引是否已经成功建立:
> db.test.getIndexes()
删除索引的命令是:
> db.test.dropIndex({"username":1})
在MongoDB中,我们同样可以创建复合索引,如:
-- 数字1表示username键的索引按升序存储,-1表示age键的索引按照降序方式存储。
> db.test.ensureIndex({"username":1, "age":-1})
进入数据库中查看表数据
use test
db.scans.find({}) 查看数据库中表为scans的所有记录
db.users.find({})
进入数据库中删除表
db.users.drop({})
删除库
use test
db.dropDatabase()
删除集合
use mydb
show collections
db.users.drop()
db.users.ensureIndex({"user_id":1},{"unique":true})
db.users.getIndexes()