Mongo DB を WSL on Ubuntu にインスト�`ルする
峻さん、こんにちは。晦永蝕�kグル�`プの稼-看噛温敬温稼です。
栖�L諮袗(2/3)は准蛍ですね。咐剩祇でその定の牽綪鯔召詆���に�r縬颪�おり、その�r縬颪�壓する圭了を�{圭と冱います。�{圭��の兆念の喇栖はその�{圭から栖ており、�r縬颪�いる圭�鬚墨鬚韻栃海戮襪帆爾い箸気譴泙后�ちなみに書定は掴掴叫です。
云籾です。
恷除、とある並秤からMongo DBを茶��しています。Mongo DBはドキュメント峺�鬟禰`タベ�`スであり、リレ�`ショナルデ�`タベ�`ス��RDB��とは�拱屬���なりますので、まずは乾って��えたいところです。書指は WSL on Ubuntu のロ�`カル�h廠でMongo DBをインスト�`ルする返��をまとめました。
朕肝
Mongo DB
Mongo DBとは��
Mongo DB はドキュメント峺�鬟禰`タベ�`スと柵ばれるNoSQLの匯�Nです。ドキュメント峺�鬟禰`タベ�`スとは、その兆の宥り、ドキュメントを隠贋するデ�`タベ�`スのことです。Mongo DBでは、BSONと柵ばれる、JSONに掲械によく貌た侘塀でデ�`タを隠贋します。
Oracle吉を旗燕とするRDBとの�`いは、その悲��來にあります。RDBはデ�`タを燕侘塀で隠贋し、その坪否は掲械に��鯉です。匯圭、Mongo DBではスキ�`マレスを�駻辰靴討�り、ドキュメントの坪否が��なっていても���}なく隠贋できます。これは碧���筝�吉により��朕が���pしてもDB�箸淋O協を�筝�することなく、悲��に�_�kを�Mめることができます。
Mongo DBはドキュメント峺�鬟禰`タベ�`スとして恷も噸式しており、AWSやAzureなどのクラウド�h廠で戻工されるドキュメント峺�鬟禰`タベ�`スは、Mongo DB札�Qとなっています。
インスト�`ル返乏
WSL on Ubuntu の�h廠にMongo DBをインスト�`ルします。Ubuntuのバ�`ジョンは24.04 LTSです。Mongo DBをインスト�`ルする念に、UbuntuにDockerをインスト�`ルする駅勣があります。Dockerのインスト�`ルはを歌深にしてください。
Atras CLI のインスト�`ル
Mongo DBをインスト�`ルするには、Atras CLIをインスト�`ルする駅勣があります。Atras CLIのインスト�`ルにはを歌深にしました。
# aptで聞喘される巷�_�Iをインポ�`トする
curl -fsSL https://pgp.mongodb.com/server-7.0.asc | sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg --dearmor
# Mongo DB のエディションのリストファイルを恬撹する
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
# Atras CLI をインスト�`ルする
sudo apt update && sudo apt install -y mongodb-atlas恷瘁にAtlas CLI のインスト�`ルが撹孔していることを�_�Jしましょう。
atlas --versionMongo DB をインスト�`ル
Mongo DBをロ�`カル�h廠にインスト�`ルします。インスト�`ルにはを歌深にしました。
sudo atlas deployments setup myDeployment --type local --mdbVersion 8.0 --port 27017 --connectWith skip撹孔すると參和のメッセ�`ジが竃薦されます。
Deployment created!
Connection string: "mongodb://localhost:27017/?directConnection=true"
強恬鳩範
コンソ�`ルから Mongo DB にアクセスするには、mongoshと柵ばれるツ�`ルを聞います。mongoshはAtras CLIのインスト�`ル�rに、匯�wにインスト�`ルされていますので、蒙�eな返��をせずとも聞うことができます。
sudo atlas deployments connect myDeployment --connectWith mongoshデ�`タを�携襪靴泙后�
AtlasLocalDev myDeployment [direct: primary] test> db.users.insertOne({name: "n-ozawan"})
{
acknowledged: true,
insertedId: ObjectId('6976cf8f6327271a368de667')
}�携襪靴織禰`タを函り竃します。
AtlasLocalDev myDeployment [direct: primary] test> db.users.find()
[
{ _id: ObjectId('6976cf8f6327271a368de667'), name: 'n-ozawan' }
]おわりに
Mongo DBはJSONに掲械によく貌たドキュメントを�Qいますので、とてもとっつきやすいデ�`タベ�`スです。とはいえ、NoSQLはこれまでのRDBとは�拱屬���なりますので、�g�Hに乾ってみないことには蛍からないことが謹いです。ロ�`カル�h廠で挫き�拱屬防�?と��せるのは措いですね。
ではまた。
