您的位置:首页 > 数据库 > Mongodb

Ubuntu下安装mongodb及一些基本操作

2017-05-05 13:24 711 查看

Ubuntu版本

Ubuntukylin16.4

安装mongodb

首先设置Ubuntu的软件更新源为阿里云



然后执行以下命令

sudo apt-key adv –keyserver hkp://keyserver.ubuntu.com:80 –recv EA312927

echo “deb http://mirrors.aliyun.com/mongodb/apt/ubuntu xenial/mongodb-org/3.2 multiverse” | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list

sudo apt-get install -y mongodb-org

如果安装不成功,显示错误无法连接到repo.mongodb.org,可以通过命令,用以下内容覆盖,将更新源改为阿里云

sudo gedit /etc/apt/sources.list

deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ xenial-proposed main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse

并在系统的更新内设置,如下,只勾选阿里云的更新



重新执行安装命令。

测试mongodb

//启动
sudo service mongod start
//查看是否启动
netstat -lanp | grep "27017"


操作mongodb

1.连接至mongodb数据库

//查看安装在哪个文件夹
which mongo
//进入安装目录 连接至mongodb
./mongo


2.准备数据

//此时已连接至mongodb  声明数据对象
var students= [{
name:"jim",
age:25,
email:"75431457@qq.com",
c:89,m:96,e:87,
country:"USA",
books:["JS","C++","EXTJS","MONGODB"]
},
{
name:"tom",
age:25,
email:"214557457@qq.com",
c:75,m:66,e:97,
country:"USA",
books:["PHP","JAVA","EXTJS","C++"]
},
{
name:"lili",
age:26,
email:"344521457@qq.com",
c:75,m:63,e:97,
country:"USA",
books:["JS","JAVA","C#","MONGODB"]
},
{
name:"zhangsan",
age:27,
email:"2145567457@qq.com",
c:89,m:86,e:67,
country:"China",
books:["JS","JAVA","EXTJS","MONGODB"]
},
{
name:"lisi",
age:26,
email:"274521457@qq.com",
c:53,m:96,e:83,
country:"China",
books:["JS","C#","PHP","MONGODB"]
},
{
name:"wangwu",
age:27,
email:"65621457@qq.com",
c:45,m:65,e:99,
country:"China",
books:["JS","JAVA","C++","MONGODB"]
},
{
name:"zhaoliu",
age:27,
email:"214521457@qq.com",
c:99,m:96,e:97,
country:"China",
books:["JS","JAVA","EXTJS","PHP"]
},
{
name:"piaoyingjun",
age:26,
email:"piaoyingjun@uspcat.com",
c:39,m:54,e:53,
country:"Korea",
books:["JS","C#","EXTJS","MONGODB"]
},
{
name:"lizhenxian",
age:27,
email:"lizhenxian@uspcat.com",
c:35,m:56,e:47,
country:"Korea",
books:["JS","JAVA","EXTJS","MONGODB"]
},
{
name:"lixiaoli",
age:21,
email:"lixiaoli@uspcat.com",
c:36,m:86,e:32,
country:"Korea",
books:["JS","JAVA","PHP","MONGODB"]
},
{
name:"zhangsuying",
age:22,
email:"zhangsuying@uspcat.com",
c:45,m:63,e:77,
country:"Korea",
books:["JS","JAVA","C#","MONGODB"]
}]

//插入数据到mongodb
>for(var i=0;i<students.length;i++){db.students.insert(students[i]);}


3.查询数据

//查询所有学生  前面{}的为查询条件 后面的{}为查询字段 1为显示 0为不显示
db.students.find({},{name:1,email:1})

//查询age和name字段,条件是age>=25 和age < 27,同时不包括主键
Db.students.find({age:{$gte:25,$lt:27}},{_id:0,name:1,age:1})

//查询不是中国的学生  并将输出格式化
Db.students.find({country:{$ne:”china”}}).pretty()

//查询国籍是中国或美国的学生:
db.students.find({country:{$in:[“China”,”USA”]}})

//查询语文成绩>85或者英语成绩>90的学生:
db.students.find({$or:[{c:{$gt:85}},{e:{$gt:90}}]})

//查询名字中存在”li”的学生信息:
db.students.find({name:/li/})

//查询出喜欢看MONGODB和JS的学生:
db.students.find({books:{$all:["JS","MONGODB"]}},{_id:0,name:1,books:1}).pretty()

//查询出喜欢的书籍数量是4本的学生,限制返回3条数据:
db.students.find({books:{$size:4}}).limit(3)

//查询tom喜欢的2~4本书:   1,3为books数组下标
db.students.find({name:”tom”},{books:{$slice:[1,3]}})

//查询出student文档中第5~10条数据
db.students.find({},{_id:0,name:1}).limit(5).skip(5)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mongodb ubuntu