Menyiapkan persekitaran Pymongo anda
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.
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 $
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 $
untuk mendapatkannya. m bin
$ m bin 4.0.0 /usr/local/m/versions/4.0.1/bin $
: 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
$ 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() --- >
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 $
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 $
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!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

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

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











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

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

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

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

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
