Closed. This question is opinion-based。它当前不接受答案。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
4年前关闭。
我有一个大约30gb数据的MySQL数据库。一些表包含超过4000万行。我使用InnoDB。我在本地PC上仅使用“从table_name选择count(*)”进行查询,这大约需要5分钟。我认为这对我来说不可能参加。我想问一下我有什么办法可以改善性能。还是我需要切换到另一个数据库?我从未在DB中遇到过如此大的数据。请帮忙。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
4年前关闭。
我有一个大约30gb数据的MySQL数据库。一些表包含超过4000万行。我使用InnoDB。我在本地PC上仅使用“从table_name选择count(*)”进行查询,这大约需要5分钟。我认为这对我来说不可能参加。我想问一下我有什么办法可以改善性能。还是我需要切换到另一个数据库?我从未在DB中遇到过如此大的数据。请帮忙。
最佳答案
我已经运行了超过1亿个条目的mysql实例,每天提供超过3000万个查询。这样就可以了。
如果配置类似,则任何其他数据库系统都将出现您遇到的问题。
如果这是关键任务,我只能给您一些提示,请考虑雇用专业人员来调整您的系统。
您需要了解的基础知识;
此大小的数据库最好在具有SSD磁盘和至少2个核心的专用服务器上运行;
您的服务器将需要大量RAM,至少您的数据库总大小+其他系统资源的20%;
确保已为mysql配置了足够的内存,占总RAM的80%。执行此操作的主要设置为innodb_buffer_pool_size
;
优化查询,并在需要的地方建立索引-这是一种很好的技术,但是可以大大提高性能,学习在查询中使用EXPLAIN ...
。
关于mysql - MySQL正在吸取大数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33643865/