目前最流行的两种后台数据库为MySQL and MS SQL Server,
下面列表说明它们两者之间的重要差别:
下面列表说明它们两者之间的重要差别:
对比项目 | MYSQL | MS SQL SERVER |
软件费用 | 开源软件, 大部分版本免费 Windows 任何 200美元 Unix或Linux 自行安装 免费 Unix或Linux 第三方安装 200美元 | 版权软件,收费 SQL Server2005官方报价5999美元/处理器或2799美元/Server |
平台支持 | 各种平台,比较适合unix平台 | 只能在Windows平台 |
访问速度 | 默认MyISAM存储引擎,速度很快 | 速度较快 |
数据类型 | 字段类型多, 字符串最大支持65536 | 多,字符串最大支持8000 |
管理方式 | 较容易 | 非常容易 |
开发软件 | C,C++,JAVA(JDBC),Perl,Python,PHP and TCL 的API接口等 | C,C++,JAVA(JDBC),asp等 |
事务操作 | INNODB存储引擎下支持,速度比较慢 | 支持,速度比较快 |
SQL语法 | 较容易,不支持某些扩展SQL语法 | 容易,支持扩展SQL语法 |
中文支持 | 支持中文 但开发和转移数据时容易出现中文字符问题 | 全中文环境 |
导入导出 | 较难,速度快的是字符操作界面 | 容易,全是图形操作界面 |
维护监控 | 比较难 | 容易 |
用户安全 | 比较高 | 比较低 |
备份恢复 | 较简单 | 简单 |
第三方软件 | 多 | 更多 |
染病毒风险 | 低 | 高 |
开发难度 | 较高 | 低 |
存储过程 | INNODB存储引擎下支持,速度较慢 不容易使用 | 支持,图形化查看编辑界面 容易使用 |
链接服务器 | 不支持 | 支持,设置很容易 |
MySQL and MS SQL Server在某些方面都也有类似的功能: 简单基本的SQL语法、支持事务操作、管理和使用比较简单、在普通PC机上也能达到较快的速度等。 TB大表都是支持的,它跟操作系统下文件系统和I/O性能有关,一般情况下,表越大查询起来越慢。 并发连接数最大值跟服务器配置有关,常用是几十到一千。 我在普通PC机512M内存的测试环境中发现: 大量事务操作的SQL(insert,update,delete)MS SQL Server比MYSQL要快很多。 大表(600M物理文件)的查询sqlserver按索引的查询比mysql快一些。 用全英文的MYSQL图形化异种数据库迁移工具(Migration Toolkit), 从MS SQL Server导出数据到MYSQL数据库时不能正确导入含中文字符的表信息。 只能先把含中文的表信息生成到以Tab分割的文本文件里,再用MYSQL LOAD DATA LOCALFILE命令来导入。 MS SQL Server存储过程没有一个能导入MYSQL成功的,因为语法不同,全部都创建失败。 MYSQL没有象MS SQL Server那样的事件探查器工具,无法快速准确地找到性能瓶颈的SQL语句和应用程序。