วิธีทำความสะอาดและเพิ่มประสิทธิภาพตาราง wp_options และ Autoloaded Data

เผยแพร่แล้ว: 2022-09-28

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

มีโอกาสสำคัญที่การตั้งค่าโหลดอัตโนมัติบนไซต์ WordPress ที่เก่ากว่าและมีขนาดใหญ่กว่าที่จำเป็นมาก นี่เป็นเรื่องปกติของเว็บไซต์ที่เคยใช้ปลั๊กอินและธีมต่างๆ มาก่อนหรือเพิ่งได้รับการทดสอบเท่านั้น

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

ด้านล่างนี้ คุณจะได้เรียนรู้ว่าโดยทั่วไปแล้วตาราง wp_option ควรมีข้อมูลเท่าใด เว็บไซต์ของคุณควรมีข้อมูลจำนวนเท่าใด และคุณจะทำความสะอาดตาราง wp_options และข้อมูลอัตโนมัติได้อย่างไร

สารบัญ

ตาราง wp_options คืออะไร

สำหรับเว็บไซต์ WordPress ของคุณ ฐานข้อมูล wp_options จะจัดเก็บข้อมูลที่หลากหลาย รวมถึง:

  • URL ของเว็บไซต์, URL หลัก, หมวดหมู่เริ่มต้น, อีเมลของผู้ดูแลระบบ, รูปแบบเวลาและโพสต์ต่อหน้า
  • การตั้งค่าสำหรับธีม วิดเจ็ต ปลั๊กอิน
  • ข้อมูลและไฟล์ที่แคชไว้ชั่วคราว เป็นต้น

ฟิลด์ต่อไปนี้จะรวมอยู่ในตาราง

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

ข้อมูลที่โหลดอัตโนมัติคืออะไร?

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

แม้ว่าทุกปลั๊กอินควรโหลดข้อมูลในทุกหน้า แต่พารามิเตอร์ autoload ถูกตั้งค่าเป็น "ใช่" ตามค่าเริ่มต้นสำหรับนักพัฒนา ไซต์ WordPress อาจประสบปัญหาหากฐานข้อมูล wp_options มีข้อมูลอัตโนมัติจำนวนมาก

ข้อมูลที่โหลดอัตโนมัติมากเกินไปมีข้อมูลเท่าใด

ควรมีขนาดระหว่าง 300KB - 1MB อาจมีบางสิ่งที่สามารถปรับให้เหมาะสมหรือนำออกจากการโหลดอัตโนมัติได้หากคุณใช้งานถึงช่วง 3-5 MB ขึ้นไป และอะไรที่ใหญ่กว่า 10 MB จะต้องจัดการทันที

อะไรทำให้ข้อมูลโหลดอัตโนมัติ

ผู้เขียนปลั๊กอินหรือธีมโหลดข้อมูลลงในตาราง wp_options แทนที่จะใช้ตารางของตนเอง นักพัฒนาบางคนชอบปลั๊กอินที่ไม่สร้างตารางใหม่ อย่างไรก็ตาม ตัวเลือก WP ไม่ได้ออกแบบมาเพื่อรองรับแถวนับพัน

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

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

ข้อมูลถูกโหลดอัตโนมัติโดยปลั๊กอินเมื่อจริง ๆ แล้วควรตั้งค่าเป็น "ไม่"

วิธีตรวจสอบข้อมูลโหลดอัตโนมัติในตาราง wp_options

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

หลังจากเห็นชื่อฐานข้อมูลของคุณ

  • คลิกที่ฐานข้อมูลจากด้านซ้ายมือ
  • เลือก PHPMYADMIN
  • จากด้านซ้ายมือ คลิกที่ชื่อฐานข้อมูลของคุณ
  • เลือก wp_options จากเมนูด้านซ้าย
  • เลือก SQL จากเมนูด้านบน
  • เพิ่มแบบสอบถาม SQL ต่อไปนี้แล้วคลิก GO
 SELECT SUM(LENGTH(option_value)) as autoload_size FROM wp_options WHERE autoload='yes';

ที่นี่คุณจะเห็นขนาดการโหลดอัตโนมัติทั้งหมดของคุณเป็น KB หากมากกว่า 3000KB (หมายถึง 2MB สูงกว่า) แสดงว่าถึงเวลาที่คุณจะมองหาการเพิ่มประสิทธิภาพฐานข้อมูล

คุณยังสามารถเพิ่มแบบสอบถามที่ยาวขึ้นเพื่อตรวจสอบสิบรายการแรกตามขนาด

 SELECT 'autoloaded data in KiB' as name, ROUND(SUM(LENGTH(option_value))/ 1024) as value FROM wp_options WHERE autoload='yes' UNION SELECT 'autoloaded data count', count(*) FROM wp_options WHERE autoload='yes' UNION (SELECT option_name, length(option_value) FROM wp_options WHERE autoload='yes' ORDER BY length(option_value) DESC LIMIT 10)

ผลลัพธ์การค้นหาด้านบนจะแสดงคีย์บนสุดดังที่คุณเห็นในภาพ

นี่คือคำสั่ง SQL ที่คุณสามารถใช้เพื่อแสดงรายการค่า 10 อันดับแรกตามความยาว:

 SELECT option_name, length(option_value) AS option_value_length FROM wp_options WHERE autoload='yes' ORDER BY option_value_length DESC LIMIT 1

ดังที่คุณเห็นว่า option_name rewrite_rules มีความยาวสูงสุดที่ 9153 คุณสามารถตรวจสอบได้ว่าค่านี้สามารถปรับให้เหมาะสมหรือลบออกได้หรือไม่

วิธีล้างข้อมูล wp_options Table

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

 SELECT * FROM `wp_options` WHERE `autoload` = 'yes'

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

อ่านเอกสารของผู้พัฒนาปลั๊กอินเสมอเพราะอาจมีวิธีล้างตารางที่เหลือ ในสถานการณ์นั้น การติดตั้งปลั๊กอินใหม่ การเลือกตัวเลือกการล้างข้อมูลอัตโนมัติ จากนั้นการนำออกอย่างเหมาะสมในบางครั้งอาจปลอดภัยและง่ายกว่า เราจะสาธิตวิธีการล้างตารางด้วยตนเอง

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

ใช้คำสั่งนี้

 SELECT * FROM `wp_options` WHERE `autoload` = 'yes' AND `option_name` LIKE '%status%'
  • คุณสามารถเปลี่ยนคำลงท้ายด้วยชื่อไฟล์ได้ เช่น สถานะเป็นอีเมลเพื่อล้าง

เคลียร์ Transients

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

 SELECT * FROM `wp_options` WHERE `autoload` = 'yes' AND `option_name` LIKE '%transient%'

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

ตรวจสอบเว็บไซต์

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

บทสรุป

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