วิธีการติดตั้ง Sphinx Search Engine บน CentOS 7

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

บทความนี้จะแสดงวิธีการตั้งค่าเครื่องมือค้นหาสฟิงซ์ให้ดัชนีและค้นหาตัวอย่างฐานข้อมูล MariaDB บนอินสแตนซ์เซิร์ฟเวอร์ Vultr CentOS 7 มันจะให้ความคิดเบื้องต้นเกี่ยวกับวิธีการใช้สฟิงซ์ในโครงการของคุณ

ข้อกำหนดเบื้องต้น

  • ปรับใช้อินสแตนซ์เซิร์ฟเวอร์ CentOS 7 ใหม่จากแผงควบคุม Vultr
  • ใช้ผู้ใช้ที่ไม่ใช่ผู้ใช้ sudo เพื่อล็อกอินจากเทอร์มินัล SSH ของคุณ ดูวิธีการสร้างผู้ใช้ sudo ในบทความนี้

ขั้นตอนที่ 1: อัปเดตระบบของคุณ

sudo yum update -y && sudo reboot

หลังจากระบบรีบูตเสร็จสิ้นให้ใช้ผู้ใช้ sudo คนเดียวกันเพื่อเข้าสู่ระบบอีกครั้ง

ขั้นตอนที่ 2: ติดตั้งและกำหนดค่า MariaDB

สฟิงซ์สามารถใช้ในการค้นหาแหล่งข้อมูลต่าง ๆ เช่นฐานข้อมูล SQL, ไฟล์ข้อความธรรมดา, ไฟล์ HTML ฯลฯ ที่นี่เรามาดูวิธีการใช้สฟิงซ์เพื่อทำการค้นหาบนฐานข้อมูล MariaDB

ติดตั้ง MariaDB โดยใช้ YUM:

sudo yum install mariadb mariadb-server

เริ่มบริการ MariaDB:

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

เพื่อความปลอดภัยให้ทำการติดตั้ง MySQL อย่างปลอดภัย:

sudo /usr/bin/mysql_secure_installation

ทำตามขั้นตอนนี้ตามคำแนะนำต่อไปนี้:

Enter current password for root (enter for none): Press Enter
Set root password? [Y/n]: Input Y, then press Enter
New password: Input a new password for root, press Enter
Re-enter new password: Input the same password again, then press Enter
Remove anonymous users? [Y/n]: Input Y, then press Enter
Disallow root login remotely? [Y/n]: Input Y, then press Enter
Remove test database and access to it? [Y/n]: Input Y, then press Enter
Reload privilege tables now? [Y/n]: Input Y, then press Enter

หลังจากการติดตั้ง MySQL ที่ปลอดภัยเสร็จสิ้นคุณจะต้องตั้งรหัสผ่านใหม่สำหรับผู้ใช้ MySQL "root" ในบทช่วยสอนนี้ฉันจะเรียกมันว่า "yourpassword"

ขั้นตอนที่ 3: ติดตั้งสฟิงซ์ล่าสุด

ในการติดตั้ง Sphinx เวอร์ชั่นล่าสุดคุณต้องดาวน์โหลดแพ็คเกจ rpm ที่เหมาะสมจากเว็บไซต์ทางการของ Sphinx:

cd ~
wget http://sphinxsearch.com/files/sphinx-2.2.10-1.rhel7.x86_64.rpm
sudo yum install sphinx-2.2.10-1.rhel7.x86_64.rpm

ขั้นตอนที่ 4: สร้างฐานข้อมูลสำหรับการทดสอบ

ใช้คำสั่ง MySQL ต่อไปนี้เพื่อสร้างฐานข้อมูลชื่อ "test":

mysql -u root -p -e "CREATE DATABASE test"

เมื่อคุณถูกขอให้ระบุรหัสผ่านให้ป้อนรหัสที่คุณตั้งไว้ก่อนหน้านี้แล้วกด Enter

ตอนนี้นำเข้าข้อมูลทดสอบจากไฟล์ sql ตัวอย่าง Sphinx:

mysql -u root -p test < /usr/share/doc/sphinx-2.2.10/example.sql

ป้อนรหัสผ่านเดียวกันอีกครั้งแล้วกด Enter เพื่อสิ้นสุดการนำเข้า

ขั้นตอนที่ 5: กำหนดค่าสฟิงซ์

เปิดไฟล์คอนฟิกูเรชัน Sphinx /etc/sphinx/sphinx.conf:

sudo vi /etc/sphinx/sphinx.conf

ในตอนนี้คุณเพียงแค่ตั้งค่าชื่อผู้ใช้ MySQL sql_userและรหัสผ่านsql_passซึ่งจะเป็น:

sql_user                = root
sql_pass                = yourpassword

บันทึกและออก:

:wq

ขั้นตอนที่ 6: เริ่มตัวสร้างดัชนีและ searchd daemons

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

อย่าลืมรันคำสั่งต่อไปนี้อย่างเป็นระเบียบหรือคุณจะพบข้อผิดพลาด

sudo indexer --all
sudo searchd

หากต้องการอัพเดตสถานะดัชนีเป็นประจำให้สร้างงาน cron:

sudo crontab -e

ป้อนรายการต่อไปนี้:

0 * * * * /usr/bin/indexer --rotate --config /etc/sphinx/sphinx.conf --all

บันทึกและออก:

:wq

งาน cron นี้จะอัพเดตสถานะดัชนีทุกชั่วโมง

ขั้นตอนที่ 7: ทดสอบเครื่องมือค้นหาสฟิงซ์ของคุณ

คุณสามารถใช้สคริปต์ python ที่กำหนดไว้ล่วงหน้าเพื่อทดสอบการตั้งค่าสฟิงซ์ของคุณ:

python /usr/share/sphinx/api/test.py this is my test document

คำสั่งนี้จะค้นหา "นี่คือเอกสารทดสอบของฉัน" ในตัวอย่างฐานข้อมูล MySQL แล้วแสดงผลการค้นหา

สรุปว่าบทช่วยสอนนี้ สฟิงซ์ยังมี API การค้นหาซึ่งสามารถใช้ได้จากโครงการ PHP, Perl, Python, Ruby หรือ Java ของคุณเอง ข้อมูลเพิ่มเติมมีอยู่ในเว็บไซต์อย่างเป็นทางการของสฟิงซ์



Leave a Comment

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7 LAMP VPS

เรียนรู้วิธีการติดตั้ง Directus 6.4 CMS บน CentOS 7; ระบบการจัดการเนื้อหา Headless ที่มีความยืดหยุ่นสูงและปลอดภัย

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

ตั้งค่า Nginx บน Ubuntu เพื่อสตรีมวิดีโอสด HLS

เรียนรู้วิธีการตั้งค่า Nginx บน Ubuntu สำหรับการสตรีมวิดีโอสด HLS ด้วยคำแนะนำที่ชัดเจนและเป็นประโยชน์

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

การสำรองข้อมูลยอดนิยมด้วย Percona XtraBackup บนแอพ WordPress แบบคลิกเดียว

เรียนรู้การใช้ Percona XtraBackup สำหรับการสำรองข้อมูลด้วยวิธีที่เป็นระบบและง่ายดายบน WordPress ออนไลน์ของคุณ

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

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

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true