2009-06-21 16 views
7

मैं साझा होस्टिंग पर MySQL की है। क्या प्रशासक पहुंच के बिना ft_min_word_len के मूल्य को बदलने का कोई तरीका है?क्या मैं साझा होस्टिंग पर "ft_min_word_len" बदल सकता हूं?

मुझे एक वर्कअराउंड मिला, जहां 4 शब्द से कम वाले प्रत्येक शब्द को _ या कुछ अन्य char के साथ पूरक किया गया है, और यह 4 खोजशब्दों से कम प्रत्येक खोजशब्द के साथ किया जाता है।

क्या कोई बेहतर है, या क्लीनर लघु शब्दों के लिए फुलटेक्स्ट खोज कार्य करने के लिए?

उत्तर

14

दुर्भाग्य से, ft_min_word_len एक वैश्विक प्रणाली चर रहा है और गतिशील रूप से सेट नहीं किया जा सकता है: MySQL's online docs देखते हैं। इसे बदलने के आसपास हर FULLTEXT सूचकांक के पुनर्निर्माण, btw, तो आप देख सकते हैं कि क्यों वे इसके साथ गड़बड़ करने के लिए गैर व्यवस्थापक नहीं करना चाहते का मतलब होगा।

मुझे डर है अपने तरीके को (या कुछ पूरी तरह से बराबर) अपनी स्थिति में समस्या को हल करने का एकमात्र तरीका है। माफ़ कीजिये! (लेकिन, इसके बारे में सोचने के लिए प्रशंसा!)।

+0

* यदि * आपके पास व्यवस्थापकीय विशेषाधिकार थे: मैंने इसका परीक्षण नहीं किया है, लेकिन यदि आपका डेटा स्थिर है तो आप अस्थायी रूप से 'ft_min_word_len = 1' सेट कर सकते हैं, सर्वर को पुनरारंभ करें, अपना डेटाबेस और अनुक्रमणिका बनाएं, और जब आप हों रीसेट किया गया 'ft_min_word_len' और फिर से पुनरारंभ करें। तब आपके डेटाबेस को इंडेक्स के साथ छोड़ा जाएगा? – SK9

+0

मैं xampp का उपयोग करता हूं, मैं 'ft_min_word_len' कैसे ढूंढ सकता हूं? – Shafizadeh

+1

@Sajad, http://stackoverflow.com/questions/3706182/xampp-mysql-setting-ft-min-word-len पर एक नज़र –

0

मैं जानता हूँ कि यह एक पुरानी पोस्ट है, लेकिन आप

myisamchk --recover --ft_min_word_len=2 mytable.MYI 

कर सकता है किसी को सर्वर (यहां तक ​​कि गैर रूट के रूप में) और mysql ग्राहक उपकरणों के लिए खोल एक्सेस है, तो वैसे भी आप propably हर चलाने के लिए इस शेड्यूल करने के लिए है नए मूल्यों को भी शामिल करने के लिए दिन।

संबंधित मुद्दे