⑴MySQL数据库是一款关系型数据库管理系统,所使用的 SQL 语言是用于访问数据库的最常用标准化语言。软件采用了双授权政策,分为社区版和商业版,由于其体积小速度快总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
⑵MySQL支持超过种开发平台,包括LinuxWindowsFreeBSDIBM AIXHP-UXMac OSOpenBSDSolaris等,这使得用户可以选择多种平台实现自己的应用,并且在不同平台上开发的应用系统可以很容易在各种平台之间进行移植。
⑶MySQL采用GPL许可,很多情况下,用户可以免费使用MySQL;对于一些商业用途,需要购买MySQL商业许可,但价格相对低廉。
⑷支持各种开发语言
⑸MySQL为各种流行的程序设计语言提供支持,为它们提供了很多API函数,包括CC++JavaPerlPHP等。
⑹提供多种存储器引擎
⑺MySQL中提供了多种数据库存储引擎,各引擎各有所长,适用于不同的应用场合,用户可以选择最合适的引擎以得到最高性能。
⑻高速是MySQL的显著特性,在MySQL中,使用了极快的“B树”磁盘表(MyISAM)和索引压缩;通过使用优化的“单扫描多连接”,能够实现极快的连接。一直以来,高速都是MySQL吸引众多用户的特性之一,这一点可能只有亲自使用才能体会。
⑼支持大型数据库
⑽InnoDB存储引擎将InnoDB表保存在一个表空间内,该表空间可由数个文件创建。这样,表的大小就能超过单独文件的最大容量。表空间还可以包括原始磁盘分区,从而使构建很大的表成为可能,最大容量可以达到TB。
⑾灵活和安全的权限和密码系统,允许基于主机的验证。连接到服务器时,所有的密码传输均采用加密形式,从而保证了密码安全。
⑿强大的存储引擎使MySQL能够有效应用于任何数据库应用系统,高效完成各种任务,无论是大量数据的高速传输系统,还是每天访问量超过数亿的高强度的搜索Web站点。
⒀启动MySQL服务器
⒁如何启动MySQL。两种方法:
⒂一是用winmysqladmin,如果机器启动时已自动运行,则可直接进入下一步操作。
⒃二是在DOS方式下运行
⒄d:/mysql/bin/mysqld
⒅进入mysql交互操作界面
⒆在DOS方式下,运行:
⒇d:/mysql/bin/mysql -u root -p
⒈出现提示符,此时已进入mysql的交互操作方式。
⒉如果出现 "ERROR : Can‘t connect to MySQL server on ‘localhost‘ ()“,说明你的MySQL还没有启动。
⒊退出MySQL操作界面
⒋在mysql>提示符下输入quit可以随时退出交互操作界面:
⒌mysql> quit
⒍你也可以用control-D退出。
⒎mysql> select version(),current_date();
⒏+----------------+-----------------+
⒐| version() | current_date() |
⒑+----------------+-----------------+
⒒| ..a-debug | -- |
⒓+----------------+-----------------+
⒔ row in set (. sec)
⒕此命令要求mysql服务器告诉你它的版本号和当前日期。尝试用不同大小写操作上述命令,看结果如何。
⒖结果说明mysql命令的大小写结果是一致的。
⒗一条命令可以分成多行输入,直到出现分号“;”为止:
⒘mysql> select
⒙-> USER()
⒚-> now()
⒛+--------------------+-----------------------------+
①| USER() | now() |
②+--------------------+-----------------------------+
③| ODBClocalhost| -- :: |
④+--------------------+-----------------------------+
⑤使用SHOW语句找出在服务器上当前存在什么数据库:
⑥mysql> SHOW DATABASES;
⑦+----------+
⑧| Database |
⑨+----------+
⑩| mysql |
Ⅰ| test |
Ⅱ+----------+
Ⅲ rows in set (. sec)
Ⅳ创建一个数据库abs
Ⅴmysql> CREATE DATABASE abs;
Ⅵ注意不同操作系统对大小写的敏感。
Ⅶ选择你所创建的数据库
Ⅷmysql> USE abs
ⅨDatabase changed
Ⅹ此时你已经进入你刚才所建立的数据库abs.
㈠ 创建一个数据库表
㈡首先看现在你的数据库中存在什么表:
㈢mysql> SHOW TABLES;
㈣Empty set (. sec)
㈤说明刚才建立的数据库中还没有数据库表。
㈥针对InnoDB进行只读查询的Sysbench测试中,速度可达每秒,次查询,为之前(,次)的两倍;
㈦线性扩展到 CPU线程;
㈧改进的复制吞吐量:在线程中使用新的多线程事务性的复制事件处理程序,并可以在并行的工作线程中运行复杂的事务;
㈨改进了数据表的在线修改功能:可在线重命名索引和扩大varchar的数据类型;
㈩新增的内存仪表:支持跟踪mysqld中的内存分配和使用情况;
存储程序仪表:可提供存储程序内部指令的执行细节;
可使用GET STACKED DIAGNOSTICS作为新的工具,来创建和清理存储程序中的诊断信息;
改进了触发器的动态控制:支持在同一个表中对一个事件类型应用多个触发器;
实时的执行分析;
改进了JSON Explain Data:可以在优化器中添加总查询成本单表查询成本总数据量等参数来获得更详细的信息。