MySQL
的特性
1.
使用
C
和
C++
编写,并使用了多种编译器进行测试,保证源代码的可移植性。
2.
支持
AIX
、
BSDi
、
FreeBSD
、
HP-UX
、
Linux
、
Mac OS
、
Novell Netware
、
NetBSD
、
OpenBSD
、
OS/2 Wrap
、
Solaris
、
SunOS
、
Windows
等多种操作系统。
3.
为多种编程语言提供了
API
。这些编程语言包括
C
、
C++
、
C#
、
Delphi
、
Eiffel
、
Java
、
Perl
、
PHP
、
Python
、
Ruby
和
Tcl
等。
4.
支持多线程,充分利用
CPU
资源,支持多用户。
5.
优化的
SQL
查询算法,有效地提高查询速度。
6.
既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的
软件中。
7.
提供多语言支持,常见的编码如中文的
GB 2312
、
BIG5
,日文的
Shift_JIS
等都可以用作数据表名和数
据列名。
8.
提供
TCP/IP
、
ODBC
和
JDBC
等多种数据库连接途径。
9.
提供用于管理、检查、优化数据库操作的管理工具。
10.
可以处理拥有上千万条记录的大型数据库。
MySQL
体系结构
Mysql
是由
SQL
接口,解析器,优化器,缓存,存储引擎组成的
Connectors
指的是不同语言中与
SQL
的交互
Management Serveices & Utilities
: 系统管理和控制工具
Connection Pool:
连接池。管理缓冲用户连接,线程处理等需要缓存的需求
SQL Interface: SQL
接口
,
接受用户的
SQL
命令,并且返回用户需要查询的结果。比如
select from
就是调
用
SQL Interface
Parser:
解析器。
SQL
命令传递到解析器的时候会被解析器验证和解析。
Optimizer:
查询优化器。
SQL
语句在查询之前会使用查询优化器对查询进行优化。
Cache
和
Buffer
: 查询缓存。如果查询缓存有命中的查询结果,查询语句就可以直接去查询缓存中取数
据
.
Engine
:存储引擎。存储引擎是
MySql
中具体的与文件打交道的子系统。