使用mysql数据库这样安全吗?

时间:2017-01-13 02:24:52

标签: mysql

我有一个名为DATA的表 在此表中,第一列是UUID 在此表中,第二列是名称 那就是它。

现在,我的DATA表中目前有1,057 uuid / name。 我的计算机上的文本文件中还有200个uuids列表。

运行200个查询以返回与我的200 uuids相关联的名称是否安全?

如果我想多次这样做,说每分钟都会遇到任何问题?

如果可能,需要多长时间?

2 个答案:

答案 0 :(得分:0)

最好将数据保存在数据库中以加快处理速度,而不是每次都从文件系统中读取数据。

现在,让我们考虑你仍然坚持在DB中的文件中存在200个UUID。我建议,您可以通过使用存储这200个UUI的中间缓存来最好地处理。这样可以防止每五分钟读取一次文本文件,而是根据缓存超时时间进行读取。

答案 1 :(得分:0)

尽管200个查询对于索引良好的数据库来说并不算什么,但是这里有一些比使用文本文件每分钟运行查询更好的选项。

首先,确保将UUID列编入索引。这将使查询O(1)而不是每次都扫描整个表。

然后,您可以使用大型IN子句执行单个查询,而不是对每个UUID执行查询。

SELECT whatever
FROM data
WHERE id IN (list, of, uuids, ...)

最后,您可以将感兴趣的UUID放入自己的表中,然后加入其中,而不是拥有一个大文本文件。这为您提供了数据库带来的并发性的所有好处,并且您的所有数据都在一个地方。

INSERT INTO users_of_interest
    (id)
    VALUES (...), (...), (...), ...

SELECT users.*
FROM users_of_interest
JOIN users ON users_of_interest.id = users.id

然后,您可以在列表更改时插入和删除users_of_interest。请务必在交易中执行此操作,以避免其他人在您进行更改时进行更改。