免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 10217 | 回复: 12
打印 上一主题 下一主题

mysql速度慢,不知道什么原因? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-06-13 12:19 |只看该作者 |倒序浏览
两台linux主机,其中一台 双xeon2.4CPU,2G内存,内网ip192.168.10,用做数据库服务器;
另一台内网ip192.168.1.20,跑APACHE+PHP,现在在.20那台机器上访问数据库,发现速度很慢,
mysql安装的是MySQL-Max-4.1.7-0.i386.rpm,在google搜了一下,说是在my.cnf里[mysqld]加入
skip-name-resolve,但是没有作用,另外怎么没有max-connection=  的设置?
实在是查不出原因了?难道是MYSQL安装有问题吗?安装过程中没有出现任何错误啊!

论坛徽章:
0
2 [报告]
发表于 2007-06-13 13:09 |只看该作者
top 一下:
PID USER     PRI  NI  SIZE  RSS SHARE STAT %CPU %MEM   TIME CPU COMMAND
3622 mysql     21   0 73280  71M  3892 R    24.9  3.5 343:50   1 mysqld-max

发现RSS  TIME 在不停的增长中,是不是这个原因?如果是,为什么会这样?

论坛徽章:
0
3 [报告]
发表于 2007-06-13 14:29 |只看该作者
重装了mysql-max-4.1.20-pc-linux-gnu-i686-icc-glibc23.tar.gz,问题解决!

论坛徽章:
0
4 [报告]
发表于 2007-06-15 15:00 |只看该作者
重装不是办法,为什么会出现这种现象?

论坛徽章:
0
5 [报告]
发表于 2007-06-15 17:55 |只看该作者
原帖由 yourantianya 于 2007-6-15 15:00 发表
重装不是办法,为什么会出现这种现象?


肯定是没装好, 编译参数, 或者什么设置被毁坏了贝...

论坛徽章:
0
6 [报告]
发表于 2007-06-19 17:32 |只看该作者
原帖由 steelyoung 于 2007-6-13 12:19 发表
两台linux主机,其中一台 双xeon2.4CPU,2G内存,内网ip192.168.10,用做数据库服务器;
另一台内网ip192.168.1.20,跑APACHE+PHP,现在在.20那台机器上访问数据库,发现速度很慢,
mysql安装的是MySQL-Max-4.1 ...


把my.cnf 中的 [mysqld]帖出来看看

论坛徽章:
0
7 [报告]
发表于 2007-06-20 16:22 |只看该作者
开始速度还行,这几天又比较慢了,有时快有时慢,白天比晚上慢!
我是删除了RPM安装包,重装了mysql-max-4.1.20-pc-linux-gnu-i686-icc-glibc23.tar.gz
/etc/my.cnf 是默认设置!

# The MySQL server
[mysqld]
port                = 3306
socket                = /tmp/mysql.sock
skip-locking
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M


#skip-networking

# Replication Master Server (default)
# binary logging is required for replication
log-bin

# required unique id between 1 and 2^32 - 1
# defaults to 1 if master-host is not set
# but will not function as a master if omitted
server-id        = 1

执行top ,发现有时CPU使用率很高,load average有时达到15以上,

16:12:30  up 8 days,  4:44,  1 user,  load average: 7.26, 6.46, 5.51
42 processes: 41 sleeping, 1 running, 0 zombie, 0 stopped
CPU states:  cpu    user    nice  system    irq  softirq  iowait    idle
           total   58.7%    0.0%   41.1%   0.0%     0.0%    0.0%    0.0%
           cpu00   54.4%    0.0%   45.4%   0.0%     0.2%    0.0%    0.0%
           cpu01   59.8%    0.0%   40.2%   0.0%     0.0%    0.0%    0.0%
           cpu02   54.8%    0.0%   45.2%   0.0%     0.0%    0.0%    0.0%
           cpu03   66.0%    0.0%   33.8%   0.0%     0.0%    0.0%    0.2%
Mem:  2061612k av, 1904056k used,  157556k free,       0k shrd,  177932k buff
                   1275156k actv,   78272k in_d,   30704k in_c
Swap: 2047976k av,       0k used, 2047976k free                 1362140k cached

  PID USER     PRI  NI  SIZE  RSS SHARE STAT %CPU %MEM   TIME CPU COMMAND
3428 mysql     21   0 38544  37M  4508 S    24.9  1.8 401:31   3 mysqld


执行ps -aux 也发现MYSQL占用CPU 很高;
root      3395  0.0  0.0  4248 1196 ?        S    13:57   0:00 /bin/sh ./bin/mysqld_safe --datadir=/var/mysql/data --pid-fil
mysql     3428 99.9  1.9 130276 39204 ?      S    13:57 408:34 /var/mysql/bin/mysqld --defaults-extra-file=/var/mysql/data/

另外这台机器有天夜里突然挂了,第二天检查是电源坏了,原来的系统盘也有问题,我是换了电源、换了个旧的SCSI硬盘重装了系统,但现在出现速度慢的现象!查不到是什么原因!
机器配置:intel se7501br2主板,双xeon2.4CPU,2G内存,希捷36G SCSI硬盘(是从其他坏的机器上拆下来的,没有问题)!

论坛徽章:
0
8 [报告]
发表于 2007-06-20 16:53 |只看该作者
刚才
# uptime
16:51:41  up 8 days,  5:23,  3 users,  load average: 26.44, 15.60, 12.40

load average竟然那么高!系统问题大了啊!到底是什么原因引起的?

论坛徽章:
0
9 [报告]
发表于 2007-06-20 16:56 |只看该作者
server-id        = 1
------------------------------------
你做replication了?没做就关掉吧。

帮你分析一下,希望对你能有帮助:
首先,mysqld的RSS只有37M,这显然太小了。你要是2G内存,这个值应该在600M左右才能合理利用资源。
其次,你的4个cpu线程负载都在50%以上,cpu负载实在太高了。就是因为你的mysql使用了过少的内存,所以需要cpu不断读硬盘。如果你多给mysql分配些内存用,cpu就空闲下来了。
所以,先更改my.conf里的相应参数(你自己搜索优化文档吧,我不知道你的数据库表个数,大小的数据)

进入mysql
mysql> show processlist;
看看你速度慢的时候都有哪些mysql进程在执行,一共有多少,最慢的执行了多长时间。
对于一台pc服务器,并发进程最好保持在100以下,否则就该考虑优化数据库或者再布置sql服务器了。

建议你把show processlist的信息贴出来。

另外,你怀疑是硬件有故障或者不兼容,那么你用hdparm命令来查看一下你硬盘的读写速度吧。如果没有问题,那么就可以排除是硬件故障问题了。

最后给你个建议,数据库服务器一定要买台好的,不管多穷都不要用攒的服务器跑数据库业务。应该在web服务器上省钱。

论坛徽章:
0
10 [报告]
发表于 2007-06-20 18:10 |只看该作者

问题解决了吗

你可以把你的sar -ud 贴出来看看
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP