我的数据库中有一个表:
我正在使用 MySQL 插入/更新/创建信息,但是执行查询所需的时间很慢,例如:
首先,当用户运行我的应用程序时,它会通过从数据库中检索所有 IP 来验证他们是否可以使用它
SELECT IP FROM user_info
如果 IP 在数据库中,则使用 while 循环执行另一个查询:
"SELECT Valid FROM user_info WHERE IP='".$_SERVER['REMOTE_ADDR']."'""
如果 Valid 为 1,那么他们可以使用它,否则他们不能使用,但是如果在 db 中找不到他们的 IP,它会使用为他们创建一个新条目
"INSERT INTO user_info (IP,First) VALUES ('".$_SERVER['REMOTE_ADDR']."','".date("Y/m/d") ."')")"
现在这个第一个脚本已经完成它访问另一个 - 这个应该每分钟更新一次数据库但是我不认为我现在可以做到这一点;更新查询是这样的:
"UPDATE user_info SET Name='".$Name."', Status='".$Status."', Last='".$Last."', Address='".$Address."' WHERE IP='".$_SERVER['REMOTE_ADDR']."'")"
总之,平均需要2.2 秒,并且表 atm 中只有 1 行
我的问题是如何加快 mysql 查询?我已经阅读了索引以及它们如何帮助提高性能,但我不完全了解如何使用它们。关于这个话题的任何启示都会有所帮助。
小块蛋糕