下面是“Ubuntu环境下mongodb安装配置详细步骤”的完整攻略,其中包含两条示例说明。
安装mongodb
1. 添加mongodb官方apt源
打开终端,输入以下命令:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
echo "deb http://repo.mongodb.org/apt/ubuntu $(lsb_release -sc)/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list
2. 更新apt源列表
打开终端,输入以下命令:
sudo apt-get update
3. 安装mongodb
打开终端,输入以下命令:
sudo apt-get install -y mongodb-org
配置mongodb
1. 创建mongodb数据存储目录
打开终端,输入以下命令:
sudo mkdir -p /data/db
sudo chown -R `id -u` /data/db
2. 启动mongodb服务
打开终端,输入以下命令:
sudo service mongod start
示例1:使用mongo shell连接mongodb
1. 打开mongo shell
打开终端,输入以下命令:
mongo
2. 插入数据
在mongo shell中,输入以下命令:
db.test.insert({name:"John",age:20})
3. 查询数据
在mongo shell中,输入以下命令:
db.test.find()
示例2:使用node.js连接mongodb
1. 安装node.js驱动程序
打开终端,输入以下命令:
npm install mongodb --save
2. 连接mongodb
在node.js代码中,输入以下代码:
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017';
const dbName = 'myproject';
MongoClient.connect(url, function(err, client) {
console.log("Connected successfully to server");
const db = client.db(dbName);
client.close();
});
3. 插入数据
在node.js代码中,输入以下代码:
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017';
const dbName = 'myproject';
MongoClient.connect(url, function(err, client) {
console.log("Connected successfully to server");
const db = client.db(dbName);
const collection = db.collection('documents');
// 插入一条数据
collection.insertOne({a:1}, function(err, result) {
console.log("Inserted 1 document into the collection");
client.close();
});
});
4. 查询数据
在node.js代码中,输入以下代码:
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017';
const dbName = 'myproject';
MongoClient.connect(url, function(err, client) {
console.log("Connected successfully to server");
const db = client.db(dbName);
const collection = db.collection('documents');
// 查询数据
collection.find({}).toArray(function(err, docs) {
console.log("Found the following records");
console.log(docs);
client.close();
});
});