Rumah >Peranti teknologi >industri IT >Menyiapkan persekitaran Pymongo anda

Menyiapkan persekitaran Pymongo anda

Jennifer Aniston
Jennifer Anistonasal
2025-02-15 13:20:12209semak imbas

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).

<code class="language-bash">$ 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
$</code>
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.

<code class="language-bash">$ 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
$</code>
Jika anda perlu menggunakan laluan secara langsung dalam program lain, anda boleh menggunakan

untuk mendapatkannya. m bin

<code class="language-bash">$ m bin 4.0.0
/usr/local/m/versions/4.0.1/bin
$</code>
Untuk menjalankan fail binari yang sepadan, gunakan

: m use stable

<code class="language-bash">$ 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
</code>
Sekarang kita mempunyai pelayan yang sedang berjalan, kita dapat mengesahkan bahawa ia berfungsi dengan betul melalui sambungan shell Mongo.

<code class="language-bash">$ 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()
---

>
</code>
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.

<code class="language-bash">$ 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
$</code>

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:

<code class="language-bash">$ 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
$</code>

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:
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