我已经看到一些专用的 MySQL 服务器,它们只使用一个内核。我比 MySQL 的 DBA 更擅长开发,所以需要一些帮助
服务器非常庞大,具有 OLAP/DataWarehouse (DW) 类型的负载:
注意:最大的 DB 是从 OLTP DR 服务器复制的 DB,DW 就是从这里加载的。它不是完整的 DW:仅持续 6 个月到 6 周,因此它比 OLTP DB 小。
ALTER TABLE...DROP KEY...ADD INDEX
假设一个主要包含 InnoDB 表的生产 OLTP 系统
任何详述特定status
变量和诊断的轶事将不胜感激。
RAM 的重要性是一个既定的事实,但在 MySQL 使用 CPU 时,关于内核和多线程重要性的资料要少得多。我说的是在 4cores vs 6cores vs 8cores 上运行 MySQL 的区别等等。
不同的存储引擎使用 CPU 的方式不同吗?
由于 RAM 的限制,是否可以让 InnoDB 使用与 MyISAM 相同的索引而不是聚集索引,同时获得其并发性能的好处?
我正在尝试确定 MySQL 优化器在估计(准备)查询的成本时从何处获取可用于表的索引列表。
我已准备好从 MyISAM 迁移到 InnoDB,但想知道是否有要查找的完整列表?例如,我没有看到任何列表提到DISABLE KEYS
在 InnoDB 表上运行会抛出警告,除了ALTER TABLE
. 这是我在转换之前需要了解的那种事情。我以为我可以接受我的查询,但显然不是。
我查看了 my.ini 并看到了各种默认设置。我的数据库在一台独立的 PC 上运行。我想总体上优化 InnoDB 和 MySQL 的性能以提高性能。没有磁盘空间限制。我应该更改哪些默认设置以优化以获得更好的性能、可靠性和可能的时间点备份 [高可用性]。
已编辑
目前,每当我通过 MySQL Administrator 上的维护运行“优化表”时,它都会显示:
表不支持优化,改为重新创建+分析
在所有桌子上。我所有的表都是InnoDB,但为什么不支持Optimize?