title: MySQL - Need to search URL table for URLs containing a specified word
body: <p>I have a table of URLs, and I need to find any URLs that contain a keyword, such as "fogbugz" or "amazon".  If the keyword appears anywhere in the URL, I'd like it to be a result.</p>
  
  <p>Right now, I'm trying:  </p>
  
  <pre><code>SELECT url FROM url WHERE url LIKE '%keyword%'
  </code></pre>
  
  <p>Which is predictably slow, even when url is indexed.</p>
  
  <p>I'm open to alternative methods for indexing this quickly, including scripting methods.  I was thinking about going through each URL, splitting it up by "/" then "_ or -" characters, and storing those in a separate url2keyword table.  With this method, a URL like: "<a href="http://www.foo.com/directory/article-name" rel="nofollow noreferrer">http://www.foo.com/directory/article-name</a>" would have "foo" "directory" "article" "name" as its keywords.  Just an idea.</p>
  
  <p>Of course, if there's a simpler way to do this in MySQL, or in general, I'd prefer that.</p>
  
  <p>I'd like your suggestions on this matter!  Thanks.</p>