Jadual Kandungan
Kesimpulan
Rumah Peranti teknologi industri IT Menyiapkan persekitaran Pymongo anda

Menyiapkan persekitaran Pymongo anda

Feb 15, 2025 pm 01:20 PM

Setting up Your PyMongo Environment

Artikel ini pada asalnya diterbitkan di laman web MongoDB. Terima kasih kepada rakan kongsi kami yang menyokong SitePoint!

Artikel ini akan membimbing pemaju bagaimana mengendalikan pangkalan data MongoDB menggunakan bahasa pengaturcaraan Python. Pymongo adalah perpustakaan pelanggan untuk berinteraksi dengan pelayan MongoDB (yang kami panggil "pemandu" di MongoDB).

Pertama sekali, kita perlu memasang toolchain yang digunakan oleh pemaju python MongoDB yang biasa.

mata utama

    Pymongo adalah perpustakaan klien Python untuk berinteraksi dengan pelayan MongoDB dan boleh dipasang menggunakan PIP Python Package Manager. Adalah disyorkan untuk menggunakan persekitaran maya untuk mengasingkan kod Pymongo anda.
  • Alat "M" digunakan untuk mengurus dan menggunakan pelbagai pemasangan pelayan MongoDB selari, dan boleh dipasang menggunakan NPM (Pengurus Pakej Node.js). Ia amat berguna untuk mencuba beta sambil terus membangunkan versi yang stabil.
  • Selepas memasang MongoDB dan Pymongo, anda boleh menggunakan Mongoclient untuk mewujudkan sambungan antara klien dan pelayan. Ini membolehkan pemaju mengeluarkan arahan ke pelayan dan berinteraksi dengan pangkalan data menggunakan Python.
Pemasangan M

Pertama sekali, m. Kecuali carian anda adalah "MongoDB M", sukar untuk mencarinya dalam talian, alat untuk pengurusan dan pemasangan selari menggunakan pelbagai pelayan MongoDB. Jika anda ingin mencuba versi beta terkini dan terbaik tetapi masih mahu terus melakukan pembangunan utama pada versi stabil semasa, ini adalah alat yang sangat berharga.

Cara paling mudah untuk memasang M ialah menggunakan NPM, iaitu Pengurus Pakej Node.js (ternyata lebih daripada sekadar node.js).

$ sudo npm install -g m
Password:******
/usr/local/bin/m -> /usr/local/lib/node_modules/m/bin/m
+ m@1.4.1
updated 1 package in 2.361s
$
Salin selepas log masuk
Salin selepas log masuk
Jika anda tidak boleh atau tidak mahu menggunakan NPM, anda boleh memuat turun dan memasangnya terus dari repositori GitHub. Sila rujuk ReadMe di sana untuk maklumat lanjut.

Hari ini kita akan menggunakan M untuk memasang versi pengeluaran yang stabil (4.0.2 pada masa penulisan).

Kami menjalankan perintah stabil untuk mencapai matlamat ini.

$ m stable
MongoDB version 4.0.2 is not installed.
Installation may take a while. Would you like to proceed? [y/n] y
... installing binary

######################################################################## 100.0%
/Users/jdrumgoole
... removing source
... installation complete
$
Salin selepas log masuk
Salin selepas log masuk
Jika anda perlu menggunakan laluan secara langsung dalam program lain, anda boleh menggunakan

untuk mendapatkannya. m bin

$ m bin 4.0.0
/usr/local/m/versions/4.0.1/bin
$
Salin selepas log masuk
Untuk menjalankan fail binari yang sepadan, gunakan

: m use stable

$ m use stable
2018-08-28T11:41:48.157+0100 I CONTROL  [main] Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols 'none'
2018-08-28T11:41:48.171+0100 I CONTROL  [initandlisten] MongoDB starting : pid=38524 port=27017 dbpath=/data/db 64-bit host=JD10Gen.local
2018-08-28T11:41:48.171+0100 I CONTROL  [initandlisten] db version v4.0.2
2018-08-28T11:41:48.171+0100 I CONTROL  [initandlisten] git version: fc1573ba18aee42f97a3bb13b67af7d837826b47

...
2018-06-13T15:52:43.648+0100 I NETWORK  [initandlisten] waiting for connections on port 27017
Salin selepas log masuk
Sekarang kita mempunyai pelayan yang sedang berjalan, kita dapat mengesahkan bahawa ia berfungsi dengan betul melalui sambungan shell Mongo.

$ mongo
MongoDB shell version v4.0.0
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 4.0.0
Server has startup warnings:
2018-07-06T10:56:50.973+0100 I CONTROL  [initandlisten]
2018-07-06T10:56:50.973+0100 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2018-07-06T10:56:50.973+0100 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2018-07-06T10:56:50.973+0100 I CONTROL  [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2018-07-06T10:56:50.973+0100 I CONTROL  [initandlisten]
2018-07-06T10:56:50.973+0100 I CONTROL  [initandlisten] ** WARNING: This server is bound to localhost.
2018-07-06T10:56:50.973+0100 I CONTROL  [initandlisten] **          Remote systems will be unable to connect to this server.
2018-07-06T10:56:50.973+0100 I CONTROL  [initandlisten] **          Start the server with --bind_ip  to specify which IP
2018-07-06T10:56:50.973+0100 I CONTROL  [initandlisten] **          addresses it should serve responses from, or with --bind_ip_all to
2018-07-06T10:56:50.973+0100 I CONTROL  [initandlisten] **          bind to all interfaces. If this behavior is desired, start the
2018-07-06T10:56:50.973+0100 I CONTROL  [initandlisten] **          server with --bind_ip 127.0.0.1 to disable this warning.
2018-07-06T10:56:50.973+0100 I CONTROL  [initandlisten]

---
Enable MongoDB's free cloud-based monitoring service to collect and display
metrics about your deployment (disk utilization, CPU, operation statistics,
etc).

The monitoring data will be available on a MongoDB website with a unique
URL created for you. Anyone you share the URL with will also be able to
view this page. MongoDB may use this information to make product
improvements and to suggest MongoDB products and deployment options to you.

To enable free monitoring, run the following command:
db.enableFreeMonitoring()
---

>
Salin selepas log masuk
Amaran ini adalah standard. Mereka menunjukkan bahawa secara lalai pangkalan data ini tidak mempunyai set kawalan akses dan ia hanya mendengar sambungan dari mesin yang sedang berjalan ( localhost ). Kami akan belajar bagaimana untuk menyediakan kawalan akses dan mendengar pelbagai pelabuhan yang lebih luas dalam artikel masa depan.

Memasang Pemandu Pymongo

tetapi siri ini bukan mengenai shell Mongodb (yang menggunakan JavaScript sebagai bahasa utamanya), tetapi mengenai Python. Bagaimana kita menyambung ke pangkalan data menggunakan python?

Pertama sekali, kita perlu memasang Pymongo Pemandu Python MongoDB. Dalam istilah MongoDB, pemandu adalah perpustakaan klien khusus bahasa yang membolehkan pemaju berinteraksi dengan pelayan menggunakan idiom bahasa pengaturcaraan mereka sendiri.

Untuk python, ini bermakna menggunakan PIP untuk memasang pemandu. Dalam node.js, pemandu dipasang menggunakan NPM, dan Maven boleh digunakan di Java.

$ sudo npm install -g m
Password:******
/usr/local/bin/m -> /usr/local/lib/node_modules/m/bin/m
+ m@1.4.1
updated 1 package in 2.361s
$
Salin selepas log masuk
Salin selepas log masuk

Kami mengesyorkan agar anda menggunakan persekitaran maya untuk mengasingkan kod Pymongo anda. Ini tidak diperlukan, tetapi sangat mudah untuk mengasingkan aliran pembangunan yang berbeza.

sekarang kita boleh menyambung ke pangkalan data:

$ m stable
MongoDB version 4.0.2 is not installed.
Installation may take a while. Would you like to proceed? [y/n] y
... installing binary

######################################################################## 100.0%
/Users/jdrumgoole
... removing source
... installation complete
$
Salin selepas log masuk
Salin selepas log masuk

Pertama, kami mengimport perpustakaan Pymongo (1) . Kemudian, kami membuat objek klien tempatan (2) yang menjimatkan kolam sambungan dan negeri -negeri lain pelayan ini. Kami biasanya tidak mahu pelbagai objek mongoclient setiap program kerana ia menyediakan kolam sambungan sendiri.

Sekarang kita boleh mengeluarkan arahan ke pelayan. Dalam kes ini, ia adalah perintah maklumat pelayan MongoDB standard, agak ketinggalan zaman dipanggil Ismaster (3) . Ini ditinggalkan dari versi terdahulu MongoDB. Ia muncul dalam versi MongoDB sebelum 1.0 (ia telah wujud selama lebih dari satu dekad sekarang). Perintah Ismaster mengembalikan kamus yang memperincikan banyak maklumat pelayan. Untuk memformatnya dengan cara yang lebih mudah dibaca, kami mengimport perpustakaan PPRINT.

Kesimpulan

Kami telah memasang MongoDB, memasang Python Client Library (AKA Driver), memulakan pelayan Mongod, dan menubuhkan sambungan antara klien dan pelayan.

Minggu depan kami akan memperkenalkan operasi CRUD di MongoDB, bermula dengan penciptaan.

Untuk maklum balas langsung, sila tanya soalan anda di Twitter/Jdrumgoole. Dengan cara ini semua orang dapat melihat jawapannya.

Cara terbaik untuk mencuba MongoDB adalah melalui MongoDB Atlas, yang merupakan pangkalan data yang diuruskan sepenuhnya-sebagai-perkhidmatan yang kami tawarkan pada AWS, Google Cloud Platform (CGP), dan Azure.

(bahagian Soalan Lazim ditinggalkan kerana ia tidak berkaitan dengan kandungan artikel utama dan akan meningkatkan panjang output. Ia juga merupakan satu set standard arahan yang mudah dijumpai di tempat lain.)

Atas ialah kandungan terperinci Menyiapkan persekitaran Pymongo anda. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

<🎜>: Bubble Gum Simulator Infinity - Cara Mendapatkan dan Menggunakan Kekunci Diraja
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Sistem Fusion, dijelaskan
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Cara Membuka Kunci Cangkuk Bergelut
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1666
14
Tutorial PHP
1272
29
Tutorial C#
1251
24
CNCF Arm64 Pilot: Impak dan Wawasan CNCF Arm64 Pilot: Impak dan Wawasan Apr 15, 2025 am 08:27 AM

Program perintis ini, kerjasama antara CNCF (Yayasan Pengkomputeran Native Cloud), pengkomputeran ampere, equinix metal, dan digerakkan, menyelaraskan ARM64 CI/CD untuk projek GitHub CNCF. Inisiatif ini menangani kebimbangan keselamatan dan prestasi lim

Paip pemprosesan imej tanpa pelayan dengan AWS ECS dan Lambda Paip pemprosesan imej tanpa pelayan dengan AWS ECS dan Lambda Apr 18, 2025 am 08:28 AM

Tutorial ini membimbing anda melalui membina saluran paip pemprosesan imej tanpa pelayan menggunakan perkhidmatan AWS. Kami akan membuat frontend next.js yang digunakan pada kluster ECS Fargate, berinteraksi dengan Gateway API, Fungsi Lambda, Bucket S3, dan DynamoDB. Th

Surat berita pemaju 21 teratas untuk melanggan pada tahun 2025 Surat berita pemaju 21 teratas untuk melanggan pada tahun 2025 Apr 24, 2025 am 08:28 AM

Tinggal maklumat mengenai trend teknologi terkini dengan surat berita pemaju teratas ini! Senarai ini menawarkan sesuatu untuk semua orang, dari peminat AI ke pemaju backend dan frontend yang berpengalaman. Pilih kegemaran anda dan menjimatkan masa mencari rel

Faedah perisian telekomunikasi tersuai Faedah perisian telekomunikasi tersuai May 11, 2025 am 08:28 AM

Pembangunan perisian telekom yang disesuaikan tidak dapat diragukan lagi merupakan pelaburan yang besar. Walau bagaimanapun, dalam jangka masa panjang, anda mungkin menyedari bahawa projek sedemikian mungkin lebih kos efektif kerana ia dapat meningkatkan produktiviti anda seperti penyelesaian siap sedia di pasaran. Memahami kelebihan yang paling penting untuk membina sistem telekomunikasi yang disesuaikan. Dapatkan ciri tepat yang anda perlukan Terdapat dua masalah yang berpotensi dengan perisian telekomunikasi di luar rak yang boleh anda beli. Sesetengah kekurangan ciri berguna yang dapat meningkatkan produktiviti anda dengan ketara. Kadang -kadang anda dapat meningkatkannya dengan beberapa integrasi luaran, tetapi itu tidak selalu cukup untuk menjadikannya hebat. Perisian lain mempunyai terlalu banyak fungsi dan terlalu rumit untuk digunakan. Anda mungkin tidak akan menggunakan beberapa perkara ini (tidak pernah!). Sebilangan besar ciri biasanya menambah harga. Berdasarkan keperluan anda

CNCF mencetuskan penemuan pariti platform untuk ARM64 dan x86 CNCF mencetuskan penemuan pariti platform untuk ARM64 dan x86 May 11, 2025 am 08:27 AM

Teka -teki dan penyelesaian CI/CD untuk perisian sumber terbuka dalam seni bina ARM64 Menggunakan perisian sumber terbuka pada seni bina ARM64 memerlukan persekitaran CI/CD yang kuat. Walau bagaimanapun, terdapat perbezaan antara tahap sokongan ARM64 dan seni bina pemproses tradisional x86, yang sering merugikan. Pemaju komponen infrastruktur untuk pelbagai seni bina mempunyai jangkaan tertentu untuk persekitaran kerja mereka: Konsistensi: Alat dan kaedah yang digunakan di seluruh platform adalah konsisten, mengelakkan keperluan untuk mengubah proses pembangunan disebabkan penggunaan platform yang kurang popular. Prestasi: Platform dan mekanisme sokongan mempunyai prestasi yang baik untuk memastikan senario penempatan tidak terjejas oleh kelajuan yang tidak mencukupi apabila menyokong pelbagai platform. Liputan Ujian: Kecekapan, Pematuhan dan

See all articles