डेटाबेस कनेक्शन त्रुटियाँ
डेटाबेस कनेक्शन त्रुटियाँ XOOPS इंस्टॉलेशन में सबसे आम समस्याओं में से हैं। यह मार्गदर्शिका कनेक्शन समस्याओं की पहचान करने और उन्हें हल करने के लिए व्यवस्थित समस्या निवारण चरण प्रदान करती है।
सामान्य त्रुटि संदेश
Section titled “सामान्य त्रुटि संदेश””MySQL सर्वर से कनेक्ट नहीं हो सकता”
Section titled “”MySQL सर्वर से कनेक्ट नहीं हो सकता””Error: Can't connect to MySQL server on 'localhost' (111)यह त्रुटि आम तौर पर इंगित करती है कि MySQL सर्वर नहीं चल रहा है या पहुंच योग्य नहीं है।
“उपयोगकर्ता के लिए प्रवेश निषेध”
Section titled ““उपयोगकर्ता के लिए प्रवेश निषेध””Error: Access denied for user 'xoops_user'@'localhost' (using password: YES)यह आपके कॉन्फ़िगरेशन में गलत डेटाबेस क्रेडेंशियल्स को इंगित करता है।
“अज्ञात डेटाबेस”
Section titled ““अज्ञात डेटाबेस””Error: Unknown database 'xoops_db'निर्दिष्ट डेटाबेस MySQL सर्वर पर मौजूद नहीं है।
कॉन्फ़िगरेशन फ़ाइलें
Section titled “कॉन्फ़िगरेशन फ़ाइलें”XOOPS कॉन्फ़िगरेशन स्थान
Section titled “XOOPS कॉन्फ़िगरेशन स्थान”मुख्य कॉन्फ़िगरेशन फ़ाइल यहां स्थित है:
/mainfile.phpमुख्य डेटाबेस सेटिंग्स:
// Database Configurationdefine('XOOPS_DB_TYPE', 'mysqli');define('XOOPS_DB_HOST', 'localhost');define('XOOPS_DB_PORT', '3306');define('XOOPS_DB_USER', 'xoops_user');define('XOOPS_DB_PASS', 'your_password');define('XOOPS_DB_NAME', 'xoops_db');define('XOOPS_DB_PREFIX', 'xoops_');समस्या निवारण चरण
Section titled “समस्या निवारण चरण”चरण 1: सत्यापित करें MySQL सेवा चल रही है
Section titled “चरण 1: सत्यापित करें MySQL सेवा चल रही है”लिनक्स/यूनिक्स पर
Section titled “लिनक्स/यूनिक्स पर”# Check if MySQL is runningsudo systemctl status mysql
# Start MySQL if not runningsudo systemctl start mysql
# Restart MySQLsudo systemctl restart mysqlचरण 2: MySQL कनेक्टिविटी का परीक्षण करें
Section titled “चरण 2: MySQL कनेक्टिविटी का परीक्षण करें”कमांड लाइन का उपयोग करना
Section titled “कमांड लाइन का उपयोग करना”# Test connection with credentialsmysql -h localhost -u xoops_user -p xoops_db
# If prompted for password, enter it# Success shows: mysql>
# Exit MySQLmysql> EXIT;चरण 3: डेटाबेस क्रेडेंशियल सत्यापित करें
Section titled “चरण 3: डेटाबेस क्रेडेंशियल सत्यापित करें”XOOPS कॉन्फ़िगरेशन जांचें
Section titled “XOOPS कॉन्फ़िगरेशन जांचें”// In mainfile.php, verify these constants:echo "Host: " . XOOPS_DB_HOST . "\n";echo "User: " . XOOPS_DB_USER . "\n";echo "Port: " . XOOPS_DB_PORT . "\n";echo "Database: " . XOOPS_DB_NAME . "\n";चरण 4: सत्यापित करें कि डेटाबेस मौजूद है
Section titled “चरण 4: सत्यापित करें कि डेटाबेस मौजूद है”# Connect to MySQLmysql -u root -p
# List all databasesSHOW DATABASES;
# Check for your databaseSHOW DATABASES LIKE 'xoops_db';
# If not found, create itCREATE DATABASE xoops_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
# ExitEXIT;चरण 5: उपयोगकर्ता अनुमतियाँ जाँचें
Section titled “चरण 5: उपयोगकर्ता अनुमतियाँ जाँचें”# Connect as rootmysql -u root -p
# Check user privilegesSHOW GRANTS FOR 'xoops_user'@'localhost';
# Grant all privileges if neededGRANT ALL PRIVILEGES ON xoops_db.* TO 'xoops_user'@'localhost';
# Reload privilegesFLUSH PRIVILEGES;सामान्य मुद्दे और समाधान
Section titled “सामान्य मुद्दे और समाधान”अंक 1: MySQL नहीं चल रहा है
Section titled “अंक 1: MySQL नहीं चल रहा है”लक्षण:
- कनेक्शन अस्वीकृत त्रुटि
- लोकलहोस्ट से कनेक्ट नहीं हो सकता
समाधान:
# Linux: Check and start MySQLsudo systemctl status mysqlsudo systemctl start mysqlअंक 2: गलत क्रेडेंशियल
Section titled “अंक 2: गलत क्रेडेंशियल”लक्षण:
- “प्रवेश निषेध” त्रुटि
- “पासवर्ड का उपयोग करना: हाँ” या “पासवर्ड का उपयोग करना: नहीं”
समाधान:
# Reset password (as root)mysql -u root -p
# Change user passwordALTER USER 'xoops_user'@'localhost' IDENTIFIED BY 'new_password';
# Update mainfile.phpdefine('XOOPS_DB_PASS', 'new_password');अंक 3: डेटाबेस नहीं बनाया गया
Section titled “अंक 3: डेटाबेस नहीं बनाया गया”लक्षण:
- “अज्ञात डेटाबेस” त्रुटि
- डेटाबेस निर्माण के समय इंस्टालेशन विफल रहा
समाधान:
# Check if database existsmysql -u root -p -e "SHOW DATABASES;"
# Create database if missingmysql -u root -p -e "CREATE DATABASE xoops_db CHARACTER SET utf8mb4;"डायग्नोस्टिक स्क्रिप्ट
Section titled “डायग्नोस्टिक स्क्रिप्ट”एक व्यापक डायग्नोस्टिक स्क्रिप्ट बनाएं:
<?phpecho "=== XOOPS Database Diagnostic ===\n\n";
// Check constants definedecho "1. Configuration Check:\n";echo " Host: " . (defined('XOOPS_DB_HOST') ? XOOPS_DB_HOST : "NOT DEFINED") . "\n";echo " User: " . (defined('XOOPS_DB_USER') ? XOOPS_DB_USER : "NOT DEFINED") . "\n";echo " Database: " . (defined('XOOPS_DB_NAME') ? XOOPS_DB_NAME : "NOT DEFINED") . "\n\n";
// Check PHP MySQL extensionecho "2. Extension Check:\n";echo " MySQLi: " . (extension_loaded('mysqli') ? "YES" : "NO") . "\n\n";
// Test connectionecho "3. Connection Test:\n";try { $conn = new mysqli( XOOPS_DB_HOST, XOOPS_DB_USER, XOOPS_DB_PASS, XOOPS_DB_NAME, XOOPS_DB_PORT );
if ($conn->connect_error) { echo " FAILED: " . $conn->connect_error . "\n"; } else { echo " SUCCESS: Connected to MySQL\n"; echo " Server Info: " . $conn->get_server_info() . "\n"; $conn->close(); }} catch (Exception $e) { echo " EXCEPTION: " . $e->getMessage() . "\n";}
echo "\n=== End Diagnostic ===\n";?>संबंधित दस्तावेज़ीकरण
Section titled “संबंधित दस्तावेज़ीकरण”- व्हाइट-स्क्रीन-ऑफ़-डेथ - सामान्य WSOD समस्या निवारण
- ../../01-प्रारंभ करना/कॉन्फ़िगरेशन/प्रदर्शन-अनुकूलन - डेटाबेस प्रदर्शन ट्यूनिंग
- ../../06-प्रकाशक-मॉड्यूल/उपयोगकर्ता-गाइड/बेसिक-कॉन्फ़िगरेशन - प्रारंभिक XOOPS सेटअप
- ../../04-API-संदर्भ/डेटाबेस/XoopsDatabase - डेटाबेस API संदर्भ
अंतिम अद्यतन: 2026-01-31 इस पर लागू होता है: XOOPS 2.5.7+ PHP संस्करण: 7.4+