MySQL
MySQL(2)
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,[1]属于Oracle旗下产品,是最流行的关系型数据库管理系统之一。
MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言,由于其体积小、速度快、开放源码等特点,一般中小型网站的开发都选择MySQL作为网站数据库。
1发展历程
2008年1月16日,Sun(太阳微系统)正式收购MySQL。
2009年4月20日,甲骨文公司宣布以每股9.50美元,74亿美元的总额收购Sun计算机公司。
2版本介绍
标准版
MySQLMySQL 标准版让您可以交付高性能、可扩展的联机事务处理 (OLTP) 应用。它提供了令 MySQL 闻名于世的易用性以及行业级的性能和可靠性。
MySQL 标准版包括 InnoDB,这使其成为一种全面集成、事务安全、符合 ACID 的数据库。此外,MySQL 复制还让您可以交付高性能、可扩展的应用。
较低的 TCO — MySQL 让您可以尽量降低数据库总拥有成本。
可靠性、性能和易用性 — MySQL 被证明是全球广受欢迎的开源数据库。
数据库开发、设计和管理 — MySQL Workbench 提供了一种集成式开发、设计和管理环境,提高了开发人员和 DBA 的工作效率。
当需要其他功能时,可以轻松升级到 MySQL 企业版或 MySQL Cluster 运营商级版本。[3]
社区版
MySQL 社区版是全球广受欢迎的开源数据库的免费下载版本。它遵循 GPL 许可协议,由庞大、活跃的开源开发人员社区提供支持。[4]
MySQL 社区版包括:
1、可插拔的存储引擎架构
2、多种存储引擎:InnoDB、MyISAM、NDB (MySQL Cluster)、Memory、Merge、Archive、CSV等等
3、MySQL 复制可提高应用性能和可扩展性
4、MySQL 分区有助于增强大型数据库应用的性能和管理
5、存储过程可提高开发人员效率
6、触发器可在数据库层面实施复杂的业务规则
7、视图可确保敏感信息不受攻击
8、Performance Schema 可监视各个用户/应用的资源占用情况
9、Information Schema 有助于方便地访问元数据
10、MySQL 连接器(ODBC、JDBC、.NET 等)可以用多种语言构建应用
11、MySQL Workbench 可用于可视化建模、SQL 开发和管理
支持 20 多种平台和操作系统,包括 Linux、Unix、Mac 和 Windows。
企业版
MySQL 企业版提供了全面的高级功能、管理工具和技术支持,实现了高水平的 MySQL 可扩展性、安全性、可靠性和无故障运行时间。
它可在开发、部署和管理业务关键型 MySQL 应用的过程中降低风险、削减成本和减少复杂性。[5]
随着互联网不断对日常生活的渗透,社交网络、各种智能移动设备的高速宽带接入以及新兴的机器对机器 (M2M) 数据交互等带来了用户数和数据量的爆炸式增长。
凭借无可比拟的扩展能力、正常运行时间和灵活性,MySQL Cluster 使用户能够应对下一代 Web、云及通信服务的数据库挑战。[6]
管理工具
可以使用命令行工具管理 MySQL 数据库(命令 mysql 和 mysqladmin),也可以从 MySQL 的网站下载图形管理工具 MySQL Administrator, MySQL Query Browser 和 MySQL Workbench。
phpMyAdmin是由 php 写成的 MySQ L资料库系统管理程程序,让管理者可用 Web 界面管理 MySQL 资料库。
phpMyBackupPro也是由 PHP 写成的,可以透过 Web 界面创建和管理数据库。它可以创建伪 cronjobs,可以用来自动在某个时间或周期备份 MySQL 数据库。
另外,还有其他的 GUI 管理工具,例如 mysql-front 以及 ems mysql manager,navicat等等。
连接方式
应用程序可透过ODBC或ADO方式,经由使用MyODBC与MySQL数据库连接。
MS .Net Framework下的程序(例如:C#、VB.NET)可透过ADO.NET的方式,经由使用MySQL.Net与MySQL数据库连接。
C/C++可使用MySQL++或是直接使用MySQL内置API与MySQL数据库连接。
PHP可透过PHP的MySQLi与MySQL数据库连接,具备比MySQL模块更好的性能。另外PHP6可使用mysqlnd与MySQL数据库连接。[9]
JAVA程序可通过JDBC方式与MySQL进行连接,MySQL官方提供了JDBC驱动程序。
可通过MySQL客户端软件与MySQL进行连接,如mysqlfront、mysqlyog、mysqlbrowser等。
javascript可以通过使用fibjs的内置mysql模块与MySQL数据库连接。