MySQL数据库是一款关系型数据库管理系统,所使用的 SQL 语言是用于访问数据库的最常用标准化语言。软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
MySQL数据库特色
1、支持多平台
MySQL支持超过20种开发平台,包括Linux、Windows、FreeBSD、IBM AIX、HP-UX、Mac OS、OpenBSD、Solaris等,这使得用户可以选择多种平台实现自己的应用,并且在不同平台上开发的应用系统可以很容易在各种平台之间进行移植。
2、价格低廉
MySQL采用GPL许可,很多情况下,用户可以免费使用MySQL;对于一些商业用途,需要购买MySQL商业许可,但价格相对低廉。
3、支持各种开发语言
MySQL为各种流行的程序设计语言提供支持,为它们提供了很多API函数,包括C、C++、Java、Perl、PHP等。
4、提供多种存储器引擎
MySQL中提供了多种数据库存储引擎,各引擎各有所长,适用于不同的应用场合,用户可以选择最合适的引擎以得到最高性能。
5、高速
高速是MySQL的显著特性,在MySQL中,使用了极快的“B树”磁盘表(MyISAM)和索引压缩;通过使用优化的“单扫描多连接”,能够实现极快的连接。一直以来,高速都是MySQL吸引众多用户的特性之一,这一点可能只有亲自使用才能体会。
6、支持大型数据库
InnoDB存储引擎将InnoDB表保存在一个表空间内,该表空间可由数个文件创建。这样,表的大小就能超过单独文件的最大容量。表空间还可以包括原始磁盘分区,从而使构建很大的表成为可能,最大容量可以达到64TB。
7、安全
灵活和安全的权限和密码系统,允许基于主机的验证。连接到服务器时,所有的密码传输均采用加密形式,从而保证了密码安全。
8、功能强大
强大的存储引擎使MySQL能够有效应用于任何数据库应用系统,高效完成各种任务,无论是大量数据的高速传输系统,还是每天访问量超过数亿的高强度的搜索Web站点。
使用教程
1、启动MySQL服务器
如何启动MySQL。两种方法:
一是用winmysqladmin,如果机器启动时已自动运行,则可直接进入下一步操作。
二是在DOS方式下运行
d:/mysql/bin/mysqld
2、进入mysql交互操作界面
在DOS方式下,运行:
d:/mysql/bin/mysql -u root -p
出现提示符,此时已进入mysql的交互操作方式。
如果出现 "ERROR 2003: Can‘t connect to MySQL server on ‘localhost‘ (10061)“,说明你的MySQL还没有启动。
3、退出MySQL操作界面
在mysql>提示符下输入quit可以随时退出交互操作界面:
mysql> quit
Bye
你也可以用control-D退出。
4、第一条命令
mysql> select version(),current_date();
+----------------+-----------------+
| version() | current_date() |
+----------------+-----------------+
| 3.23.25a-debug | 2001-05-17 |
+----------------+-----------------+
1 row in set (0.01 sec)
此命令要求mysql服务器告诉你它的版本号和当前日期。尝试用不同大小写操作上述命令,看结果如何。
结果说明mysql命令的大小写结果是一致的。
5、多行语句
一条命令可以分成多行输入,直到出现分号“;”为止:
mysql> select
-> USER()
-> ,
-> now()
->;
+--------------------+-----------------------------+
| USER() | now() |
+--------------------+-----------------------------+
| ODBC@localhost| 2001-05-17 22:59:15 |
+--------------------+-----------------------------+
6、使用SHOW语句找出在服务器上当前存在什么数据库:
mysql> SHOW DATABASES;
+----------+
| Database |
+----------+
| mysql |
| test |
+----------+
3 rows in set (0.00 sec)
7、创建一个数据库abccs
mysql> CREATE DATABASE abccs;
注意不同操作系统对大小写的敏感。
8、选择你所创建的数据库
mysql> USE abccs
Database changed
此时你已经进入你刚才所建立的数据库abccs.
9、 创建一个数据库表
首先看现在你的数据库中存在什么表:
mysql> SHOW TABLES;
Empty set (0.00 sec)
说明刚才建立的数据库中还没有数据库表。
更新日志
1、针对InnoDB进行只读查询的Sysbench测试中,速度可达每秒500,000次查询,为之前(250,000次)的两倍;
2、线性扩展到64 CPU线程;
3、改进的复制吞吐量:在线程中使用新的多线程事务性的复制事件处理程序,并可以在并行的工作线程中运行复杂的事务;
4、改进了数据表的在线修改功能:可在线重命名索引和扩大varchar的数据类型;
5、新增的内存仪表:支持跟踪mysqld中的内存分配和使用情况;
6、存储程序仪表:可提供存储程序内部指令的执行细节;
7、可使用GET STACKED DIAGNOSTICS作为新的工具,来创建和清理存储程序中的诊断信息;
8、改进了触发器的动态控制:支持在同一个表中对一个事件类型应用多个触发器;
9、实时的执行分析;
10、改进了JSON Explain Data:可以在优化器中添加总查询成本、单表查询成本、总数据量等参数来获得更详细的信息。