I have to conclusion how to setup MongoDB (NoSQL) with Jupyter Notebook by summary step like this.
First step, Install python 3.9.1 for use on python, install $ pip install pymongo
.
Second step, Install homebrew with $ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
Third step, Install Jupyter Notebook on Windows, MacOS or Linux and try to install $ pip install notebook
in terminal and run $ jupyter notebook
Fourth step, Install MongoDB Community Edition on macOS mongoDB and MongoDB Compass
install $ brew tap mongodb/brew
and $ brew install mongodb-community
Install MongoDB on Ubuntu
$ sudo apt update
$ sudo apt install wget curl gnupg2 software-properties-common apt-transport-https ca-certificates lsb-release
$ curl -fsSL https://www.mongodb.org/static/pgp/server-6.0.asc|sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/mongodb-6.gpg
$ echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list
$ wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.16_amd64.deb
$ sudo dpkg -i ./libssl1.1_1.1.1f-1ubuntu2.16_amd64.deb
$ sudo apt update
$ sudo apt install mongodb-org
$ sudo systemctl enable --now mongod
Checking config of mongod.conf on development mode
$ sudo vi /etc/mongod.conf
#add this line
security:
authorization: enabled
# network interfaces
net:
port: 27017
bindIp: 0.0.0.0 # Change to global
Restart service again with $ sudo service mongod restart
Create the “db” directory where MongoDB stores its database by $ mkdir -p /data/db
Make sure that the directory has the previlage to read and write from the directory by using chown (change owner) with $ chown -R 'id -un'/data/db
Start MongoDB command : $ brew services start mongodb-community
Using $ ps aux | grep -v grep |grep mongod
, allow us to verify that MongoDB is running. You should see the current ststus of your mongod process.
On Ubuntu, You can followup setup directory like this.
$ sudo systemctl stop mongod.service
$ sudo mkdir -p /newdata/mongo
$ sudo chown -R mongodb:mongodb /newdata/mongo
$ sudo rsync -av /var/lib/mongodb /newdata/mongo
$ sudo mv /var/lib/mongodb /var/lib/mongodb.bak
$ sudo ln -s /newdata/mongo /var/lib/mongodb
$ sudo systemctl daemon-reload
$ sudo systemctl start mongod
Five step, Install mongosh for start mongosh, MongoDB Shell and create role user on database
$ mongosh
test> use admin
test> db.createUser({user: "myUserAdmin", pwd: "abc123", roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ]})
test> exit
$ mongosh -u mongdbuser -p --authenticationDatabase admin
Enter password: ********
write the code below
import pymongo
from pymongo import MongoClient
username='myUserAdmin'
password='abc123'
client = MongoClient('mongodb://%s:%s@127.0.0.1' % (username, password))
db=client['mongotestdb']
my_collection = db["patient_data"]
patient_record = {
"Name": "Maureen Skinner",
"Age": 87,
"Sex": "F",
"Blood pressure": [{"sys": 156}, {"dia": 82}],
"Heart rate": 82
}
my_collection.insert_one(patient_record)
for item in my_collection.find():
print(item)
Result on MongoDB Compass
Stop MongoDB command : $ brew services stop mongodb-community
Reference: MongoDB tutorial, mongosh, Building Data Pipeline | Spotify - Jupyter Notebook - MongoDB, Connecting MongoDB to Jupyter Notebook, Example Query NoSQL, Setting user account, Using MongoDB in python, Install Jupyter Notebook on Ubuntu
Top comments (0)