首先,我对 PHP / mySQL 还是很陌生,所以如果它对你来说太简单了,请原谅我的问题 :)
这是我的问题:我目前正在将大量数据存储到 mysql 数据库中。它基本上是我儿子学校的档案目录。
结构基本上是:
id、关键字、标题、描述、url、排名、哈希
id is int 11
keyword is varchar 255
title is varchar 255
description is text
url is varchar 255
rank is int 2
hash is varchar 50
我们计划插入包含上述字段的大约 1000 万行,我的任务是能够尽可能快地查询数据库。
我的查询总是针对确切的关键字。
例如:
select * from table where keyword = "keyword" limit 10
我真的只需要查询关键字而不是标题或描述或其他任何内容。每个关键字最多有 10 个结果 - 永远不会更多。
我对mysql索引和东西一无所知,但我读到如果你有一些索引它可以提高速度。
现在这是我需要专业人士帮助的地方。我的任务是能够以最快的速度运行查询,因此查询数据库不需要太长时间。由于我只查找关键字字段,我相信有一种方法可以确保即使您有数百万行,也可以快速返回结果。
你会建议我做什么。我应该将关键字字段设置为 INDEX 还是必须观看其他内容?由于我对索引没有真正的线索,因此感谢您的帮助,这意味着我不知道我是否应该使用索引,或者我是否必须将它们用于关键字、标题、描述等所有内容......
数据库会经常更新——以防万一。
您认为甚至可以在不到一秒的时间内存储数百万行并进行查询吗?
任何其他建议(例如自定义 my.cnf 设置等)也会有所帮助。
非常感谢您的帮助。