Unfortunately, you are just not going to get the same level of performance with the MySQL fulltext search as you will from the dedicated search solutions, but that begs the question--do you care?
sphinxsearch will give you faster indexing, more advanced queries, incremental updates, and it will work out of the box with MySQL--but it is still a separate ...
Postgres has an outstanding out of the box support for full-text search.
I do use Elasticsearch, I did migrate from sphinx, and yes, the learning curve is higher, but it worths as It has a really flexible way to query with JSON.
A couple of strange things stand out here.
Your system is 94.5% idle and yet MySQL is using 129% of your CPU. Something's very screwy there.
MySQL is only using 3% of your available memory. I see a PHP process running there too so I guess this is a combined web and database box, but nonetheless I would expect you to give more RAM to MySQL, just make sure ...
I am not sure you can do anything the mysql full-text search is not really very good in my experience.
run less queries. mamy full text searches per page view is going to be expensive for the cpu.
Redesign your database/application so that you update some kind of index table when content is inserted, instead of when a page is viewed. It ...
You may also want to create a custom stopword list because there are 640 words that are excluded from FULLTEXT indexes. Some of those two letter words omitted are: on, of, it, is. Take a look at the full list.
Perform the following
Step 01) Create a stopwords.txt file
echo "a" > C:\mysql_stopwords.txt
echo "an" >> C:\mysql_stopwords.txt
It sounds like an issue with the UNK table. The field was probably not created as a date/time field in the first place. Delete the FT index, do an offline compact, and re-build the FT index.
See http://www-01.ibm.com/support/docview.wss?uid=swg21261002 for more info.
If you can't restart the instance, you can schedule a log cleanup with sp_fulltext_recycle_crawl_log. More info: http://www.ruben-j.com/microsoft/t-sql/sql-fulltext-crawl-log/ or https://social.msdn.microsoft.com/Forums/windowsapps/en-US/b9420843-666e-4f33-b987-2624cdfa7acd/sql-server-2008r2-fulltext-logfile-sqlftlog-maintenance?forum=sqlkjmanageability or ...
sed -e 's/\(^.*<\)\(.*\)\(>.*$\)/\2/' yourfile.txt | sort |uniq
its unix example, but you can get that utils for Windows command line
sort and uniq
grep is somewhat line-based, so matching across line boundaries might be problematic with it. If you've the memory to spare, match against the whole file with e.g. perl:
$ (echo fish; echo cat; echo dog; echo frog) \
| perl -0777 -nE 'say $1 if m/(cat.dog)/s'
The "all sorts of quotes and backslashes" bit will likely mostly be avoiding shell interpolation ...
This is unanswerable. It may be minutes, or hours, or days. There's no way to know. The best you could do would be to read and follow this article in order to collect pre and post rebuild statistics that you can use in the future to "predict" how long a rebuild might take.
Windows search on the client can use the index created from search on the server.
For pdfs you will need a pdf ifilter.
Here is the kb article about how to install the indexing service on the server
You could also take a look at MS Search Server Express.
I also wonder the same :-(
Even in Windows 10 still nothing about the search function in the MMC view of Windows Services.
Anyway I found this utility Serviwin' at the following link:
It shows all the info about the services and has the search function too.
I hope this helps and also hope that Microsoft ...
The value of 84 for HA_FT_MAXCHARLEN is defined as a third of HA_FT_MAXBYTELEN (which is 254). This is defined in include/ft_global.h and changing it will mean recompiling MySQL - it is not a run-time variable. The reason it's a third is because in many character sets one character is not equal to one byte.
If you were to change HA_FT_MAXBYTELEN and ...
What exactly do you mean by "Windows shares". Are they accessible with Windows or are they on Windows servers?
It would help to know where those documents are stored.
What you may looking for is a search appliance.
You could also install the role service "Windows Search Service" on the Windows server. But this is not intended to index huge amounts ...
I know that many people have a hate-hate relationship with Windows Search 4.0+, but I've used it on occasion and it seemed to be OK. It will not by default index network locations (unless you cache them locally, which is retarded), but you can use This add-on to enable this for UNC shares. You should see a new tab when in search settings to allow for MS ...
can I increase a memory limit some where to increase the cardinality of my index
Eh? No. The cardinality is the number of unique values in the data divided by the total number of values in the table - changing the amount of memory available won't change your data.
As AndrewQ says, using stopwords to be more selective about what gets indexed can have a lot ...
If you think that something is wrong, use the utility myisam_ftdump to examine the indexes.
The cardinality depends on how many different words there are in the TEXT fields.
You haven't specified the contents of the fields, so the answer is not unique.
Also, if you haven't created a /etc/mystopwords file, MySQL uses its built-in list of stopwords.
I had a similar issues with the 32 bit version. I tried a couple of times to install with the same result. When I tried a third time, instead of putting a username/password for the service account, I left it blank and the install worked. I then changed the service account in the control panel applet afterwards.
Not sure if this helps anyone, but if someone ...