วิธีแก้ไขข้อผิดพลาดในการสร้างการเชื่อมต่อฐานข้อมูลใน WordPress

เผยแพร่แล้ว: 2018-02-28

มันเป็นหนึ่งในความกลัวที่เลวร้ายที่สุดของเจ้าของเว็บไซต์ ยิ่งเว็บไซต์ของคุณหยุดทำงานนานเท่าไหร่ คุณก็ยิ่งสูญเสียการเข้าชมมากขึ้นเท่านั้น และนั่นอาจหมายถึงการสูญเสียสมาชิก ลูกค้าที่สูญเสีย และในที่สุดสูญเสียรายได้

เมื่อวานเราพบข้อผิดพลาดนี้ และฉันต้องใช้เวลามากกว่า 3 ชั่วโมงกว่าที่ไซต์จะอยู่ในสภาพใช้งานได้เป็นอย่างน้อย ไซต์หยุดทำงานเป็นเวลา 20 นาทีและทำงานอีกครั้งและลดลงอีกครั้ง

มันเป็นสิ่งที่ไม่เคยเกิดขึ้นกับเรามาก่อน แต่เมื่อฉัน googled มัน ฉันไม่พบคำตอบที่สมบูรณ์แบบสำหรับโซลูชันของฉัน

แม้แต่วิธีแก้ปัญหาบนอินเทอร์เน็ตก็ไม่เพียงพอต่อการแก้ปัญหาของฉัน แม้ว่าบทความเกี่ยวกับ wpbeginner จะมีประโยชน์มากในการแก้ปัญหา ” ข้อผิดพลาดในการสร้างการเชื่อมต่อฐานข้อมูล

แต่ข้อผิดพลาดนั้นหมายถึงอะไรกันแน่? และที่สำคัญกว่านั้น คุณจะแก้ไขและทำให้เว็บไซต์ของคุณกลับมาเป็นปกติโดยเร็วที่สุดได้อย่างไร?

ในบทความนี้ เราจะพูดถึงความหมายของข้อความแสดงข้อผิดพลาดและสิ่งที่อาจเป็นสาเหตุ จากนั้นเราจะแนะนำคุณผ่านขั้นตอนบางอย่างในการแก้ไขปัญหาและแก้ไขปัญหา

ทำไมคุณถึงได้รับข้อผิดพลาดนี้ อะไรทำให้เกิดข้อผิดพลาดนี้

ข้อความแสดงข้อผิดพลาดดูเหมือนง่าย และด้วยเหตุนี้ คุณจึงเข้าใจได้ว่าเว็บไซต์ของคุณกำลังประสบปัญหาในการเชื่อมต่อกับฐานข้อมูล

แต่เดี๋ยวก่อน นั่นไม่ง่ายอย่างนั้น

ข้อผิดพลาดประเภทนี้แตกต่างกันไปตามปัจจัยต่าง ๆ อาจเป็นเพราะ

  • ข้อมูลรับรองการเข้าสู่ระบบที่ไม่ถูกต้อง
  • เปลี่ยนท่าเรือ,
  • อนุญาตไฟล์,
  • ฐานข้อมูลเสียหาย
  • การเปลี่ยนแปลงใน wp-config และ
  • .htaccess

“ข้อผิดพลาดในการสร้างการเชื่อมต่อฐานข้อมูล” หมายความว่าอย่างไร

ขั้นแรก มาดูว่า WordPress ทำงานอย่างไรเพื่อแสดงเว็บไซต์ของคุณ และจะเข้าใจได้ชัดเจนว่าเหตุใดข้อผิดพลาดนี้จึงสร้างความเสียหายอย่างมาก

[bravepop align="center"]

ข้อผิดพลาด
  • บันทึก

โดยทั่วไป เมื่อใดก็ตามที่มีการโหลดหน้าบนเว็บไซต์ของคุณ หน้านั้นถูกสร้างขึ้นทันที หมายความว่าไม่มีอยู่จริงในทางปฏิบัติ แต่ถูกสร้างขึ้นแบบไดนามิก โค้ด PHP ใช้เพื่อเข้าถึงฐานข้อมูล MySQL ของคุณและดึงข้อมูลทุกบิตที่จำเป็นในการสร้างเพจ มีการสืบค้น PHP เพื่อเข้าถึงชื่อโพสต์ อีกคำถามหนึ่งเพื่อดึงชื่อผู้เขียน อีกคำถามหนึ่งเพื่อเรียกข้อมูลวันที่ตีพิมพ์ และอื่นๆ

มีการสืบค้น PHP เพื่อเข้าถึงชื่อโพสต์ อีกคำถามหนึ่งเพื่อดึงชื่อผู้เขียน อีกคำถามหนึ่งเพื่อเรียกข้อมูลวันที่ตีพิมพ์ และทุกอย่างที่คุณเห็นบนเว็บไซต์

การแก้ไขปัญหา "ข้อผิดพลาดในการสร้างการเชื่อมต่อฐานข้อมูล" ปัญหานี้เกิดขึ้นที่ใด

สิ่งแรกที่คุณต้องตรวจสอบคือ คุณได้รับข้อผิดพลาดเดียวกันทั้งในส่วนหน้า (www.YourSite.com) ของไซต์และส่วนหลังของไซต์ (www.YourSite.com/wp-admin) .

นี่เป็นสัญญาณของความเสียหายของฐานข้อมูล

  • หากข้อความแสดงข้อผิดพลาดเหมือนกันทั้งในส่วนหน้าและส่วนหลังไม่เหมือนกับ " ข้อผิดพลาดในการสร้างการเชื่อมต่อฐานข้อมูล "
  • เว็บล่ม
  • ไม่มีตารางฐานข้อมูล

ฐานข้อมูลของคุณจะต้องได้รับการซ่อมแซม

คุณไม่จำเป็นต้องกังวลเกี่ยวกับฐานข้อมูลของคุณ เนื่องจาก WordPress มีวิธีพยายามซ่อมแซมฐานข้อมูลของคุณอยู่แล้ว แต่คุณจะต้องเปิดใช้งานคุณลักษณะนี้ก่อน [ สำรองข้อมูลไว้ก่อนดำเนินการต่อ ใช้ BackUpBuddy ]

ในการดำเนินการดังกล่าว คุณจะต้องเข้าถึงไฟล์ wp-config.php ซึ่งมีการตั้งค่าและการกำหนดค่าการติดตั้ง WordPress ของคุณ

wp-config.php ในไดเร็กทอรีไฟล์ root WordPress ในโฮสติ้งของคุณ คุณสามารถเข้าถึงได้ง่ายโดยลงชื่อเข้าใช้ cPanel เลือก File Manager และไปที่โฟลเดอร์ที่คุณติดตั้ง WordPress
เมื่อคุณเปิด wp-config แล้ว ให้เพิ่มโค้ดด้านล่างก่อน ' เท่านั้น หยุดแก้ไข! มีความสุขในบล็อก ' บรรทัด wp-config.php

 กำหนด ('WP_ALLOW_REPAIR' จริง);

เมื่อคุณทำเสร็จแล้ว คุณสามารถดูการตั้งค่าได้โดยไปที่หน้านี้:

[bravepop align="center"]

http://www.YourSite.com/wp-admin/maint/repair.php

wordpress-database-repair-wordpress-database-connection-error
  • บันทึก

คุณควรเห็นหน้าจอด้านบนซึ่งมีตัวเลือกสองทางในการซ่อมแซม หรือซ่อมแซมและเพิ่มประสิทธิภาพฐานข้อมูลของคุณ รู้สึกอิสระที่จะเลือกอย่างใดอย่างหนึ่ง โปรดทราบว่าการเพิ่มประสิทธิภาพจะใช้เวลานานกว่า

โปรดทราบว่าหน้าซ่อมแซมฐานข้อมูลนี้ ไม่ปลอดภัย ทุกคนสามารถเข้าถึง URL นั้นได้โดยไม่ต้องเข้าสู่ระบบ เมื่อคุณซ่อมแซมฐานข้อมูลเสร็จแล้ว อย่าลืม ลบบรรทัดของโค้ดที่คุณเพิ่มใน wp-config การดำเนินการนี้จะปิดใช้งานการเข้าถึงหน้าการซ่อมแซมและป้องกันไม่ให้ใครมายุ่งกับฐานข้อมูลของคุณ

ตรวจสอบการตั้งค่าการเข้าสู่ระบบฐานข้อมูลของคุณใน wp-config

หากขั้นตอนข้างต้นไม่ได้ผลหรือไม่มีผลกับคุณ สิ่งต่อไปที่คุณสามารถทำได้คือดูการตั้งค่าฐานข้อมูลของคุณในไฟล์ wp-config

นี่คือที่ที่คุณระบุรายละเอียดสำหรับ WordPress เพื่อเชื่อมต่อฐานข้อมูลของคุณ รายละเอียดเหล่านี้สามารถเปลี่ยนแปลงหรือแก้ไขได้โดยปลั๊กอินบางตัว หรือโดยการเปลี่ยนโฮสติ้งหรือแก้ไขไฟล์ของคุณ

ไปข้างหน้าและเปิด wp-config เพื่อทำการแก้ไข
คุณจะเห็นข้อมูลรับรองการเข้าสู่ระบบสำหรับฐานข้อมูลของคุณ ซึ่งอาจอยู่ใกล้ด้านบนสุดของไฟล์ ควรมีลักษณะดังนี้:

 // ** การตั้งค่า MySQL - คุณสามารถรับข้อมูลนี้จากโฮสต์เว็บของคุณ ** //
/** ชื่อของฐานข้อมูลสำหรับ WordPress */define( 'DB_NAME', 'database_name_here' );
 
/** ชื่อผู้ใช้ฐานข้อมูล MySQL */define( 'DB_USER', 'username_here' );
 
/** รหัสผ่านฐานข้อมูล MySQL */define( 'DB_PASSWORD', 'password_here' );
 
/** ชื่อโฮสต์ MySQL */define( 'DB_HOST', 'localhost' );

อย่างที่คุณเห็น มีข้อมูลสี่อย่างที่ WordPress ต้องการเพื่อเข้าถึงฐานข้อมูลของคุณ:

  1. ชื่อของฐานข้อมูล (“DB_NAME”)
  2. ชื่อผู้ใช้สำหรับเข้าสู่ระบบ (“DB_USER”)
  3. รหัสผ่านเข้าสู่ระบบ (“DB_PASSWORD”)
  4. โฮสต์ฐานข้อมูล (“DB_HOST”)

หากค่าใดไม่ถูกต้อง WordPress จะไม่สามารถเชื่อมต่อกับฐานข้อมูลได้ หากทุกรายละเอียดในฐานข้อมูลของคุณถูกต้อง คุณควรทำให้แน่ใจโดยการตรวจสอบด้วยสคริปต์

บางครั้งเซิร์ฟเวอร์ MySQL จะหยุดทำงานหากมีการรับส่งข้อมูลจำนวนมาก หรือโดยเฉพาะอย่างยิ่งหากคุณใช้โฮสติ้งที่ใช้ร่วมกันราคาถูก คุณสามารถขอให้ทีมสนับสนุนตรวจสอบให้แน่ใจว่าเซิร์ฟเวอร์ MySql ของคุณทำงานได้ดีหรือเพียงแค่ทำตามขั้นตอนต่อไปนี้

เข้าถึง cPanel, ตัวจัดการไฟล์ และรากของเว็บไซต์ของคุณที่ติดตั้ง WordPress สร้างไฟล์ใหม่และตั้งชื่อว่า " MySQL-check.php " และวางโค้ดด้านล่างนี้

 <?php
$test การเชื่อมต่อ = mysql_connect('localhost', 'root', 'password');
ถ้า (!$testConnection) {
die('ข้อผิดพลาด: ' . mysql_error());
}
echo 'การเชื่อมต่อฐานข้อมูลทำงานได้อย่างสมบูรณ์! และ MySQL ตอบสนองได้ดี';
mysql_close($testConnection);
?>

ตรวจสอบให้แน่ใจว่าคุณได้เปลี่ยนชื่อผู้ใช้และรหัสผ่านในรหัสข้างต้น หากคุณไม่สามารถเชื่อมต่อกับฐานข้อมูลผ่าน phpMyAdmin ได้ อาจเป็นไปได้ว่าคุณมีปัญหากับเซิร์ฟเวอร์ของคุณและ MySQL ของคุณทำงานได้ดี

ข้อผิดพลาดในการจัดตั้งฐานข้อมูลการเชื่อมต่อ
  • บันทึก

ยังไม่แก้ ลองวิธีนี้ดู ?

หากสิ่งเหล่านี้ไม่ได้ผลสำหรับคุณ คุณควรลองทำเช่นนี้

ในฐานข้อมูลของคุณ ไปที่ตาราง wp_options จากนั้นคลิก เรียกดู ซึ่งจะแสดงข้อมูลทั้งหมด

ค้นหา URL ไซต์ คลิกปุ่มแก้ไข (ดูเหมือนดินสอ) และป้อน URL ของคุณใหม่ในพื้นที่ข้อความค่าแล้วคลิกบันทึก

อีกทางหนึ่ง ในคอนโซล SQL เพิ่มบรรทัดต่อไปนี้

 อัปเดต wp_options SET option_value = 'http://YOURURL.com' 
WHERE option_name= 'siteurl'

อะไรใช้ได้ผลสำหรับฉัน

สิ่งนี้เกิดขึ้นกับฉันเมื่อฉันอัปเดต WordPress และหลังจากอัปเดตสำเร็จ ฉันพบข้อผิดพลาดนี้ ฉันทำตามขั้นตอนข้างต้นทั้งหมดแล้วแต่โชคไม่ดี ฉันยังติดต่อฝ่ายสนับสนุนโฮสติ้งของฉัน แต่พวกเขาไม่พบข้อผิดพลาด

ดังนั้นฉันจึงดาวน์โหลดข้อมูลสำรองทั้งหมดและสร้างไซต์ของฉันบน localhost และต้องแปลกใจว่าทุกอย่างทำงานได้ดี ดังนั้นตอนนี้ฉันจึงรู้ว่ามีบางอย่างผิดปกติกับเซิร์ฟเวอร์ของฉัน

ดังนั้นฉันจึงเริ่มค้นคว้าด้วย MySQL และ phpMyAdmin ฉันแนบแอปพลิเคชัน PHP ที่กำหนดเองและใช้งานได้ดี ดังนั้นตอนนี้ทุกอย่างชัดเจน

ปัญหาเดียวคือกับไฟล์ WordPress ของฉัน ฉันปิดการใช้งานไฟล์และธีมทั้งหมด ลบแคชทั้งหมด แต่ก็ยังไม่สามารถแก้ปัญหาของฉันได้

ฉันตรวจสอบ .htaccess ของฉันแล้วว่าดี แต่เมื่อฉันคลิกปุ่มเปลี่ยนการอนุญาต ฉันรู้ว่ามันเป็นปัญหาเล็ก ๆ ที่กินเวลาและความสงบของจิตใจของฉัน

เหตุใดการอนุญาตไฟล์จึงเปลี่ยนไป

เมื่อฉันอัปเดต WordPress ปลั๊กอินบางตัวทำงานได้ไม่ดีกับการอัปเดตนั้นและเปลี่ยนการอนุญาตไฟล์ เหตุใดจึงเกิดขึ้น ฉันไม่รู้ นอกจากนี้ ปลั๊กอินที่ล้าสมัยบางตัวยังใช้ทรัพยากรทั้งหมดของฉัน ซึ่งไซต์ของฉันพลิกขึ้นและลง

และฉันได้รับอีเมลแจ้งเตือนการตรวจสอบไซต์ขึ้นและลง นอกจากนี้ ปลั๊กอินที่ล้าสมัยยังส่งผลต่อไฟล์ MySQL.so และ HTTP.so ของฉันด้วยการแก้ไข เนื่องจากฉันไม่สามารถเข้าถึงได้ ฉันจึงติดต่อทีมสนับสนุนเพื่อกู้คืน และหลังจากนั้น ก็ทำเสร็จแล้ว

ฉันกู้คืนสิทธิ์ของฉันและรวมถึงธีม ปลั๊กอิน และแคชด้วย และบูมก็กลับมาอีกครั้ง SmartActiveBlogger ได้แพร่ภาพสดอีกครั้ง

บทสรุป

ไม่มีปัจจัยที่แน่นอนว่าทำไมมันถึงเกิดขึ้น และไม่มีคำตอบที่ชัดเจนในการแก้ไข คุณต้องผ่านวิธีแก้ปัญหาทั้งหมดและตรวจสอบว่าวิธีใดใช้งานได้ หากคุณโชคดี คุณสามารถแก้ไขได้ภายใน 5 นาที และหากคุณโชคไม่ดีเหมือนอย่างฉัน คุณอาจต้องใช้เวลาอีกสักสองสามนาที

แต่ไม่มีเวลามากเท่าที่ฉันทำเพราะฉันต้องทำวิจัยและให้คำตอบกับคุณเพื่อไม่ให้คุณประสบปัญหาเหมือนที่ฉันเคยมี

นอกจากนี้ คอยดู error_log บนรูทของ WordPress ของคุณ สามารถช่วยคุณแก้ปัญหาได้หากคุณมีข้อผิดพลาดของเซิร์ฟเวอร์

โปรดเขียนความคิดเห็นว่าคุณพบปัญหานี้ได้อย่างไร และวิธีแก้ไขปัญหาใดที่เหมาะกับคุณ