调整远程MySQL服务器?

我不得不在Windows机器上调整客户端的MySQL服务器,但我只能访问MySQL cli和一些 MySQLAdmin cli函数。 我看不到我怎么可以mysql平台,因为它需要在与MySQL相同的服务器上运行。

有没有一种方法可以在不访问操作系统的情况下对MySQL进行基准testing或调优? pipe理服务器的系统pipe理员告诉我,只要给他发送任何configuration更改,他就会应用它们,但这将永远来回,我甚至不知道需要修改的地方,因为我看不到系统上的任何东西。

其他人有这样的问题?

谢谢。

我们在这里谈论什么样的调整?

也许最好的办法是让你们都读一本像“高性能的MySQL”这样的书,并且共同策划最好的策略。

远程执行绝对不是最有效的做事方式,但如果你在另一端有合适的合作,这并不是完全不可能的。

我认为这里真正的关键是要让你们两个都成为“同一支队伍”。

一个“响应速度慢”的系统pipe理员也不是最有趣的工作。 也许你们可以安排一些电话时间,并参加一般性的战斗计划……然后从那里微调呢?

对不起,听起来模糊和一般,但这是我能做的最好的问题的细节。

希望这可以帮助。

你在调整什么? 有这么多的因素和variables,你需要非常清楚这一点。 通过在本地设置另一个MySQL安装,您可以节省大量时间和挫败感,并在将新parameter passing给服务器pipe理员之前,对其进行大量调整。

我不确定你走了多远,所以请原谅我,如果这个答案太笼统了。

有几个工具,像supersmack和mybench,应该远程运行。

同时,您是否已经完成了确定服务器上已经存在的内容的工作? 我总是感到惊讶,我可以得到多远:

  1. 仔细检查服务器的规格(ram,cpus / cores,磁盘types和基准)。 你的pipe理员应该愿意给你。
  2. 确保我select了合适的表引擎和索引。 通常innodb交易/程序,myisam其他大多数。 索引应该涵盖最常见的查询计划,并且具有良好的混合基数以快速减less您的设置。
  3. 从那里,你可以调整你的SQLvariables集。 以显示variables和显示状态开始,确保你的值匹配ram和stream行的引擎types(如果一切都是myisam,那么在大的innodb缓冲区中没有任何意义)。 根据您的特定数据需求(trx_commit级别等),可能会有很多性能提升。
  4. 创build一个或两个脚本来运行远程服务器perl是你最好的朋友。 你会在网上find很多的帮助,但是从CPAN的DBD :: mysql页面开始。 你会惊喜于你可以用几个简单的脚本生成的负载。
  5. 在一两次运行后查看你的统计数据,看看你的查询caching在做什么等。免费的mysqladmin工具有一些基本的监控function,你也可以在testing中看到。

听起来完全不可能; 告诉他们获得一个生产规格的性能testing机器,并在那里以相同的方式部署应用程序。 使用模拟生产数据加载模拟生产stream量时,获取加载模拟器(如果可行,则使用副本)

在testing之前不要对生产箱进行性能调整,否则可能会使情况变得更糟,甚至导致function性错误。