Cara Memasang dan Konfigurasi Sphinx di Ubuntu 16.04, 14.04

Cara Memasang dan Konfigurasi Sphinx di Ubuntu 16.04, 14.04

Sphinx adalah pelayan carian teks penuh yang mudah, relevan dan terbuka. Ia ditulis dalam bahasa pengaturcaraan C ++ dan berfungsi dengan Linux dan sistem operasi popular yang lain. Tutorial ini akan membantu anda memasang dan mengkonfigurasi pelayan carian teks penuh sphinx di Ubuntu 16.04, 14.04 Sistem Operasi LTS.

Prasyarat

Sebelum anda memulakan panduan ini, anda mesti mempunyai berikut.

  • Pelayan ubuntu dengan akses sudo
  • Pelayan mysql pra yang dipasang

Langkah 1 - Pasang sphinx

Memasang Sphinx di Ubuntu mudah kerana ia berada di repositori pakej asli. Pasangnya menggunakan Pengurus Pakej APT-GET pada sistem Ubuntu anda.

sudo add-apt-repository ppa: binaan/sphinxsearch-rel22 sudo apt-get update sudo apt-get install sphinxsearch 

Langkah 2 - Import pangkalan data MySQL

Mari mengimport fail SQL sampel ke dalam pangkalan data.Pertama, buat pangkalan data yang dinamakan ujian di pelayan MySQL anda, setelah memulihkan pangkalan data yang disediakan oleh pakej carian sphinx.

sudo mysqladmin -u root -p membuat ujian sudo mysql -u root -p ujian < /usr/share/doc/sphinxsearch/example-conf/example.sql 

Langkah 3 - Konfigurasikan Sphinx

Edit Konfigurasi Sphinx Seperti di bawah dan edit untuk Konfigurasi Sambungan MySQL seperti yang ditunjukkan di bawah.

sudo vi/etc/sphinxsearch/sphinx.Conf 
sumber src1  # jenis sumber data. mandatory, no default value # known types are mysql, pgsql, mssql, xmlpipe, xmlpipe2, odbc type = mysql ########################### ############################################ tetapan sql (untuk 'mysql Jenis 'dan' pgsql ') ############################################################################# pendapat #########################beberapa parameter mudah untuk jenis sql sql_host = localhost sql_user = root sql_pass = rahsia sql_db = ujian sql_port = 3306# Pilihan, lalai ialah 3306 

Langkah 4 - Pengindeksan berjalan

Jalankan pengindeks untuk membuat indeks teks penuh dari data anda. Pengindeks adalah yang pertama dari dua alat utama sebagai sebahagian daripada Sphinx. Ia berfungsi untuk mengumpulkan data yang akan dicari. Anda akan melihat hasilnya seperti di bawah.

Pengindeks Sudo -Semua Sphinx 2.2.11-ID64-Release (95AE9A6) Hak Cipta (C) 2001-2016, Andrew Aksyonoff Hak Cipta (c) 2008-2016, Sphinx Technologies Inc (http: // sphinxsearch.com) Menggunakan fail konfigurasi '/etc/sphinxsearch/sphinx.conf '... indeks indeks' test1 '... dikumpulkan 4 dokumen, 0.0 mb disusun 0.0 mhits, 100.0% Selesai Jumlah 4 Dokumen, 193 Bytes Jumlah 0.006 sec, 30791 bytes/sec, 638.16 DOCS/Sec Indexing Index 'Test1stemmed' ... dikumpulkan 4 dokumen, 0.0 mb disusun 0.0 mhits, 100.0% Selesai Jumlah 4 Dokumen, 193 Bytes Jumlah 0.001 sec, 99382 bytes/sec, 2059.73 DOCS/Sec Melangkau Indeks Bukan Plain 'Dist1' ... Melangkau Indeks Bukan Plain 'RT' ... Jumlah 8 bacaan, 0.000 saat, 0.1 kb/panggilan avg, 0.0 msec/Call AVG Total 24 Writes, 0.000 saat, 0.1 kb/panggilan avg, 0.0 msec/hubungi avg 

Langkah 5 - Memulakan Sphinx

Juga, konfigurasikan anda pelayan sphinx untuk memulakan automatik pada boot sistem. Gunakan arahan di bawah untuk menetapkan Mula ke Ya.

sudo sed -I 's/start = no/start = yes/g'/etc/default/sphinxsearch 

Sekarang juga memulakan perkhidmatan untuk pertama kalinya dan periksa statusnya.

perkhidmatan sphinxsearch start status sphinxsearch status 

Anda juga boleh mengkonfigurasi pengindeks di Crontab anda untuk menjalankannya secara berkala. Tanah di bawah akan berjalan pada setiap jam.

0 * * * */usr/bin/indexer --lotate -semua 

Langkah 6 - Bekerja dengan Sphinx

Mari laksanakan beberapa pertanyaan di pelayan Sphinx anda. Sambungkan pertama ke pelayan SPHINX MySQL menggunakan ocmmand berikut.

MySQL -H0 -P9306 

Sekarang jalankan satu demi satu arahan di bawah dan lihat perubahannya. Ini hanya untuk pembelajaran anda sendiri.

mysql> pilih * dari test1 di mana padanan ('dokumen'); mysql> masukkan ke dalam nilai rt (1, 'menambah', 'teks sampel di sini', 11); mysql> masukkan ke dalam nilai rt (2, 'menambah lebih banyak', 'teks sampel di sini', 22); MySQL> pilih GID/11 dari RT di mana perlawanan ('sampel') kumpulan oleh GID; mysql> pilih * dari pesanan RT oleh GID DESC; mysql> pilih *, berat () dari test1 di mana padanan ('"dokumen satu"/1'); mysql> show meta; mysql> set profil = 1; mysql> pilih * dari test1 di mana id dalam (1,2,4); mysql> tunjukkan profil; mysql> pilih id, id%3 idd dari test1 di mana padanan ('ini tidak ada') kumpulan oleh idd; mysql> tunjukkan profil; mysql> pilih id dari test1 di mana padanan ('adakah ini rancangan yang baik?'); mysql> rancangan rancangan; mysql> pilih Count (*) dari test1; mysql> kata kunci panggilan ('satu dua tiga', 'test1'); mysql> kata kunci panggilan ('satu dua tiga', 'test1', 1); mysql> tunjukkan jadual;