我的设置
- Ubuntu 12.04
- 静态 IP 地址
- mysql 5.5.28
这是一台在我的本地网络中仅用于开发的机器。所以我安装了 Ubuntu,除了设置静态 IP 外没有做太多改动。
Mysql 在这台机器上非常慢。例如,转储一个包含几百条插入语句的数据库需要 15 分钟,而在另一台较小的机器上则需要不到一分钟。
我认为我的网络配置有问题,可能缺少某些东西或者出现错误。我该如何调试这个问题?
/etc/网络/接口
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.1.80
netmask 255.255.255.0
network 192.168.1.1
broadcast 192.168.1.255
gateway 192.168.1.1
dns-nameservers 8.8.8.8 8.8.8.4
dns-searcch google.com
我的.cnf:
bind-address = 127.0.0.1
答案1
我可以看到几种查找性能瓶颈的方法:
- 有两个完全相同的硬件,一个有问题,一个没问题。每次只改变一个有问题的硬件,直到问题变好。最后改变的就是问题所在。(注意,可能存在多个问题。)
- 跑步
mysqltuner
在坏盒子上并遵循它所提出的任何建议。 - 使用和选项
strace
在 MySQL 上运行,并观察它花费所有时间做什么。选项也很有用。-tt
-T
-c
- 设置一个运行 Cacti、Zabbix、Munin 等的监控箱,并观察当性能问题发生时哪个指标达到 100%。
不能保证这是软件或配置问题。由于您正在比较不同的(可能完全不同的)硬件,因此您的开发箱可能已经达到其容量上限。唯一能使其更快的方法可能是购买更好的硬件。如果不知道您正在比较的开发箱的详细信息,没有人可以确定。