mongodb使用总结

1.建立目录mongoDBnode

2.建立data目录,用来放数据文件
建立logs目录,用来放log日志
建立etc目录,用来放配置文件mongodb

3.在etc目录下建立mongo.conf文件,内容为
dbpath=/mongodb/data
logpath=/mongodb/logs/mongo.log
logappend=true
journal=true
quiet=true
port=27017数据库

4.vim的退出
按esc而后shift+:(冒号)
wq退出w保存,q退出vim

5.在bin目录下,使用
mongodb -f /mongodb/etc/mongo.confapp

6.更改指向,创建软链接
ln -s /mongodb/mongoose

ls -la查看全部软链接函数

mongod -f 测试

若是报mongod: commond not found
由于mongod没有配置到全局变量内,因此没法找到
解决
export MONGO_PATH=/User/XXX/mongod
export PATH=$PATH:$MONGO_PATH/binui

在bin目录下输入Mongod -f /Uers/xxx/mongodb/etc/mongo.conf日志

在一个窗口开启链接,mongod -f /Users/xxx/mongodb/mongodb-osx-x86_64-3.4.7/bin
另一个窗口输入mongo,查看链接状况

出现大于号成功,测试show dbs

受权方式启动Mongo
mongod -f /User/xxx/mongo/etc/mongod.conf --auth
加上--auth是受权方式

建立用户权限
db.createUser({user:"admin",pwd:"admin",roles:["root"]})
db.createUser({user:'admin',pwd:'admin',roles:[{role:'dbOwner', db: 'test'}])指定用户只有访问某一个数据库权限

db.auth("admin","admin")验证权限

控制台写入的格式以下:
db.createUser(
... {
... user:"test1",
... pwd: "test1",
... roles: [{ role: "readWrite", db: "test"}]
... }
... )


1.查看数据库
show dbs
2.建立数据库
ues dbname(此时数据库建立可是没有值是不会显示的)
3.建立集合(建立表)
db.createCollection("user")
db.users.insert({id:1, name: 'hello'})直接插入数据建立集合
4.查看集合
show collections
5.删除数据库
db.dropDatabase()选择完制定数据库,而后在执行此命令
6.删除集合
db.user.drop()
7.插入数据
db.user.insert({userId:101,userName:'jack',userAge:20,class:{name:'tm',num:10}})
8,显示全部数据
db.user.find()
db.user.find().pretty()格式化数据
db.user.findOne()查询第一条数据
9,修改数据
db.user.update({userName:'jack'},{$set:{userAge:30}})
10.更新子文档
db.user.update({'userName:'jack'},{$set:{'class.name':'test'}}) 'class.name'用引号包裹
11.带条件搜索
db.user.find(userAge:{$lt:40}) 小于某个值
db.user.find(userAge:{$gt:50}) 大于某个值
db.user.find(userAge:{$gte:20}) 大于等于某个值
12.删除表中数据
db.user.remove({userId:11})

13.导入文件
mongoimport -d db_demo -c users --file /user/xxx/xx
-d(表明链接数据库) 后面跟得是文档名
-c(链接集合) 后面跟的是集合名
--file 是导入文件的路径

14.node下连接数据库
//若是是带帐号和密码,格式是mongodb://帐号:密码@ip:端口/数据名称
mongoose.connect('mongodb://127.0.0.1:27017/dumall')

15.建表时,表要加s如goods
否则在写关联数据表时,须要在model中用第三个参数,以下面:
mongoose.model('Good', productSchema, 'good')
第三个参数是制定和哪张表关联

16.mongoose中排序和分页函数Goods.find(params).skip(skip).limit(pageSize).sort({'salePrice': sort}).exec(function(err, doc){ })

相关文章
相关标签/搜索