MySQL एक अत्यधिक लोकप्रिय डेटाबेस प्रबंधन प्रणाली है जो सभी आकारों की परियोजनाओं को शक्ति प्रदान कर सकती है। बिना पसीना बहाए बड़ी मात्रा में डेटा को संभालने की इसकी क्षमता इसके सबसे बड़े विक्रय बिंदुओं में से एक है। MySQL को PHP कोड से कनेक्ट करें, आप तीन तरीकों में से एक का उपयोग कर सकते हैं।
बैकएंड के माध्यम से MySQL डेटाबेस को जोड़ने के लिए PHP में तीन प्रकार की विधियाँ हैं:
- MySQL
- MySQLi
- पीडीओ
SQL इंजेक्शन आदि जैसे सुरक्षा मुद्दों के कारण mysql() अब अप्रचलित है, लेकिन अन्य दो सक्रिय रूप से उपयोग किए जा रहे हैं।
MySQLi
MySQLi एक एपीआई है जिसका उपयोग कनेक्टर फ़ंक्शन के रूप में PHP ऐप के बैकएंड को MySQL डेटाबेस से लिंक करने के लिए किया जाता है। यह पिछले संस्करण की तरह ही काम करता है, लेकिन यह सुरक्षित और तेज़ है, और फ़ंक्शंस और एक्सटेंशन का एक बेहतर सेट प्रदान करता है। MySQLi को PHP 5.0.0 के साथ पेश किया गया था और ड्राइवरों को 5.3.0 में स्थापित किया गया था। एपीआई को संस्करण 4.1.13 से नए संस्करण में MySQL का समर्थन करने के लिए डिज़ाइन किया गया था।
पीडीओ
PHP डेटा ऑब्जेक्ट (PDO) एक्सटेंशन एक डेटाबेस एब्स्ट्रेक्शन लेयर है। यह बैकएंड के लिए MySQL डेटाबेस के साथ इंटरैक्ट करने और PHP कोड में कोई बदलाव किए बिना परिवर्तन करने के लिए एक इंटरफ़ेस की तरह है। यह आपको कई डेटाबेस के साथ काम करने की स्वतंत्रता भी देता है। पीडीओ का उपयोग करने का प्रमुख लाभ यह है कि आपका कोड सरल और पोर्टेबल रहता है।
इस लेख में, मैं चर्चा करूँगा कि विभिन्न सर्वरों पर MySQL डेटाबेस को कैसे जोड़ा जाए और मैं आपको PDO का उपयोग करके डेटाबेस को जोड़ने का एक सिंहावलोकन भी दूंगा।
- MySQL को लोकलहोस्ट सर्वर से कनेक्ट करें
- क्लाउडवे सर्वर का उपयोग करके MySQL को कनेक्ट करें
- PDO का उपयोग करके MySQL को कनेक्ट करें
- MySQL को रिमोट MySQL से कनेक्ट करें
MYSQL चीट शीट अभी डाउनलोड करें
हम आपके इनबॉक्स में एक डाउनलोड लिंक भेजेंगे।
धन्यवाद
आपकी ईबुक आपके इनबॉक्स के रास्ते पर है।
लोकलहोस्ट पर MySQL डेटाबेस बनाएं
इससे पहले कि आप MySQL डेटाबेस से PHP कनेक्शन बनाना शुरू करें, आपको यह जानना होगा कि PHPMyAdmin क्या है। यह एक कंट्रोल पैनल है जहां से आप अपने द्वारा बनाए गए डेटाबेस को मैनेज कर सकते हैं। अपना ब्राउज़र खोलें और लोकलहोस्ट/PHPMyAdmin पर जाएं या XAMPP UI में "एडमिन" पर क्लिक करें।
जब आपने पहली बार XAMPP स्थापित किया था, तो इसने केवल उपयोगकर्ता नाम बनाया था ताकि इसे एक्सेस किया जा सके, अब आपको इसमें स्वयं एक पासवर्ड जोड़ना होगा। इसके लिए आपको यूजर अकाउंट में जाना होगा जहां यूजर वही है जो इस तस्वीर में दिखाया गया है:
अब विशेषाधिकार संपादित करें . क्लिक करें और चेंज एडमिन पासवर्ड में जाएं, वहां अपना पासवर्ड टाइप करें और इसे सेव करें। इस पासवर्ड को याद रखें क्योंकि इसका उपयोग आपके डेटाबेस से कनेक्ट करने के लिए किया जाएगा।
नोट:लोकलहोस्ट पर डेटाबेस एक्सेस करने के लिए पासवर्ड बदलना आवश्यक नहीं है। यह एक अच्छा अभ्यास है और इसीलिए हमने पासवर्ड का उपयोग किया है।
डेटाबेस बनाएं
अब PHPMyAdmin के होमपेज पर वापस आएं। नया क्लिक करें नया डेटाबेस बनाने के लिए बटन।
नई विंडो में, अपने डेटाबेस को अपनी आवश्यकता के अनुसार नाम दें, मैं इसे “अभ्यास . नाम दे रहा हूं " अब Collation को utf8_general_ci के रूप में चुनें, क्योंकि हम इसे सीखने के उद्देश्यों के लिए उपयोग कर रहे हैं और यह हमारे सभी प्रश्नों और डेटा को संभालेगा जो इस ट्यूटोरियल श्रृंखला में शामिल होंगे। अब बनाएं . पर क्लिक करें और आपका डेटाबेस बन जाएगा।
नया बनाया गया डेटाबेस अब खाली होगा, क्योंकि इसमें कोई टेबल नहीं है। मैं इसे आगामी श्रृंखला में कवर करूंगा जहां हम सीखेंगे कि टेबल कैसे बनाएं और उसमें डेटा कैसे डालें। इस ट्यूटोरियल में, हम इस डेटाबेस को PHP का उपयोग करके लोकलहोस्ट से कनेक्ट करने जा रहे हैं
htdocs में एक फ़ोल्डर बनाएं
अब, उस फ़ोल्डर का पता लगाएं जहां आपने XAMPP स्थापित किया था और htdocs फ़ोल्डर खोलें (आमतौर पर c:/xampp)। c:/xampp/htdocs/ के अंदर एक नया फ़ोल्डर बनाएं और इसे "अभ्यास" नाम दें, हम इस फ़ोल्डर में वेब फाइलें रखेंगे। हमने htdocs में फोल्डर क्यों बनाया है? XAMPP आपकी PHP साइटों को निष्पादित करने और चलाने के लिए htdocs में फ़ोल्डर का उपयोग करता है।
नोट:यदि आप WAMP का उपयोग कर रहे हैं, तो अपना अभ्यास फ़ोल्डर c:/wamp/www फ़ोल्डर में जोड़ें।
PHP में डेटाबेस कनेक्शन फ़ाइल बनाएँ
एक नई PHP फ़ाइल बनाएँ और इसे नाम दें db_connnection.php और इसे बचाओ। मैं एक अलग डेटाबेस कनेक्शन फ़ाइल क्यों बना रहा हूँ? क्योंकि यदि आपने कई फाइलें बनाई हैं जिनमें आप डेटा सम्मिलित करना चाहते हैं या डेटाबेस से डेटा का चयन करना चाहते हैं, तो आपको हर बार डेटाबेस कनेक्शन के लिए कोड लिखने की आवश्यकता नहीं है।
<?php function OpenCon() { $dbhost = "localhost"; $dbuser = "root"; $dbpass = "1234"; $db = "example"; $conn = new mysqli($dbhost, $dbuser, $dbpass,$db) or die("Connect failed: %s\n". $conn -> error); return $conn; } function CloseCon($conn) { $conn -> close(); } ?>
यहां वेरिएबल की व्याख्या दी गई है जिसका उपयोग हमने अपनी db_connection फ़ाइल में किया है:
- $dbhost वह होस्ट होगा जहां आपका सर्वर चल रहा है, यह आमतौर पर लोकलहोस्ट होता है।
- $dbuser उपयोगकर्ता नाम होगा यानी रूट और $dbpass वही पासवर्ड होगा जो आपने अपने PHPMyAdmin को एक्सेस करने के लिए इस्तेमाल किया था।
- $dbname आपके डेटाबेस का नाम होगा जिसे हमने इस ट्यूटोरियल में बनाया है।
आपको बस PHP कस्टम फ़ंक्शन का उपयोग करके इसे शामिल करना है शामिल करें ('connection.php' शामिल करें) अपने कोड के शीर्ष पर और इसके कार्य को कॉल करें और इसका उपयोग करें। यह तब भी मदद करता है जब आप अपने प्रोजेक्ट स्थान को एक पीसी से दूसरे पीसी पर ले जा रहे हों और आपको एकल फ़ाइल पर मानों को बदलना होगा और सभी परिवर्तन स्वचालित रूप से अन्य सभी फाइलों पर लागू हो जाएंगे।
अपना डेटाबेस कनेक्शन जांचने के लिए एक नई PHP फ़ाइल बनाएं
अपने डेटाबेस से कनेक्ट करने के लिए एक नई PHP फ़ाइल बनाएँ। इसे index.php नाम दें और इस कोड को इस फाइल में जोड़ें।
<?php include 'db_connection.php'; $conn = OpenCon(); echo "Connected Successfully"; CloseCon($conn); ?>
इसे चलाएं!
अब अपना ब्राउज़र खोलें और localhost/practice/index.php पर जाएँ और आपको यह स्क्रीन दिखाई देगी:
पुष्टिकरण संदेश
बधाई हो! आपने अपने डेटाबेस को अपने लोकलहोस्ट से सफलतापूर्वक जोड़ लिया है! यदि आप यह स्क्रीन नहीं देख पा रहे हैं, तो जांच लें कि क्या आपने अपनी db_connection.php फ़ाइल में सब कुछ ठीक किया है।
क्लाउडवे सर्वर पर MySQL डेटाबेस बनाएं
इस ट्यूटोरियल के उद्देश्य के लिए, मुझे लगता है कि आपके पास एक वेब सर्वर पर एक PHP एप्लिकेशन स्थापित है। मेरा सेटअप है:
- PHP 7.3
- MySQL
मैंने अपने PHP एप्लिकेशन को क्लाउडवे प्रबंधित सर्वर पर होस्ट करने का निर्णय लिया क्योंकि मुझे अत्यधिक अनुकूलित होस्टिंग स्टैक मिलता है और कोई सर्वर प्रबंधन परेशानी नहीं होती है। आप एक खाते के लिए साइन करके और फिर सर्वर और PHP एप्लिकेशन को सेट करने के लिए इस सरल जीआईएफ का पालन करके क्लाउडवे को मुफ्त में आज़मा सकते हैं। अपने लिए सही फिट खोजने के लिए AWS, Google Compute Engine, Vultr, Linode और Digital Ocean के लिए Cloudways होस्टिंग प्लान देखें।
Cloudways पर PHP एप्लिकेशन को सफलतापूर्वक लॉन्च करने के बाद एप्लिकेशन टैब में जाएं और डेटाबेस के विवरण की जांच करें और डेटाबेस मैनेजर लॉन्च करने के लिए बटन पर भी क्लिक करें। ।
MySQL डेटाबेस से कनेक्ट करें
डेटाबेस से कनेक्शन सेट करने के लिए mysql_connect . का उपयोग करें समारोह। यह फ़ंक्शन डेटाबेस कनेक्शन के लिए एक पॉइंटर (डेटाबेस हैंडल के रूप में भी जाना जाता है) देता है। इस हैंडल का इस्तेमाल बाद में कोड में किया जाएगा। एक बार आपके पास हैंडल हो जाने के बाद, अपने डेटाबेस क्रेडेंशियल जोड़ना याद रखें।
- एक नई PHP फ़ाइल बनाएं और उसे नाम दें db_connnection.php और इसे बचाओ।
मैं एक अलग डेटाबेस कनेक्शन फ़ाइल क्यों बना रहा हूँ? क्योंकि यदि आपने कई फाइलें बनाई हैं जिनमें आप डेटा सम्मिलित करना चाहते हैं या डेटाबेस से डेटा का चयन करना चाहते हैं, तो आपको हर बार डेटाबेस कनेक्शन के लिए कोड लिखने की आवश्यकता नहीं है। आपको बस अपने कोड के शीर्ष पर PHP कस्टम फ़ंक्शन शामिल ('connection.php' शामिल करें) का उपयोग करके इसे शामिल करना होगा और इसके फ़ंक्शन को कॉल करना होगा और इसका उपयोग करना होगा।
इस बिंदु पर आपके पास या तो MySQLi प्रक्रियात्मक कनेक्शन क्वेरी या PHP PDO आधारित डेटाबेस कनेक्शन का उपयोग करने का विकल्प है:
MySQLi प्रक्रियात्मक प्रश्न
<?php $servername = "localhost"; $username = "username"; $password = "password"; $db = "dbname"; // Create connection $conn = mysqli_connect($servername, $username, $password,$db); // Check connection if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } echo "Connected successfully"; ?>
PDO का उपयोग करके MySQL डेटाबेस को PHP से कनेक्ट करें
<?php $servername = "localhost"; $username = "username"; $password = "password"; $db = "dbname"; try { $conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password, $db); // set the PDO error mode to exception $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); echo "Connected successfully"; } catch(PDOException $e) { echo "Connection failed: " . $e->getMessage(); } ?>
कनेक्शन जांचें
<?php include 'db_connection.php'; echo "Connected Successfully"; mysqli_close($conn); ?>
के लिए पीडीओ कनेक्शन बंद करें इस तरह
$conn = null;
दूरस्थ MySQL
दूरस्थ PHP MySQL कनेक्शन के लिए अपने क्रेडेंशियल्स के साथ Cloudways प्लेटफ़ॉर्म में लॉग इन करें। “सर्वर” . पर क्लिक करें शीर्ष मेनू बार में। फिर, सूची से अपने लक्षित सर्वर पर क्लिक करें।
- इसके बाद, बाएं मेनू में सुरक्षा मेनू विकल्प पर जाएं, और फिर MySQL टैब पर क्लिक करें।
- आईपी पते को "श्वेतसूची में आईपी जोड़ें" टेक्स्ट क्षेत्र में जोड़ें और "जोड़ें" बटन पर क्लिक करें।
- यदि आपके पास एकाधिक IP पते हैं, तो प्रक्रिया को दोहराएं।
- एक बार जब आप कर लें, तो परिवर्तनों को अंतिम रूप देने के लिए "परिवर्तन सहेजें" बटन पर क्लिक करें
सफलतापूर्वक के बाद, IP श्वेतसूची को सेट करें और IP पते को कनेक्शन में सेट करें और क्वेरी चलाएँ।
शीर्ष MySQL प्रबंधन उपकरण
MySQL कार्यक्षेत्र
MySQL वर्कबेंच डेटाबेस डिजाइनरों, डेवलपर्स और डीबीए के लिए एक विज़ुअल टूल है। MySQL वर्कबेंच सर्वर व्यवस्था, क्लाइंट संगठन, सुदृढीकरण, और बहुत कुछ के लिए सूचना मॉडलिंग, SQL उन्नति और व्यापक संगठन उपकरण देता है। MySQL वर्कबेंच विंडोज, लिनक्स और मैक ओएस एक्स पर उपलब्ध है।
MySQL वर्कबेंच डेवलपर्स के लिए एक बहुत ही लोकप्रिय MySQL डेटाबेस मैनेजर है। यह सर्वर कॉन्फ़िगरेशन, उपयोगकर्ता प्रबंधन, और कई अन्य जैसे आसान प्रशासन उपकरण प्रदान करता है। यह मैक ओएस, लिनक्स और विंडोज ऑपरेटिंग सिस्टम के लिए उपलब्ध है।
हम उन सभी नवोदित डेवलपर्स को सलाह देते हैं जो अपने लाभ के लिए इसका उपयोग करने के लिए डेटाबेस प्रशासन सीखना चाहते हैं। प्रबंधन सुविधाएँ उन्हें डेटाबेस प्रशासन में पूर्ण रूप से महारत हासिल करने में मदद करेंगी।
पेशेवरों
- यह SQL स्टेटमेंट को सेव करता है
- दूरस्थ DB तक ऑफ़लाइन पहुंच प्रदान करता है
- एक ही स्थान पर अनेक कनेक्शन संग्रहीत करता है
- विजुअल स्कीमा और क्वेरी बिल्डर उपलब्ध है
विपक्ष
- PHPMyAdmin की तुलना में यह अधिक जटिल है।
- उपयोगकर्ता अक्सर सॉफ़्टवेयर क्रैश की रिपोर्ट करते हैं।
Navicat for MySQL
Navicat ग्राफिकल डेटाबेस प्रशासन और सॉफ्टवेयर विकास की एक श्रृंखला है। यह एक एकल एप्लिकेशन हो सकता है जो आपको एक ही समय में PHP MySQL कनेक्शन और मारियाडीबी डेटाबेस से संबद्ध करने की अनुमति देता है। Amazon RDS, Amazon Aurora, Oracle Cloud, Google Cloud, और Microsoft Azure जैसे क्लाउड डेटाबेस के साथ संगत।
MySQL के लिए Navicat सभी उन्नत उपकरण प्रदान करता है जो एक डेवलपर को अपने डेटाबेस संचालन को पूरी तरह से प्रबंधित करने के लिए आवश्यक होता है। क्लाउड डेटाबेस के साथ इसकी संगतता क्लाउड-आधारित एप्लिकेशन को प्रबंधित करते समय उपयोग करना आसान बनाती है। इसकी कुछ मुख्य विशेषताएं हैं:
पेशेवर:
- सहज, उपयोग में आसान UI.
- SSH टर्मिनल के माध्यम से MySQL डेटाबेस से आसान कनेक्शन प्रदान करता है।
- डेटाबेस जॉब शेड्यूल करें - बैकअप, रिस्टोर, रन रिपोर्ट, और बहुत कुछ।
- ODBC, Excel, Access, DBF, TXT, CSV, XML, JSON से डेटा आयात और निर्यात करें।
- विजुअल स्कीमा और क्वेरी बिल्डर उपलब्ध हैं।
- Windows, Linux, और MAC ऑपरेटिंग सिस्टम के साथ संगत।
- टीम सहयोग सुविधा उपलब्ध है
विपक्ष:
- पेशेवर संस्करण महंगा है
- Linux पर निष्पादन के लिए वाइन की आवश्यकता होती है, जो IDE को धीमा कर देती है।
- समय लेने वाली प्रक्रिया प्रबंधन
MySQL योग
इस MySQL प्रबंधन उपकरण में तीन पैकेज उपलब्ध हैं अर्थात प्रोफेशनल, एंटरप्राइज और प्रो। परीक्षण के बाद आप उनमें से किसी एक को चुन सकते हैं।
MySQL एडमिनिस्ट्रेटर इस प्लेटफॉर्म के साथ आसानी से काम कर सकते हैं और अपने डेटाबेस कार्यों को दक्षता के साथ संभाल सकते हैं। यह केवल विंडोज ऑपरेटिंग सिस्टम के लिए उपलब्ध है।
पेशेवरों
- चिकनी क्वेरी डिज़ाइनर टूल उपलब्ध है
- उन्नत सुविधाएं प्रदान करता है जो डेटाबेस व्यवस्थापन सीखने में सहायता करती हैं।
विपक्ष
- प्रो संस्करण जेब पर भारी है
- उपयोगकर्ता अक्सर सामयिक सॉफ़्टवेयर क्रैश की रिपोर्ट करते हैं
- MySQL को छोड़कर किसी भी डेटाबेस का समर्थन नहीं करता
- लिनक्स और मैक ऑपरेटिंग सिस्टम के लिए कोई नेटिव सपोर्ट नहीं है।
- एकाधिक टैब के बीच कोई ड्रैग एंड ड्रॉप सपोर्ट नहीं है।
क्लाउडवे MySQL डेटाबेस मैनेजर
Cloudways MySQL डेटाबेस मैनेजर डेवलपर्स के लिए सबसे आसान और उपयोगी MySQL मैनेजमेंट टूल्स में से एक है। अपने उपयोगकर्ता के अनुकूल UI के कारण इसका उपयोग करना बहुत आसान है और डेटाबेस प्रबंधक के पास सभी आवश्यक MySQL व्यवस्थापन उपकरण प्रदान करता है:
पेशेवर:
- उन्नत सुविधाओं के साथ उपयोगकर्ता के अनुकूल और अनुकूलन योग्य UI प्रदान करता है।
- स्कीमा टेबल, बाधाओं और क्वेरीज़ को विज़ुअल रूप से डिज़ाइन करता है।
- SSH टर्मिनल का उपयोग करके MySQL डेटाबेस से आसान कनेक्शन।
विपक्ष
- एकाधिक टैब के लिए कोई ड्रैग एंड ड्रॉप समर्थन उपलब्ध नहीं है।
- MariaDB, MySQL के अलावा अन्य डेटाबेस के लिए समर्थन की कमी।
प्रश्न:मैं कैसे जांचूं कि MySQL चल रहा है या नहीं?
ए:यह देखने के लिए कि क्या MySQL चल रहा है, बशर्ते इसे एक सेवा के रूप में स्थापित किया गया हो, आप स्टार्ट -> कंट्रोल पैनल -> एडमिनिस्ट्रेटिव टूल्स -> सर्विसेज पर जा सकते हैं और उस सूची में MySQL की तलाश कर सकते हैं। जांचें कि यह चल रहा है या नहीं।
प्रश्न:मैं MySQL के लिए अपना लोकलहोस्ट पोर्ट कैसे ढूंढूं?
उ:यदि आप MySQL कार्यक्षेत्र का उपयोग कर रहे हैं, तो साइडबार पर सूचना फलक में सत्र टैब देखें। यदि आप phpMyAdmin का उपयोग कर रहे हैं, तो होम पर क्लिक करें, फिर शीर्ष मेनू पर वेरिएबल्स पर क्लिक करें। पृष्ठ पर पोर्ट सेटिंग देखें। सेट मान आपका MySQL पोर्ट नंबर है।
प्र:मेरा लोकलहोस्ट MySQL उपयोगकर्ता नाम और पासवर्ड क्या है?
उ:http://php.net/manual/en/function.mysql-connect.php देखें। $ सर्वरनाम ="लोकलहोस्ट"; $ उपयोगकर्ता नाम ="रूट"; $ पासवर्ड =""; यह नए उपयोगकर्ताओं के लिए काम करेगा और इससे जुड़ने से पहले डेटाबेस बनाना न भूलें।
प्रश्न:MySQL डेटाबेस से कनेक्ट करने के लिए मानक PHP फ़ंक्शन क्या है?
ए:MySQL के साथ PHP इतनी अच्छी तरह से काम करने के कारणों में से एक mysql_connect फ़ंक्शन है जो डेटाबेस कनेक्शन खोलता है। यह फ़ंक्शन पाँच तर्क लेता है।
निष्कर्ष
एक अच्छी डेटाबेस संरचना किसी भी एप्लिकेशन की रीढ़ होती है। चाहे वह सीएमएस हो या ऑनलाइन टास्क ट्रैकिंग प्लेटफॉर्म, आपको एप्लिकेशन और उपयोगकर्ता की जानकारी और सर्वर डेटा को एप्लिकेशन प्रक्रियाओं पर नज़र रखने के लिए एक MySQL डेटाबेस की आवश्यकता होती है।
इस ट्यूटोरियल में, हमने दो चीजें सीखी हैं:
- नया डेटाबेस कैसे बनाएं
- MySQL डेटाबेस को PHP से कैसे कनेक्ट करें
MySQLi और PDO दोनों की अपनी प्राथमिकताएँ हैं। हालाँकि, शुरू करने से पहले यह ध्यान रखना चाहिए कि MySQL का उपयोग केवल MySQL को PHP से जोड़ने के लिए किया जाता है, यदि आपको किसी अन्य डेटाबेस में माइग्रेट करने की आवश्यकता है, तो आपको पूरे कोड को संशोधित करना होगा। दूसरी ओर, पीडीओ 12 विविध डेटाबेस के साथ काम करता है, जिससे प्रवासन की मांग बहुत कम हो जाती है।