我有一个MySQL
有 2,000,000 行的表,我的网站每天有 40.000 到 50.000 次访问,PHP 每秒总共运行 150 个查询,MySQL CPU 使用率约为 90%。该网站非常缓慢。
专用服务器:AMD Opteron 8 核,16 GB DDR3。
以下是 MYSQL 查询详细信息:
Search Example: Guns And Roses
Table Storage Engine: MyISAM
Query example:
SELECT SQL_CACHE mp3list.*, likes.* FROM mp3list
LEFT JOIN likes ON mp3list.mp3id = likes.mp3id
WHERE mp3list.active=1 AND mp3list.songname LIKE '%guns%'
AND mp3list.songname LIKE '%and%' AND mp3list.songname LIKE '%roses%'
ORDER BY likes.likes DESC LIMIT 0, 15"
“歌曲名”列是VARCHAR(255)
.
我想知道我必须做些什么来实现更轻的 mysql 搜索,如果有人可以帮助我,我将永远感激,我正在寻找一个解决方案数周。
先感谢您。