荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: golf (..), 信区: Linux
标  题: Mysql性能测试[欢迎转载]
发信站: BBS 荔园晨风站 (Sat Dec  4 11:59:37 1999), 转信

测试目的:了解MYSQL数据库在UNIX下的性能;希望能够
          比较UNIX系统和LINUX下系统的文件系统,磁盘IO,
          CPU使用能力,线程能力对MYSQL应用的影响。
          [欢迎转载,讨论,请勿修改。]
系统配置如下:

        SERVER:
                硬件配置:
                CPU0: Pentium II 350 (512k)
                CPU1: Pentium II 350 (512k)
                HD: Seagate 39130 LW, IBM 09D (LVD)
                SCSI: Adaptec 78xx
                Memory: ECC PC100 256M(128*2)+128M(64*2)
                NIC:  INTEL PRO 100B+ 100M SWITCH
                软件配置:
                Database: Mysql-3.22.27
                IP: 192.168.0.1
                DNS: myserver

        CLIENT:
                硬件配置:
                CPU:  Pentium III 400 (512K)
                HD:   IBM 32160
                SCSI: Symbios 78xx
                Mem:  ECC PC100 128M(128*1)
                NIC:  INTEL PRO 100B+ 100M SWITCH
                软件配置:
                OS:   RedHat Linux 6.1
                IP:   192.168.0.2
                DNS:  myclient

测试方法:

        1。SERVER 安装 Mysql发行版或者自行编译,以缺省参数启动服务器;
        2。在SERVER的HOSTS文件中写入CLIENT的DNS名称,让SERVER能够
           将IP影射为域名,这样MYSQLD服务器才能进行客户认证,
        3。配置SERVER: 在MYSQL的USER数据库中加入CLIENT客户:
           % mysql -u root -p
           mysql> use mysql
           mysql> insert into user values ('myclient','test',
                >'38....('test'加密后的密码)',
                >'Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');
           mysql> quit;
        4。CLIENT 安装 Mysql和PerDBI,运行/usr/local/sql-bench/下的
run_all_tests,
           在这里,我将不进行connect测试,将test-connect移除。
           运行以下命令行:
           run-all-tests --server=mysql --host=myserver --user=test \
                         --password=test --log
        5。测试结果LOG到output/目录下供分析使用。

说明:以上配置及测试方法仅供参考。

以下是测试结果的比较:

--------------------------------------------------------------------------------
---
                                Sql-Bench Results
--------------------------------------------------------------------------------
---
               FreeBSD3.3 SMP   BSDi 4.01 SMP   Solaris7 x86 SMP     Redhat 6.1
SMP
Alter-table     1065            1214            1051                 632
ATIS            171             133             106                  81
Big-table       130             69              63                   61
Create          454             302             290                  11
Insert          31033+          17760+          15154+               8060+
Select          2450            2011            1635                 1414
Winsconsin      87              113             36                   30
--------------------------------------------------------------------------------
---
(单位:Test时间秒 + 表示实际结果比测试结果更差些)

简单分析和说明:

基本的测试状态表明有关INSERT,CREATE,DELETE的操作对磁盘子系统使用较高,
而SELECT,UPDATE等操作则对CPU使用较高,但是对于SMP系统最多也就达到50% 。
我想,从上面的测试,基本应该看出什么样的系统的表现能力较强,但是至于您
是否采用某种操作系统,还要考虑应用层面的其他因素,另外,关于测试的模型,
这次测试相当局限,因为只采用了一个客户端,并且测试完全是SQL-BENCH的脚本
而我认为应该采用更多的CLIENT,按照一定的MIX进行测试更好,采用100M网络希望
对测试的影响小些。

测试结果正如预期:

MYSQL在FREEBSD上的表现最低,FREEBSD的文件系统,SMP和线程不能另人满意,
而LINUX则要归功于他的文件系统,最快速,但如果客户的连接数目较大,
不敢保证LINUX整体的性能会好;
而BSDI是唯一商业化的BSD系统,比起FREEBSD当然在系统上下过不少的工夫,略胜一筹,
而SOLARIS X86表现也不错,原以为在X86上的SULARIS性能不会好到那里去,但SUN在
文件系统和THREAD上的优势在MYSQL上确体现出来了,如果再加上RAID系统,我大概
是要选择SOLARIS了,LINUX和SOLARIS对硬件的支持要比BSD好些吧(仅代表个人观点)。

以下是一些主要的参数比较(仅供参考):
-------------------------------------------
               FreeBSD  BSDi   Solaris  Redhat
               3.3      4.01   x86 7    6.1
               SMP      SMP    SMP      SMP
-------------------------------------------
Alter-table
-------------------------------------------
Alter_table_add(992):
                629     717     625     349
Alter_table_drop(496):
                419     479     409     271
-------------------------------------------
ATIS
-------------------------------------------
Select_join(200):
                85      59      44      29
Select_distinct(800):
                35      30      24      21
Select_group(2700):
                34      29      24      22
-------------------------------------------
Big-table
-------------------------------------------
Select_many_fields(1000):
                53      20      19      19
Select all_fieldsselect_many_fields(1000):
                59      28      26      25
-------------------------------------------
Create
-------------------------------------------
Create_table(1000):
                67      83      60      5
Drop_table(1000):
                53      60      46      0
Create+drop(1000):
                166     78      89      3
Create_key+drop(1000):
                166     78      94      2
-------------------------------------------
Insert
-------------------------------------------
Insert(300000):
                462     496     319     207
Select_diff_key(500:1000):
                518     372     290     363
Count(100):
                133     107     54      86
Update_with_key(100000):
                1119    524     445     482
Outer_join(10:10):
                243     222     141     109
Insert_key(100000):
                9043    2671    3137    180
Update_of_key(256):
                1347    409     345     78
Delete_big_many_keys(2):
                4277    1281    2211    107
-------------------------------------------
Select
-------------------------------------------
Min_max-on_key(70000):
                376     295     232     270
Count_on_key(50000):
                1629+   1316+   1048+   784+
-------------------------------------------
Wisconsin
-------------------------------------------
Insert(31000):
                69      99      27      22
Wisc_benchmark(114):
                16      12      8       8
-------------------------------------------



                golf post to bbs.szu.edu.cn
                1999/12/3
                [欢迎转载,讨论,请勿修改。]
--
※ 修改:·golf 於 Dec  4 12:19:50 修改本文·[FROM: 210.74.148.187]
※ 来源:·BBS 荔园晨风站 bbs.szu.edu.cn·[FROM: 210.74.148.187]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店