数据库
首页 > 数据库> > mysql – 多个表还是一个表?

mysql – 多个表还是一个表?

作者:互联网

我已经看到了一些有这个问题的论坛,但他们没有回答我想知道的一件事.我先解释一下我的主题:

我有一个系统,其中多个用户的每个日志都输入到数据库中(例如,登录User1,登录User2,User1进入用户管理,User2更改密码等).所以我预计每个用户每天会有100到200个条目.现在,我在单个表中进行查看,我只需要使用UserID过滤掉.

我的问题是,哪个更有效率?我应该使用一个表还是为每个用户创建一个表?

我担心如果我使用单个表,系统可能会有一些难以过滤数千个条目.我已经阅读了一些使用多个表和一个表的优缺点,特别是有关更新表的信息.

我也想知道哪一个节省了更多空间?多桌还是单桌?

解决方法:

只要你在选择的字段上使用索引,你就不应该有任何速度问题(尽管索引写入速度慢,所以太多都是坏事).具有几千个条目的表对mySQL(或任何其他数据库引擎)来说都不算什么.

创建数千个表的开销要差得多 – 比如说你想对用户表中的字段进行更改 – 现在你必须更改数千个表.

我们经常搜索单个记录@工作的表有大约150,000行,并且因为我们搜索的字段是索引的,所以搜索时间只有很短的几分之一秒.

如果您在不使用主键的情况下选择这些记录,请在用于选择的字段上创建索引,如下所示:

CREATE INDEX my_column_name ON my_table(my_column_name);

这是最基本的形式.要了解有关它的更多信息,请查看here

标签:mysql,database,database-performance
来源: https://codeday.me/bug/20190730/1579538.html