शीर्ष 50 MySQL साक्षात्कार प्रश्न और उत्तर (2026)

ए की तैयारी MySQL इंटरव्यू? क्या वाकई मायने रखता है, इसकी अपनी समझ को और निखारने का समय आ गया है। ये सवाल न सिर्फ़ आपके ज्ञान का परीक्षण करेंगे, बल्कि आपकी विश्लेषणात्मक गहराई, तकनीकी सोच और वास्तविक दुनिया की समस्याओं को सुलझाने के कौशल को भी उजागर करेंगे।

MySQL साक्षात्कार के प्रश्न नए, मध्यम-स्तरीय और वरिष्ठ पेशेवरों के लिए विभिन्न भूमिकाओं में विविध अवसरों के द्वार खोलते हैं। ये प्रश्न तकनीकी विशेषज्ञता, क्षेत्र विशेषज्ञता और विश्लेषणात्मक कौशल का आकलन करने में मदद करते हैं, साथ ही क्षेत्र में काम करने से प्राप्त पेशेवर अनुभव को भी दर्शाते हैं। बुनियादी से लेकर उन्नत स्तर तक, ये प्रश्न और उत्तर उम्मीदवारों को वास्तविक, बुनियादी तकनीकी अनुभव प्रदर्शित करने में सहायता करते हैं।

विभिन्न उद्योगों के 65 से अधिक तकनीकी नेताओं, 80 से अधिक प्रबंधकों और 100 पेशेवरों की अंतर्दृष्टि के आधार पर, हमने विश्वसनीय संकलित किए हैं MySQL वास्तविक दुनिया के अनुप्रयोगों, नियुक्ति के दृष्टिकोण और विकसित होते तकनीकी मानकों को कवर करने वाला साक्षात्कार मार्गदर्शन।

MySQL साक्षात्कार प्रश्न और उत्तर

चोटी MySQL साक्षात्कार प्रश्न और उत्तर

1) क्या है MySQL, और डेटाबेस प्रबंधन में इसका इतना व्यापक रूप से उपयोग क्यों किया जाता है?

MySQL एक ओपन-सोर्स रिलेशनल डेटाबेस मैनेजमेंट सिस्टम (RDBMS) है जो डेटा को पंक्तियों और स्तंभों से बनी तालिकाओं में संग्रहीत करता है। यह स्ट्रक्चर्ड क्वेरी लैंग्वेज (SQL) पर आधारित है, जो डेवलपर्स को डेटा को कुशलतापूर्वक परिभाषित, संशोधित और क्वेरी करने की अनुमति देता है। MySQL LAMP स्टैक का हिस्सा है (लिनक्स, अपाचे, MySQL, पीएचपी/Python), जो इसे वेब अनुप्रयोग विकास का आधार बनाता है।

मुख्य लाभ:

  • अनुकूलित भंडारण इंजन (InnoDB, MyISAM) के माध्यम से उच्च प्रदर्शन।
  • व्यावसायिक समर्थन के साथ ओपन-सोर्स लाइसेंसिंग Oracle.
  • मजबूत सामुदायिक समर्थन और क्रॉस-प्लेटफॉर्म संगतता।

उदाहरण: फेसबुक जैसी वेबसाइटें, YouTube, और ट्विटर ने इसका उपयोग किया है MySQL इसकी मापनीयता और लागत प्रभावशीलता के कारण इसे अपने मुख्य डाटाबेस सिस्टम के भाग के रूप में उपयोग किया जा रहा है।

👉 निःशुल्क पीडीएफ डाउनलोड: MySQL साक्षात्कार प्रश्न और उत्तर


2) कैसे करता है MySQL SQL से क्या भिन्न हैं, और उनकी संबंधित भूमिकाएं क्या हैं?

SQL एक भाषा है, जबकि MySQL एक सॉफ्टवेयर सिस्टम है जो इस भाषा को लागू करता है। SQL परिभाषित करता है कि डेटाबेस के साथ कैसे इंटरैक्ट किया जाए, जबकि MySQL डेटा को संग्रहीत करने, क्वेरी करने और प्रबंधित करने के लिए भौतिक और तार्किक वास्तुकला प्रदान करता है।

फ़ैक्टर एसक्यूएल MySQL
परिभाषा रिलेशनल डेटाबेस के प्रबंधन के लिए भाषा SQL सिंटैक्स का उपयोग करने वाला RDBMS
समारोह डेटा को क्वेरी और हेरफेर करने के लिए उपयोग किया जाता है डेटाबेस इंजन के भीतर SQL क्वेरीज़ निष्पादित करता है
उदाहरण SELECT * FROM employees; क्वेरी को इसके माध्यम से निष्पादित करता है MySQL सर्वर
स्वामित्व खुला मानक (ISO/ANSI) द्वारा विकसित और अनुरक्षित Oracle

सारांश में: SQL “व्याकरण” प्रदान करता है; MySQL वह “इंजन” प्रदान करता है जो इसे समझता है और क्रियान्वित करता है।


3) CHAR और VARCHAR डेटा प्रकारों के बीच अंतर को उदाहरणों के साथ समझाइए।

दोनों CHAR और VARCHAR स्ट्रिंग मान संग्रहीत करते हैं, लेकिन उनका भंडारण व्यवहार भिन्न होता है।

CHAR यह एक निश्चित-लंबाई वाला प्रकार है, जिसका अर्थ है कि यह हमेशा निर्दिष्ट संख्या में वर्णों को सुरक्षित रखता है, तथा छोटे मानों को रिक्त स्थान से भर देता है। VARCHARहालाँकि, यह परिवर्तनीय-लंबाई है और केवल वास्तविक स्ट्रिंग लंबाई के बराबर स्थान का उपयोग करता है।

संपत्ति CHAR VARCHAR
लंबाई फिक्स्ड परिवर्तनीय
गति निश्चित आकार के डेटा के लिए तेज़ परिवर्तनीय-आकार के डेटा के लिए अधिक कुशल
भंडारण परिभाषित लंबाई का उपयोग करता है वास्तविक डेटा + 1 बाइट का उपयोग करता है
उदाहरण CHAR(10) “Hello” को “Hello” के रूप में संग्रहीत करता है VARCHAR(10) “Hello” को “Hello” के रूप में संग्रहीत करता है

उदाहरण: यदि आप परिभाषित करते हैं CHAR(5) और 'SQL' डालें, MySQL इसे 'SQL␣ ␣' के रूप में संग्रहीत करता है। इसके विपरीत, VARCHAR(5) केवल 'SQL' संग्रहीत करेगा.


4) कैसे करता है MySQL विभिन्न भंडारण इंजनों को कैसे संभालें, और उनकी प्रमुख विशेषताएं क्या हैं?

MySQL कई का समर्थन करता है भंडारण इंजनप्रत्येक विशिष्ट उपयोग के मामलों के लिए अनुकूलित। एक स्टोरेज इंजन यह निर्धारित करता है कि डेटा को तालिका में कैसे संग्रहीत, अनुक्रमित और लॉक किया जाए।

इंजन विशेषताएँ उदाहरण
InnoDB लेन-देन, विदेशी कुंजी और पंक्ति-स्तरीय लॉकिंग का समर्थन करता है OLTP सिस्टम, उच्च अखंडता
MyISAM तेज़ पढ़ने की गति, तालिका-स्तरीय लॉकिंग, कोई लेनदेन समर्थन नहीं पढ़ने-भारी सिस्टम
स्मृति तेज़ पहुँच के लिए डेटा RAM में संग्रहीत अस्थायी डेटा संग्रहण
पुरालेख संपीड़ित भंडारण, केवल पढ़ने के लिए पहुँच ऐतिहासिक डेटा संग्रहण
संघीय दूरस्थ सर्वर से डेटा तक पहुँच वितरित डेटाबेस सिस्टम

उदाहरण: InnoDB को ई-कॉमर्स डेटाबेस के लिए पसंद किया जाता है, जहां लेनदेन सुरक्षा महत्वपूर्ण है, जबकि MyISAM एनालिटिक्स के लिए उपयुक्त है, जहां पढ़ने की गति प्रमुख है।


5) विभिन्न प्रकार के रिश्ते क्या हैं? MySQL, और उनका क्रियान्वयन कैसे किया जाता है?

MySQL तालिकाओं के बीच संबंधों का प्रतिनिधित्व करने के लिए तीन मुख्य संबंध प्रकारों का समर्थन करता है:

प्रकार विवरण उदाहरण
एक से एक तालिका A का प्रत्येक रिकॉर्ड तालिका B के एक रिकॉर्ड से ठीक-ठीक संबंधित है A user एक है profile
कई लोगों के लिए एक तालिका A में एक रिकॉर्ड तालिका B में कई रिकॉर्ड से मेल खाता है A customer कई है orders
अनेक-से-अनेक तालिका A के अनेक रिकॉर्ड तालिका B के अनेक रिकॉर्ड से संबंधित हैं A student कई में दाखिला लेता है courses

कार्यान्वयन: कई-से-कई संबंध आमतौर पर एक का उपयोग करके कार्यान्वित किए जाते हैं जंक्शन तालिका (जैसे, student_course) जिसमें दोनों संस्थाओं को संदर्भित करने वाली विदेशी कुंजियाँ शामिल हैं।


6) सामान्यीकरण क्या है? MySQL, और इसके विभिन्न प्रकार क्या हैं?

सामान्यीकरण, अतिरेक को कम करने और डेटा अखंडता में सुधार के लिए डेटा को व्यवस्थित करने की प्रक्रिया है। यह बड़ी तालिकाओं को छोटी, संबंधित तालिकाओं में विभाजित करता है और विदेशी कुंजियों का उपयोग करके संबंध स्थापित करता है।

सामान्य रूप विवरण मुख्य नियम
1NF दोहराए जाने वाले समूहों को समाप्त करता है प्रत्येक कोशिका में परमाणु मान होते हैं
2NF आंशिक निर्भरताएँ हटाता है प्रत्येक कॉलम संपूर्ण प्राथमिक कुंजी पर निर्भर करता है
3NF सकर्मक निर्भरताओं को हटाता है गैर-कुंजी कॉलम केवल प्राथमिक कुंजी पर निर्भर करते हैं

उदाहरण: एक एकल students टेबल के साथ student_name, course1, course2 दो तालिकाओं में विभाजित किया जाना चाहिए - students और courses — एक विदेशी कुंजी द्वारा लिंक किया गया.


7) DELETE, TRUNCATE और DROP कमांड के बीच अंतर स्पष्ट करें।

सभी तीन कमांड डेटा हटाते हैं लेकिन उनके दायरे और व्यवहार में भिन्नता होती है।

आदेश समारोह रोलबैक गति विस्तार
हटाएँ विशिष्ट पंक्तियाँ हटाता है हाँ (यदि किसी लेन-देन के अंतर्गत) मध्यम केवल डेटा
TRUNCATE सभी पंक्तियों को शीघ्रता से हटाता है नहीं तेज केवल डेटा
ड्रॉप तालिका संरचना और डेटा हटाता है नहीं सबसे तेजी तालिका और स्कीमा

उदाहरण:

DELETE FROM employees WHERE id=5; एक पंक्ति हटाता है.

TRUNCATE TABLE employees; सभी पंक्तियों को साफ़ करता है लेकिन संरचना को बरकरार रखता है।

DROP TABLE employees; संपूर्ण तालिका परिभाषा को हटा देता है.


8) JOIN का उपयोग कैसे किया जाता है? MySQL, और उनके विभिन्न प्रकार क्या हैं?

A शामिल हों संबंधित स्तंभों के आधार पर कई तालिकाओं से डेटा को संयोजित करता है। यह सामान्यीकृत संरचनाओं से व्यापक, संबंधपरक डेटा प्राप्त करने की अनुमति देता है।

प्रकार विवरण उदाहरण
अंदरूनी शामिल हों दोनों तालिकाओं में मेल खाते मानों वाले रिकॉर्ड लौटाता है विभागों के कर्मचारी
बायाँ शामिल हों बाईं तालिका से सभी रिकॉर्ड लौटाता है, मिलान के बिना भी सभी कर्मचारी, यहां तक ​​कि अनियोजित भी
सही शामिल हैं सही तालिका से सभी लौटाता है सभी विभाग, भले ही खाली हों
क्रॉस जॉइन कार्टेशियन गुणनफल लौटाता है सभी संभावित संयोजन

उदाहरण:

SELECT e.name, d.department_name 
FROM employees e 
INNER JOIN departments d ON e.dept_id = d.id;

9) AUTO_INCREMENT कैसे काम करता है? MySQL, और क्या यह एक कस्टम मान से शुरू हो सकता है?

RSI AUTO_INCREMENT विशेषता स्वचालित रूप से तालिका में प्रत्येक नई पंक्ति के लिए एक अद्वितीय संख्यात्मक मान उत्पन्न करती है। इसका उपयोग आमतौर पर प्राथमिक कुंजी स्तंभों के लिए किया जाता है।

वाक्यविन्यास उदाहरण:

CREATE TABLE users (
  id INT AUTO_INCREMENT PRIMARY KEY,
  username VARCHAR(50)
);

कस्टम मान से शुरू करने के लिए:

ALTER TABLE users AUTO_INCREMENT = 1000;

लाभ:

  • मैन्युअल प्रविष्टि के बिना विशिष्टता सुनिश्चित करता है।
  • समवर्ती प्रविष्टियों में कुंजी दोहराव को रोकता है।

नोट: एक बार रिकॉर्ड हटा दिए जाने पर, MySQL इसका पुन: उपयोग नहीं करता AUTO_INCREMENT डिफ़ॉल्ट रूप से मान.


10) व्यूज़ इन का उद्देश्य क्या है? MySQL, और उनके लाभ और सीमाएँ क्या हैं?

A देखें यह एक क्वेरी के परिणाम सेट से बनाई गई एक वर्चुअल तालिका है। यह जटिल क्वेरीज़ को पुन: प्रयोज्य तार्किक तालिकाओं के रूप में समाहित करके उन्हें सरल बनाता है।

लाभ:

  • जटिल जोड़ों को छिपाकर डेटा एक्सेस को सरल बनाता है।
  • केवल आवश्यक कॉलम प्रदर्शित करके सुरक्षा को बढ़ाता है।
  • पूर्वनिर्धारित तर्क का पुनः उपयोग करके अतिरेक को कम करता है।

सीमाएँ:

  • इसे हमेशा सीधे अद्यतन नहीं किया जा सकता.
  • डेटा को भौतिक रूप से संग्रहीत नहीं करता है, जो भारी जॉइन्स में प्रदर्शन को प्रभावित कर सकता है।

उदाहरण:

CREATE VIEW active_users AS
SELECT name, email FROM users WHERE status='active';

11) इंडेक्सिंग से प्रदर्शन में किस प्रकार सुधार होता है? MySQL, और सूचकांक के विभिन्न प्रकार क्या हैं?

अनुक्रमणिकाएँ MySQL ये लुकअप टेबल की तरह काम करते हैं जो डेटाबेस टेबल पर डेटा पुनर्प्राप्ति कार्यों को गति देते हैं। ये एक किताब में इंडेक्स की तरह काम करते हैं।ping MySQL संपूर्ण डेटासेट को स्कैन किए बिना विशिष्ट पंक्तियों का पता लगाएं।

प्रकार विवरण उदाहरण उपयोग केस
प्राथमिक सूचकांक प्राथमिक कुंजी कॉलम पर स्वचालित रूप से बनाया गया पंक्तियों की विशिष्ट पहचान करता है
अद्वितीय सूचकांक डुप्लिकेट मानों को रोकता है ईमेल पता
संयुक्त सूचकांक संयुक्त फ़िल्टरिंग के लिए बहु-स्तंभ अनुक्रमणिका (प्रथम नाम अंतिम नाम)
पूर्ण पाठ सूचकांक पाठ खोज के लिए उपयोग किया जाता है लेख खोज इंजन
स्थानिक सूचकांक भौगोलिक या स्थानिक डेटा को संभालता है नक्शाping और जीआईएस अनुप्रयोग

उदाहरण:

CREATE INDEX idx_customer_name ON customers(name);

सुझाव: अति-अनुक्रमण लेखन कार्य को धीमा कर सकता है, इसलिए गति और भंडारण दक्षता के बीच संतुलन महत्वपूर्ण है।


12) ट्रिगर्स क्या हैं? MySQL, और वे कैसे काम करते हैं?

A ट्रिगर निर्देशों का एक सेट है जो विशिष्ट डेटाबेस घटनाओं के जवाब में स्वचालित रूप से निष्पादित होता है जैसे INSERT, UPDATEया, DELETEवे डेटा की स्थिरता सुनिश्चित करते हैं और डेटाबेस स्तर पर व्यावसायिक तर्क को लागू करते हैं।

ट्रिगर प्रकार निष्पादन का समय
सम्मिलित/अद्यतन/हटाएँ से पहले संशोधन से पहले निष्पादित होता है
सम्मिलित/अद्यतन/हटाए जाने के बाद संशोधन के बाद निष्पादित होता है

उदाहरण:

CREATE TRIGGER update_timestamp
BEFORE UPDATE ON employees
FOR EACH ROW
SET NEW.modified_at = NOW();

लाभ:

  • नियमित डेटा कार्यों को स्वचालित करता है.
  • डेटा अखंडता नियमों को लागू करता है.
  • अनुप्रयोग-स्तरीय तर्क की आवश्यकता को कम करता है।

नुकसान:

  • जटिल डिबगिंग.
  • यदि इसका दुरुपयोग किया जाए तो यह प्रदर्शन को प्रभावित कर सकता है।

13) सामान्य तालिका अभिव्यक्तियों (सीटीई) की व्याख्या करें MySQL और उनके लाभ।

A सामान्य तालिका अभिव्यक्ति (CTE) एकल SQL कथन के निष्पादन दायरे में परिभाषित एक अस्थायी परिणाम सेट है। में प्रस्तुत MySQL 8.0 के साथ, यह जटिल प्रश्नों को सरल बनाता है और पुनरावृत्ति का समर्थन करता है।

वाक्यविन्यास उदाहरण:

WITH employee_cte AS (
  SELECT id, name, manager_id FROM employees
)
SELECT * FROM employee_cte WHERE manager_id IS NULL;

लाभ:

  • क्वेरी पठनीयता बढ़ाता है.
  • पुनरावर्ती प्रश्नों (जैसे, पदानुक्रमित डेटा) की अनुमति देता है।
  • उपक्वेरी पुनरावृत्ति को कम करता है.

पुनरावर्ती CTE का उदाहरण:

WITH RECURSIVE hierarchy AS (
  SELECT id, name, manager_id FROM employees WHERE manager_id IS NULL
  UNION ALL
  SELECT e.id, e.name, e.manager_id FROM employees e
  INNER JOIN hierarchy h ON e.manager_id = h.id
)
SELECT * FROM hierarchy;

14) लेनदेन क्या हैं? MySQL, और वे डेटा अखंडता कैसे सुनिश्चित करते हैं?

A सौदा कार्य की एक तार्किक इकाई के रूप में निष्पादित कार्यों का एक क्रम है। लेन-देन निम्नलिखित का अनुसरण करते हैं एसिड सिद्धांत — Atomस्थिरता, स्थिरता, अलगाव और स्थायित्व - डेटा विश्वसनीयता सुनिश्चित करना।

संपत्ति विवरण
Atomबर्फ़ीला तूफ़ान सभी ऑपरेशन एक साथ सफल या असफल होते हैं
कंसिस्टेंसी (Consistency) डेटाबेस अखंडता बाधाओं को बनाए रखता है
अलगाव लेन-देन एक दूसरे के साथ हस्तक्षेप नहीं करते
स्थायित्व प्रतिबद्धता के बाद भी परिवर्तन बने रहते हैं

उदाहरण:

START TRANSACTION;
UPDATE accounts SET balance = balance - 100 WHERE id=1;
UPDATE accounts SET balance = balance + 100 WHERE id=2;
COMMIT;

उदाहरण: बैंक फंड ट्रांसफर, जहां आंशिक अपडेट से डेटा हानि हो सकती है, लेनदेन संबंधी सुरक्षा की मांग करता है।


15) इसके क्या फायदे और नुकसान हैं? MySQL प्रतिकृति?

MySQL प्रतिकृतिकरण में एक डेटाबेस सर्वर (प्राथमिक) से दूसरे (प्रतिकृति) में डेटा की प्रतिलिपि बनाना शामिल है। इससे प्रदर्शन और दोष-सहनशीलता में सुधार होता है।

फायदे नुकसान
सर्वरों में लोड संतुलन रखरखाव की जटिलता में वृद्धि
बैकअप और पुनर्प्राप्ति विकल्प डेटा सिंक्रनाइज़ेशन में थोड़ी देरी
पढ़ने के लिए उच्च उपलब्धता एसिंक्रोनस मोड में डेटा असंगतता का जोखिम

उदाहरण सेटअप:

CHANGE MASTER TO MASTER_HOST='192.168.1.10', MASTER_USER='replica', MASTER_PASSWORD='password';
START SLAVE;

वितरित आर्किटेक्चर में प्रतिकृतिकरण आवश्यक है, विशेष रूप से बड़े पैमाने के वेब अनुप्रयोगों के लिए जिन्हें 24/7 अपटाइम की आवश्यकता होती है।


16) कैसे करता है MySQL JSON डेटा को कैसे संभालें, और इसके क्या लाभ हैं?

MySQL का समर्थन करता है JSON डेटा प्रकार (संस्करण 5.7 से) अर्ध-संरचित डेटा को सीधे रिलेशनल टेबल में संग्रहीत करने के लिए। यह रिलेशनल अखंडता से समझौता किए बिना लचीलापन प्रदान करता है।

उदाहरण:

CREATE TABLE products (
  id INT AUTO_INCREMENT PRIMARY KEY,
  attributes JSON
);
INSERT INTO products (attributes) VALUES ('{"color": "red", "size": "M"}');

लाभ:

  • गतिशील स्कीमा परिदृश्यों के लिए आदर्श.
  • हाइब्रिड रिलेशनल और NoSQL दृष्टिकोण को सक्षम बनाता है।
  • जैसे अंतर्निहित कार्य प्रदान करता है JSON_EXTRACT() और JSON_ARRAY().

उदाहरण प्रश्न:

SELECT JSON_EXTRACT(attributes, '$.color') AS color FROM products;

17) दृश्य बनाम भौतिक दृश्य क्या हैं, और वे कैसे भिन्न हैं?

A देखें एक क्वेरी परिणाम का तार्किक प्रतिनिधित्व है, जबकि एक मटेरियलाइज्ड व्यू तेजी से पुनर्प्राप्ति के लिए क्वेरी आउटपुट को भौतिक रूप से संग्रहीत करता है (मूल रूप से समर्थित नहीं है) MySQL लेकिन अनुकरणीय)।

पहलू देखें मटेरियलाइज्ड व्यू
भंडारण वर्चुअल (कोई डेटा संग्रहीत नहीं) भौतिक (डेटा स्नैपशॉट संग्रहीत करता है)
प्रदर्शन क्वेरी निष्पादन पर निर्भर करता है बार-बार पढ़ने के लिए तेज़
रखरखाव हमेशा अद्यतन मैन्युअल रीफ़्रेश की आवश्यकता है
उदाहरण जटिल जोड़ों को सरल बनाएँ विश्लेषणात्मक प्रश्नों को गति दें

उदाहरण:

CREATE VIEW high_value_orders AS 
SELECT * FROM orders WHERE total > 1000;

मटेरियलाइज्ड दृश्य के लिए समाधान: एक तालिका बनाएं और शेड्यूल किए गए ईवेंट का उपयोग करके उसे रीफ़्रेश करें.


18) उदाहरण सहित इनर जॉइन और लेफ्ट जॉइन के बीच अंतर स्पष्ट करें।

Feature अंदरूनी शामिल हों बायाँ शामिल हों
परिणाम केवल मेल खाती पंक्तियाँ लौटाता है बाईं तालिका से सभी पंक्तियाँ लौटाता है
शून्य हैंडलिंग बेमेल पंक्तियों को शामिल नहीं करता बेमेल दाएँ-पक्ष मानों के लिए NULL शामिल है
प्रदर्शन आम तौर पर तेज़ NULL पैडिंग के कारण थोड़ा धीमा

उदाहरण:

SELECT e.name, d.department_name
FROM employees e
INNER JOIN departments d ON e.dept_id = d.id;

और

SELECT e.name, d.department_name
FROM employees e
LEFT JOIN departments d ON e.dept_id = d.id;

पहली क्वेरी केवल विभागों को सौंपे गए कर्मचारियों को ही प्राप्त करती है, जबकि दूसरी क्वेरी में सभी कर्मचारी शामिल होते हैं, यहां तक ​​कि वे भी जिनके पास कोई विभाग नहीं है।


19) आप क्वेरी प्रदर्शन को कैसे अनुकूलित करते हैं? MySQL?

प्रश्नों को अनुकूलित करने में स्कीमा डिजाइन, अनुक्रमण रणनीति और निष्पादन योजना विश्लेषण का संयोजन शामिल होता है।

प्रमुख अनुकूलन कारक:

  1. EXPLAIN योजना का उपयोग करें - क्वेरी निष्पादन पथों का विश्लेषण करें.
  2. **चयन से बचें*** – केवल आवश्यक कॉलम पुनर्प्राप्त करें.
  3. उचित अनुक्रमण लागू करें – में प्रयुक्त सूचकांक स्तंभ WHERE or JOIN.
  4. डेटा सामान्य करें – छोटे डेटासेट के लिए अतिरेक को समाप्त करें।
  5. LIMIT और पृष्ठांकन का उपयोग करें - अनावश्यक डेटा लोडिंग को रोकें।
  6. जोड़ों को अनुकूलित करें - अनुक्रमित जॉइन कुंजी और सुसंगत डेटा प्रकार सुनिश्चित करें।

उदाहरण:

EXPLAIN SELECT * FROM orders WHERE customer_id = 100;

उन्नत सुझाव: उपयोग query_cache_type और innodb_buffer_pool_size बेहतर प्रदर्शन के लिए सेटिंग्स.


20) इनमें क्या अंतर है? Clusterएड और नॉन-Clusterएड इंडेक्स में MySQL?

संपत्ति Clusterएड इंडेक्स नClusterएड इंडेक्स
भंडारण अनुक्रमणिका क्रम में संग्रहीत डेटा पंक्तियाँ डेटा से संरचना को अलग करें
मात्रा प्रति टेबल केवल एक एकाधिक अनुमत
पहुँच गति श्रेणी प्रश्नों के लिए तेज़ यादृच्छिक लुकअप के लिए तेज़
उदाहरण इंजन InnoDB MyISAM

स्पष्टीकरण: एक क्लस्टर इंडेक्स किसी तालिका में डेटा के भौतिक क्रम को परिभाषित करता है। चूँकि InnoDB प्राथमिक कुंजी को क्लस्टर इंडेक्स के रूप में उपयोग करता है, इसलिए प्राथमिक कुंजी के माध्यम से डेटा पुनर्प्राप्ति तेज़ होती है। इसके विपरीत, गैर-क्लस्टर इंडेक्स डेटा के पॉइंटर्स बनाए रखते हैं, जिससे लचीलापन बढ़ता है लेकिन अधिक स्थान की आवश्यकता होती है।

उदाहरण:

CREATE UNIQUE INDEX idx_email ON users(email);

21) स्टोर्ड प्रोसीजर क्या हैं? MySQL, और उनके लाभ और सीमाएँ क्या हैं?

A संग्रहीत प्रक्रिया डेटाबेस में संग्रहीत SQL कथनों का एक पूर्व-संकलित सेट है। यह तर्क के पुन: उपयोग की अनुमति देता है और क्लाइंट-सर्वर संचार ओवरहेड को कम करके प्रदर्शन में सुधार करता है।

उदाहरण:

DELIMITER //
CREATE PROCEDURE GetEmployeeDetails(IN emp_id INT)
BEGIN
    SELECT * FROM employees WHERE id = emp_id;
END //
DELIMITER ;
फ़ायदे सीमाओं
दोहराव वाले कोड को कम करता है डिबग करना कठिन
पूर्व-संकलन के माध्यम से प्रदर्शन को बढ़ाता है संस्करण नियंत्रण जटिलता
एनकैप्सुलेशन के माध्यम से सुरक्षा में सुधार अधिक उपयोग से सर्वर लोड बढ़ सकता है

उदाहरण उपयोग मामला: आमतौर पर डेटा सत्यापन, लेनदेन प्रबंधन और रिपोर्टिंग स्वचालन के लिए उपयोग किया जाता है।


22) ताले कैसे काम करते हैं? MySQL, और लॉकिंग तंत्र के विभिन्न प्रकार क्या हैं?

लॉकिंग डेटा की एकरूपता सुनिश्चित करता है और कई लेनदेन के दौरान समवर्ती संघर्षों को रोकता है।

लॉक प्रकार विवरण उदाहरण
टेबल लॉक संचालन के दौरान संपूर्ण तालिका को लॉक करता है MyISAM द्वारा उपयोग किया गया
पंक्ति लॉक केवल प्रभावित पंक्तियों को लॉक करता है InnoDB द्वारा उपयोग किया गया
साझा लॉक समवर्ती पढ़ने की अनुमति देता है लेकिन लिखने को रोकता है चुनें... शेयर मोड में लॉक करें
विशेष ताला अन्य सभी पहुँच को रोकता है अद्यतन और हटाएँ संचालन

उदाहरण:

SELECT * FROM accounts WHERE id=5 FOR UPDATE;

सुझाव: पसंद करते हैं पंक्ति-स्तरीय लॉकिंग डेटा अखंडता को बनाए रखते हुए समवर्तीता को बढ़ाने के लिए लेनदेन प्रणालियों में।


23) अस्थायी तालिकाओं और व्युत्पन्न तालिकाओं के बीच अंतर स्पष्ट करें MySQL.

पहलू अस्थायी तालिका व्युत्पन्न तालिका
परिभाषा सत्र के लिए भौतिक रूप से बनाया गया केवल क्वेरी निष्पादन के दौरान मौजूद रहता है
दर्शनीयता पूरे सत्र में सुलभ केवल वर्तमान क्वेरी में ही पहुँच योग्य
प्रदर्शन बार-बार उपयोग के लिए तेज़ एकल-उपयोग संगणनाओं के लिए उपयुक्त
वाक्यविन्यास उदाहरण CREATE TEMPORARY TABLE temp_users AS SELECT * FROM users; SELECT * FROM (SELECT * FROM users WHERE status='active') AS active_users;

उपयोग केस उदाहरण: अस्थायी तालिकाएं बहु-चरणीय परिचालनों के लिए आदर्श होती हैं, जबकि व्युत्पन्न तालिकाएं एकल-क्वेरी रूपांतरणों के लिए कुशल होती हैं।


24) एक्सेस कंट्रोल लिस्ट (एसीएल) की क्या भूमिका है? MySQL सुरक्षा?

एक्सेस कंट्रोल सूचियाँ यह निर्धारित करती हैं कि कौन कौन से कार्य कर सकता है MySQLवे लागू करने के लिए आवश्यक हैं डेटाबेस सुरक्षा और विशेषाधिकार पृथक्करण.

ज़रूरी भाग:

  • उपयोगकर्ता का खाता: उपयोगकर्ता नाम और होस्ट द्वारा परिभाषित (उदाहरण के लिए, 'user'@'localhost').
  • विशेषाधिकार: इसमें SELECT, INSERT, UPDATE, DELETE, CREATE, DROP आदि शामिल हैं।
  • अनुदान तालिकाएँ: में संग्रहीत mysql डेटाबेस (उदाहरण के लिए, user, db, tables_priv).

उदाहरण:

GRANT SELECT, UPDATE ON employees TO 'analyst'@'localhost';
FLUSH PRIVILEGES;

प्रमाणीकरण का जीवनचक्र: जब कोई उपयोगकर्ता कनेक्ट होता है, MySQL क्रेडेंशियल्स की जांच करता है, विशेषाधिकारों को मान्य करता है, और परिभाषित अनुमति दायरे के भीतर क्वेरीज़ निष्पादित करता है।


25) भूमिकाएँ कैसे बढ़ती हैं? MySQL प्रयोक्ता प्रबंधन?

भूमिकाओं ये विशेषाधिकारों का एक संग्रह है, जो एक साथ समूहीकृत होते हैं, तथा उपयोगकर्ता प्रशासन और पहुँच प्रबंधन को सरल बनाते हैं।

उदाहरण:

CREATE ROLE 'reporting_user';
GRANT SELECT, EXECUTE ON company.* TO 'reporting_user';
GRANT 'reporting_user' TO 'john'@'localhost';
SET DEFAULT ROLE 'reporting_user' TO 'john'@'localhost';

लाभ:

  • विशेषाधिकार प्रबंधन को सरल बनाता है.
  • उद्यम सेटअप के लिए मापनीयता को बढ़ाता है।
  • प्रत्यक्ष विशेषाधिकारों के बजाय पूर्वनिर्धारित भूमिकाएं निर्दिष्ट करके सुरक्षा में सुधार करता है।

नोट: भूमिकाएँ समर्थित हैं MySQL 8.0 बाद।


26) कैसे करता है MySQL त्रुटि प्रबंधन और अपवाद प्रबंधन को कैसे संभालें?

MySQL का उपयोग करता है हैंडलर घोषित करें और सिग्नल संग्रहीत प्रोग्रामों के भीतर रनटाइम त्रुटियों के प्रबंधन के लिए तंत्र।

उदाहरण:

DECLARE EXIT HANDLER FOR SQLEXCEPTION
BEGIN
   ROLLBACK;
   SELECT 'Transaction failed, rolled back' AS message;
END;

हैंडलर्स के प्रकार:

  • जारी रखें हैंडलर: त्रुटि को छोड़ देता है और निष्पादन जारी रखता है।
  • निकास हैंडलर: ब्लॉक को समाप्त करता है और वैकल्पिक रूप से रोलबैक करता है।

सर्वश्रेष्ठ प्रणालियां: मिशन-क्रिटिकल प्रणालियों में सुसंगत डेटा रिकवरी के लिए त्रुटि प्रबंधन को लेनदेन के साथ संयोजित करें।


27) विंडो फ़ंक्शन क्या हैं? MySQL, और वे समग्र कार्यों से कैसे भिन्न हैं?

विंडो फ़ंक्शंस परिणाम सेट को संक्षिप्त किए बिना वर्तमान पंक्ति से संबंधित तालिका पंक्तियों के सेट में गणना करना।

Feature समग्र कार्य विंडो फ़ंक्शन
उत्पादन प्रति समूह एक पंक्ति प्रति इनपुट एक पंक्ति
धारा का उपयोग करता है GROUP BY का उपयोग करता है OVER()
उदाहरण SUM(salary) SUM(salary) OVER (PARTITION BY department)

उदाहरण:

SELECT department, employee_name,
       RANK() OVER (PARTITION BY department ORDER BY salary DESC) AS salary_rank
FROM employees;

आवेदन: रैंकिंग, संचयी रकम, चालू कुल योग और विश्लेषण संबंधी प्रश्न।


28) क्वेरी निष्पादन जीवनचक्र का वर्णन करें MySQL.

किसी क्वेरी का जीवनचक्र MySQL यह परिभाषित करता है कि कोई कमांड क्लाइंट से डेटाबेस इंजन तक कैसे जाता है और परिणाम कैसे लौटाता है।

जीवनचक्र चरण:

  1. पार्सिंग: SQL सिंटैक्स सत्यापन.
  2. अनुकूलन: क्वेरी प्लानर सबसे कुशल निष्पादन पथ निर्धारित करता है।
  3. निष्पादन: स्टोरेज इंजन डेटा को पुनः प्राप्त या संशोधित करता है।
  4. परिणाम कैशिंग: बार-बार पूछे जाने वाले परिणाम कैश किए जा सकते हैं।
  5. वापसी: डेटा क्लाइंट अनुप्रयोग को वापस भेजा गया.

उदाहरण: क्रियान्वित करते समय SELECT * FROM customers WHERE city='Delhi';, यदि कोई इंडेक्स चालू है, तो ऑप्टिमाइज़र पूर्ण तालिका स्कैन के बजाय इंडेक्स स्कैन चुन सकता है city मौजूद।


29) संग्रहित प्रक्रियाओं की तुलना में संग्रहित फ़ंक्शन का उपयोग करने के क्या फायदे और नुकसान हैं?

पहलू संग्रहीत प्रक्रिया संग्रहीत फ़ंक्शन
वापसी प्रकार एकाधिक परिणाम लौटा सकता है एकल मान लौटाना होगा
प्रयोग के माध्यम से निष्पादित CALL SQL अभिव्यक्तियों में प्रयुक्त
लचीलापन व्यापक नियंत्रण प्रवाह तर्क नियतात्मक तर्क तक सीमित
उदाहरण CALL update_salary(101); SELECT calc_bonus(5000);

संग्रहीत कार्यों के लाभ:

  • SELECT क्वेरीज़ में पुन: प्रयोज्य.
  • कोड मॉड्यूलरिटी में सुधार करें.
  • उत्पन्न कॉलम में अनुक्रमित किया जा सकता है.

नुकसान:

  • एकल वापसी मान तक सीमित.
  • सीधे लेनदेन नहीं किया जा सकता या तालिकाओं को संशोधित नहीं किया जा सकता.

30) इनके बीच मुख्य अंतर क्या हैं? MySQL और PostgreSQL सुविधाओं और प्रदर्शन के संदर्भ में?

वर्ग MySQL PostgreSQL
प्रदर्शन पढ़ने-भारी कार्यभार में तेज़ लेखन-भारी कार्यभार में श्रेष्ठ
लेनदेन InnoDB के माध्यम से ACID अनुपालक एमवीसीसी के साथ पूर्णतः एसीआईडी
JSON हैंडलिंग 5.7 से कार्यात्मक जटिल प्रश्नों के लिए मूल JSONB
संगामिति पंक्ति-स्तरीय लॉकिंग मल्टीवर्जन कंसीवरेंसी कंट्रोल (MVCC)
तानाना मध्यम अत्यधिक विस्तार योग्य (कस्टम डेटा प्रकार, ऑपरेटर)

सारांश: MySQL सरलता, गति और वेब-स्केल परिनियोजन के लिए अनुकूलित है। PostgreSQLइसके विपरीत, यह उन्नत डेटा अखंडता, विस्तारशीलता और विश्लेषणात्मक क्षमताएं प्रदान करता है, जो इसे एंटरप्राइज़-ग्रेड और डेटा-गहन अनुप्रयोगों के लिए लोकप्रिय बनाता है।


31) इसमें कौन सी नई विशेषताएं शामिल की गई हैं? MySQL 8.4, और वे प्रदर्शन में सुधार कैसे करते हैं?

MySQL 8.4 (दीर्घकालिक समर्थन) मापनीयता, स्थिरता और डेवलपर उत्पादकता के उद्देश्य से कई सुधार लाता है।

मुख्य संवर्द्धन:

  1. पठन/लेखन विभाजन: लोड वितरण के लिए प्रतिकृतियों के लिए प्रश्नों का स्वचालित रूटिंग।
  2. प्रदर्शन स्कीमा एक्सटेंशन: क्वेरी विलंबता और प्रतीक्षा घटनाओं में उन्नत दृश्यता।
  3. समानांतर क्वेरी निष्पादन: विश्लेषणात्मक प्रश्नों के लिए समानांतर पठन का समर्थन करता है।
  4. अदृश्य सूचकांक: अनुक्रमणिकाओं को बिना हटाए परीक्षण किया जा सकता है या अनदेखा किया जा सकता है।
  5. स्थायी अनुकूलक सांख्यिकी: पुनः आरंभ के दौरान सुसंगत क्वेरी योजना सुनिश्चित करता है।

उदाहरण:

ALTER TABLE orders ADD INDEX idx_amount (amount) INVISIBLE;

यह सूचकांक को स्थायी रूप से सक्षम करने से पहले उसके प्रदर्शन का परीक्षण करने की अनुमति देता है - जो उत्पादन अनुकूलन के लिए एक प्रमुख लाभ है।


32) कैसे करता है MySQL विभाजन को कैसे संभालें, और इसके विभिन्न प्रकार क्या हैं?

विभाजन बड़ी तालिकाओं को छोटे, प्रबंधनीय खंडों में विभाजित करता है जिन्हें विभाजन कहा जाता है। यह क्वेरी प्रदर्शन में सुधार करता है और रखरखाव को सरल बनाता है।

विभाजन प्रकार विवरण उदाहरण
रेंज मूल्य श्रेणियों के आधार पर दिनांक-आधारित बिक्री डेटा
सूची असतत मूल्यों पर आधारित देश या क्षेत्र कोड
HASH एक कुंजी के हैशिंग पर आधारित लोड-संतुलित आईडी
KEY प्राथमिक कुंजी पर आधारित स्वतः वितरण स्केलिंग के लिए स्वचालित विभाजन

उदाहरण:

CREATE TABLE orders (
  id INT,
  order_date DATE
)
PARTITION BY RANGE (YEAR(order_date)) (
  PARTITION p2023 VALUES LESS THAN (2024),
  PARTITION pmax VALUES LESS THAN MAXVALUE
);

लाभ: तीव्र क्वेरी प्रतिक्रिया, आसान अभिलेखीकरण, और बेहतर I/O प्रबंधन।


33) प्रदर्शन स्कीमा क्या है? MySQL, और इसका उपयोग निगरानी के लिए कैसे किया जाता है?

RSI प्रदर्शन स्कीमा एक उपकरण ढांचा है जो इसमें निर्मित है MySQL क्वेरी निष्पादन, मेमोरी और I/O उपयोग पर निम्न-स्तरीय मेट्रिक्स एकत्र करने के लिए।

बक्सों का इस्तेमाल करें:

  • धीमी क्वेरीज़ की पहचान करें.
  • लॉकिंग और प्रतीक्षा संबंधी समस्याओं का निदान करें।
  • कनेक्शन आँकड़ों पर नज़र रखें.

उदाहरण प्रश्न:

SELECT * FROM performance_schema.events_statements_summary_by_digest
ORDER BY AVG_TIMER_WAIT DESC LIMIT 5;

लाभ:

  • बाह्य उपकरणों के बिना वास्तविक समय निगरानी।
  • सर्वर व्यवहार के बारे में विस्तृत जानकारी।

नोट: गहन विश्लेषण के लिए, इसके साथ एकीकृत करें MySQL एंटरप्राइज़ मॉनिटर or ग्राफाना डैशबोर्ड.


34) ऑप्टिमाइज़र संकेत समझाएँ MySQL और उनका उपयोग कब किया जाना चाहिए।

अनुकूलक संकेत मैन्युअल नियंत्रण प्रदान करें MySQL'की क्वेरी निष्पादन योजना जब डिफ़ॉल्ट अनुकूलक निर्णय उप-इष्टतम होते हैं।

उदाहरण:

SELECT /*+ INDEX(employees idx_dept) */ * FROM employees WHERE department_id=5;

सामान्य संकेत प्रकार:

  • USE INDEX, IGNORE INDEX, FORCE INDEX
  • JOIN_ORDER(), SET_VAR()
  • MAX_EXECUTION_TIME(N)

कब इस्तेमाल करें:

  • धीमी क्वेरीज़ के समस्या निवारण के लिए.
  • जब अनुकूलक डेटा वितरण का गलत अनुमान लगाता है।
  • यह एक अस्थायी सुधार है, स्थायी समाधान नहीं।

सर्वश्रेष्ठ प्रणालियां: हमेशा विश्लेषण करें EXPLAIN दीर्घकालिक रखरखाव संबंधी समस्याओं से बचने के लिए संकेतों का उपयोग करने से पहले योजनाओं की समीक्षा करें।


35) क्वेरी प्रोफाइलिंग क्या है, और यह प्रदर्शन ट्यूनिंग में कैसे मदद करती है?

क्वेरी प्रोफ़ाइलिंग I/O विलंबता या CPU खपत जैसी बाधाओं की पहचान करने के लिए क्वेरी के निष्पादन चरणों को मापने में मदद करता है।

आदेश:

SET profiling = 1;
SELECT * FROM orders WHERE amount > 5000;
SHOW PROFILES;
SHOW PROFILE FOR QUERY 1;

आउटपुट हाइलाइट्स:

  • पार्सिंग समय
  • अनुकूलन समय
  • निष्पादन समय
  • डेटा भेजने का समय

उदाहरण उपयोग मामला: प्रोफाइलिंग, जटिल विश्लेषण कार्यों के दौरान DBA को धीमे JOIN, अनुपयुक्त इंडेक्स या अकुशल सॉर्टिंग को अलग करने में मदद करती है।


36) कैसे हो सकता है MySQL एआई और डेटा एनालिटिक्स पाइपलाइनों के साथ एकीकृत करें?

MySQL के लिए एक शक्तिशाली डेटा स्रोत के रूप में कार्य करता है मशीन लर्निंग (एमएल) और एनालिटिक्स सिस्टम.

एकीकरण आमतौर पर एपीआई या ईटीएल टूल के माध्यम से होता है जोtracसंरचित डेटा को विश्लेषणात्मक ढाँचों में ढालना।

एकीकरण के तरीके:

  • Python और पांडा: का प्रयोग mysql.connector or SQLAlchemy एमएल मॉडल में डेटा फीड करने के लिए।
  • अपाचे Spark: वितरित संगणन के लिए JDBC ड्राइवर का उपयोग करना।
  • एआई एजेंट: MySQLकी संरचित स्कीमा एलएलएम को सारणीबद्ध डेटा पर संरचित तर्क करने की अनुमति देती है।

उदाहरण:

import pandas as pd
import mysql.connector
conn = mysql.connector.connect(user='root', password='pw', database='sales')
df = pd.read_sql('SELECT * FROM transactions', conn)

लाभ: जोड़ती है MySQLएआई की विश्लेषणात्मक शक्ति के साथ इसकी विश्वसनीयता - लेन-देन संबंधी और पूर्वानुमानित बुद्धिमत्ता को जोड़ना।


37) अदृश्य सूचकांक क्या हैं, और वे अनुकूलन परीक्षण का समर्थन कैसे करते हैं?

अदृश्य अनुक्रमणिकाएँ डीबीए को क्वेरी प्रदर्शन का परीक्षण करने की अनुमति दें जैसे कि कोई इंडेक्स मौजूद ही नहीं है - वास्तव में इसे हटाए बिना।

उदाहरण:

ALTER TABLE employees ADD INDEX idx_salary (salary) INVISIBLE;

लाभ:

  • उत्पादन में सुरक्षित सूचकांक परीक्षण.
  • ड्रॉप करने से पहले निर्भरता का मूल्यांकन करता हैping एक अनुक्रमणिका।
  • VISIBLE का उपयोग करके तुरन्त पुनः सक्रिय किया जा सकता है।

उदाहरण:

ALTER TABLE employees ALTER INDEX idx_salary VISIBLE;

उदाहरण: डेटाबेस अनुकूलन या रिफैक्टरिंग चरणों के दौरान आदर्श जब इंडेक्स हटाने का प्रभाव अनिश्चित होता है।


38) विभिन्न बैकअप और रिकवरी विधियाँ क्या हैं? MySQL?

विधि विवरण के लिए उपयुक्त
mysqldump तार्किक बैकअप को SQL प्रारूप में निर्यात करता है छोटे से मध्यम डेटाबेस
android mysqldump का समानांतर संस्करण बड़े डेटासेट
myhotcopy MyISAM तालिकाओं के लिए भौतिक प्रतिलिपि विरासती तंत्र
InnoDB हॉट बैकअप नॉन-ब्लॉकिंग बैकअप लेता है उद्यम उपयोग
बाइनरी लॉग बिंदु-समय पुनर्प्राप्ति सक्षम करता है महत्वपूर्ण लेन-देन प्रणालियाँ

उदाहरण आदेश:

mysqldump -u root -p mydb > mydb_backup.sql

सर्वश्रेष्ठ प्रणालियां: मिलाना बाइनरी लॉग पूर्ण पुनर्प्राप्ति लचीलेपन के लिए अनुसूचित तार्किक बैकअप के साथ।


39) कैसे करता है MySQL डेडलॉक को कैसे संभालें, तथा उन्हें रोकने के क्या तरीके हैं?

A गतिरोध यह तब होता है जब दो या अधिक लेनदेन में ऐसे लॉक होते हैं जिनकी दूसरे लेनदेन को आवश्यकता होती है, जिससे प्रतीक्षा का एक चक्र बन जाता है।

उदाहरण परिदृश्य:

  • लेनदेन A लॉक हो जाता है orders और इंतजार कर रहा है customers.
  • लेनदेन B लॉक customers और इंतजार कर रहा है orders.

रोकथाम तकनीकें:

  1. तालिकाओं तक सुसंगत क्रम में पहुँचें.
  2. लेन-देन छोटा रखें.
  3. यदि उपयुक्त हो तो निम्न अलगाव स्तर का उपयोग करें।

मॉनिटर का उपयोग करें:

SHOW ENGINE INNODB STATUS;

संकल्प: MySQL चक्र को तोड़ने के लिए एक लेनदेन को स्वचालित रूप से वापस ले लेता है। उचित लेनदेन डिज़ाइन पुनरावृत्ति को न्यूनतम करता है।


40) इनके बीच मुख्य अंतर क्या हैं? MySQL सामुदायिक संस्करण और MySQL एंटरप्राइज़ संस्करण?

Feature समुदाय संस्करण एंटरप्राइज़ संस्करण
लाइसेंस जीपीएल (मुफ़्त) व्यावसायिक
बैकअप उपकरण बेसिक (mysqldump) उन्नत (एंटरप्राइज़ बैकअप)
सुरक्षा मानक एन्क्रिप्शन TDE, ऑडिट लॉगिंग, फ़ायरवॉल
निगरानी हाथ-संबंधी एंटरप्राइज़ मॉनिटर
सहायता सामुदायिक फ़ोरम्स Oracle 24 / 7 वाहक

सारांश:
सामुदायिक संस्करण ओपन-सोर्स डेवलपर्स के लिए उपयुक्त है, जबकि एंटरप्राइज़ संस्करण उन संगठनों के लिए उपयुक्त है जिन्हें अनुपालन, उच्च उपलब्धता और आधिकारिक समर्थन की आवश्यकता होती है।


🔍 शीर्ष MySQL वास्तविक दुनिया के परिदृश्यों और रणनीतिक प्रतिक्रियाओं के साथ साक्षात्कार प्रश्न

1) क्या आप MyISAM और InnoDB स्टोरेज इंजन के बीच अंतर समझा सकते हैं? MySQL?

उम्मीदवार से अपेक्षित: साक्षात्कारकर्ता आपकी समझ का आकलन करना चाहता है MySQLके भंडारण इंजन और उनके उपयोग के मामले।

उदाहरण उत्तर:
"MyISAM एक गैर-लेनदेन संबंधी स्टोरेज इंजन है जो अत्यधिक पठन कार्यों के लिए अनुकूलित है, जबकि InnoDB लेन-देन, पंक्ति-स्तरीय लॉकिंग और विदेशी कुंजियों का समर्थन करता है। InnoDB उन अनुप्रयोगों के लिए आदर्श है जिनमें डेटा अखंडता और समवर्तीता की आवश्यकता होती है, जैसे कि ई-कॉमर्स या बैंकिंग सिस्टम। हालाँकि, MyISAM अभी भी विश्लेषणात्मक कार्यभार के लिए उपयुक्त हो सकता है जहाँ पठन गति लेन-देन सुरक्षा से अधिक महत्वपूर्ण है।"


2) आप धीमी गति से चलने वाली क्वेरी को कैसे अनुकूलित करते हैं? MySQL?

उम्मीदवार से अपेक्षित: साक्षात्कारकर्ता क्वेरी अनुकूलन तकनीकों और प्रदर्शन विश्लेषण का ज्ञान चाहता है।

उदाहरण उत्तर:
“मैं इसका उपयोग करके शुरुआत करूंगा EXPLAIN यह विश्लेषण करने के लिए कथन कि कैसे MySQL क्वेरी निष्पादित करता है। फिर, मैं अनुपलब्ध इंडेक्स की जाँच करूँगा, जॉइन को अनुकूलित करूँगा, और यह सुनिश्चित करूँगा कि इसमें प्रयुक्त कॉलम WHERE or JOIN शर्तें उचित रूप से अनुक्रमित हैं। मैं अनावश्यक सबक्वेरीज़ या वाइल्डकार्ड्स पर भी नज़र रखता हूँ। अपनी पिछली नौकरी में, मैंने जटिल जॉइन्स को फिर से लिखकर और कंपोजिट इंडेक्स जोड़कर क्वेरी निष्पादन समय को 70% तक कम कर दिया था।


3) उस समय का वर्णन करें जब आपने डेटाबेस प्रदर्शन समस्या का समाधान किया था।

उम्मीदवार से अपेक्षित: साक्षात्कारकर्ता आपके समस्या निवारण कौशल और व्यावहारिक अनुभव को समझना चाहता है।

उदाहरण उत्तर:
"मेरी पिछली भूमिका में, हमारी मुख्य रिपोर्टिंग क्वेरी व्यस्त समय के दौरान काफ़ी धीमापन पैदा कर रही थी। मैंने क्वेरी की रूपरेखा तैयार की, बार-बार फ़िल्टर किए जाने वाले कॉलम में एक गुम इंडेक्स की पहचान की, और क्वेरी संरचना को अनुकूलित किया। मैंने क्वेरी कैशिंग भी शुरू की और innodb_buffer_pool_size मेमोरी उपयोग में सुधार के लिए। इन बदलावों से प्रतिक्रिया समय 12 सेकंड से घटकर 2 सेकंड से भी कम हो गया।”


4) आप उत्पादन वातावरण में डेटाबेस स्कीमा परिवर्तनों को कैसे संभालते हैं?

उम्मीदवार से अपेक्षित: वे संस्करण नियंत्रण, जोखिम प्रबंधन और परिनियोजन प्रक्रियाओं की आपकी समझ का परीक्षण कर रहे हैं।

उदाहरण उत्तर:
"मैं स्कीमा परिवर्तनों को पहले स्टेजिंग वातावरण में लागू करके, रिग्रेशन परीक्षण चलाकर, और पश्चगामी संगतता सुनिश्चित करके प्रबंधित करता हूँ। उत्पादन परिनियोजन के दौरान, मैं स्कीमा माइग्रेशन के संस्करण-नियंत्रण के लिए लिक्विबेस या फ्लाईवे जैसे उपकरणों का उपयोग करता हूँ। पिछली स्थिति में, मैंने एक स्कीमा रिफैक्टर के दौरान डाउनटाइम को रोकने के लिए एक रोलिंग अपडेट रणनीति लागू की थी, जिससे 500 मिलियन से अधिक पंक्तियाँ प्रभावित हुई थीं।"


5) डेटाबेस बैकअप और रिकवरी के लिए आप कौन सी रणनीति अपनाते हैं? MySQL?

उम्मीदवार से अपेक्षित: साक्षात्कारकर्ता डेटा अखंडता और आपदा पुनर्प्राप्ति के प्रति आपके दृष्टिकोण को देखना चाहता है।

उदाहरण उत्तर:
"मैं उपयोग करता हूं mysqldump छोटे डेटाबेस के लिए और mysqlpump या बड़े, लेन-देन संबंधी बैकअप के लिए Percona XtraBackup। मैं दैनिक बैकअप को स्वचालित करता हूँ और उन्हें सत्यापित करने के लिए नियमित रूप से रिकवरी परीक्षण करता हूँ। इसके अतिरिक्त, मैं पॉइंट-इन-टाइम रिकवरी के लिए बाइनरी लॉग सेट करता हूँ। मेरी पिछली भूमिका में, इन रणनीतियों ने हमें एक गंभीर विफलता के बाद 45 मिनट के भीतर 1TB डेटाबेस को पुनर्स्थापित करने में सक्षम बनाया था।


6) आप डेटाबेस सुरक्षा कैसे सुनिश्चित करेंगे? MySQL वातावरण?

उम्मीदवार से अपेक्षित: साक्षात्कारकर्ता आपके एक्सेस नियंत्रण, एन्क्रिप्शन और ऑडिटिंग की समझ की जांच कर रहा है।

उदाहरण उत्तर:
“मैं न्यूनतम विशेषाधिकार के सिद्धांत को लागू करके शुरुआत करता हूँ MySQL उपयोगकर्ता भूमिकाएँ और दूरस्थ रूट पहुँच को सीमित करना। मैं ट्रांज़िट में डेटा के लिए SSL सक्षम करता हूँ और संवेदनशील कॉलम के लिए AES_ENCRYPT का उपयोग करता हूँ। मैं नियमित सुरक्षा ऑडिट भी करता हूँ। पिछली नौकरी में, मैंने भूमिका-आधारित पहुँच नीतियाँ लागू कीं, जिससे अनधिकृत क्वेरी प्रयासों में 90% की कमी आई।


7) मुझे उस समय के बारे में बताइये जब आपने डेटाबेस माइग्रेशन प्रोजेक्ट पर काम किया था।

उम्मीदवार से अपेक्षित: वे आपकी योजना, परीक्षण और समस्या समाधान के दृष्टिकोण का आकलन करना चाहते हैं।

उदाहरण उत्तर:
“मेरी पिछली नौकरी में, हमने एक विरासत को स्थानांतरित किया MySQL 5.6 डेटाबेस MySQL 8.0. मैंने स्कीमा और संगतता ऑडिट करके शुरुआत की, फिर mysqldump और pt-online-schema-change न्यूनतम डाउनटाइम के साथ सुरक्षित डेटा ट्रांसफर के लिए। हमने डेटा की एकरूपता की पुष्टि के लिए रीड-ओनली परीक्षण भी किए। माइग्रेशन 10 मिनट से भी कम डाउनटाइम के साथ सफलतापूर्वक पूरा हो गया।


8) आप किसी व्यक्ति के स्वास्थ्य और प्रदर्शन की निगरानी कैसे करते हैं? MySQL डेटाबेस?

उम्मीदवार से अपेक्षित: साक्षात्कारकर्ता यह देखना चाहता है कि क्या आप समस्याओं को बढ़ने से पहले ही सक्रियतापूर्वक पहचान सकते हैं।

उदाहरण उत्तर:
“मैं निगरानी करता हूँ MySQL जैसे उपकरणों का उपयोग करके प्रदर्शन MySQL Enterprise Monitor और Percona Monitoring and Management (PMM). मैं tracमैं स्लो क्वेरी लॉग, रेप्लिकेशन लैग और रिसोर्स यूटिलाइज़ेशन जैसे मेट्रिक्स की निगरानी करता हूं। मैं थ्रेशहोल्ड उल्लंघन के लिए अलर्ट भी कॉन्फ़िगर करता हूं। अपनी पिछली भूमिका में, इस सक्रिय निगरानी ने हमें क्वेरी स्पाइक्स का पता लगाने और उच्च-ट्रैफ़िक अभियानों के दौरान आउटेज को रोकने में मदद की।


9) यदि प्रतिकृतिकरण के बीच कोई समस्या हो तो आप क्या कदम उठाएंगे? MySQL सर्वर टूट गया?

उम्मीदवार से अपेक्षित: वे आपकी समस्या-समाधान और प्रतिकृति समस्या निवारण क्षमताओं का मूल्यांकन करना चाहते हैं।

उदाहरण उत्तर:
“मैं सबसे पहले प्रतिकृति स्थिति की जांच करूंगा SHOW SLAVE STATUS अनुपलब्ध बाइनरी लॉग या डेटा असंगतताओं जैसी त्रुटियों की पहचान करने के लिए। यदि आवश्यक हो, तो मैं समस्याग्रस्त लेनदेन को छोड़ देता या मास्टर से एक नए डंप का उपयोग करके प्रतिकृति को पुनः आरंभ करता। पिछली स्थिति में, मैंने प्रतिकृति विलंब और डाउनटाइम को कम करने के लिए कस्टम स्क्रिप्ट के साथ प्रतिकृति स्वास्थ्य जाँच को स्वचालित किया था।


10) वर्णन करें कि आप कैसे डिज़ाइन करेंगे MySQL स्केलेबिलिटी के लिए डेटाबेस.

उम्मीदवार से अपेक्षित: वे आपकी वास्तुशिल्पीय सोच और स्केलिंग रणनीतियों की समझ का परीक्षण कर रहे हैं।

उदाहरण उत्तर:
"मैं पहले अखंडता बनाए रखने के लिए सामान्यीकरण को ध्यान में रखकर डिज़ाइन करूँगा, फिर प्रदर्शन के लिए चुनिंदा रूप से विसामान्यीकरण करूँगा। क्षैतिज मापनीयता के लिए, मैं शार्डिंग लागू करूँगा या MySQL समूह प्रतिकृति। मैं बार-बार पढ़ने की ज़रूरतों को कम करने के लिए रेडिस जैसी कैशिंग परतों का भी इस्तेमाल करता था। मेरी पिछली भूमिका में, ये डिज़ाइन सिद्धांत सेवा में गिरावट के बिना प्रतिदिन 100 से 5 लाख से ज़्यादा लेनदेन तक स्केलिंग का समर्थन करते थे।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: