1、MySQL的基本概念
MySQL是目前应用最广泛的开源关系数据库。MySQL最早是由瑞典的MySQL AB公司开发,该公司在2008年被SUN公司收购,紧接着,SUN公司在2009年被Oracle公司收购,所以MySQL最终就变成了Oracle旗下的产品。
MySQL 是一个非常流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的关系数据库管理系统(Relational Database Management System,简称RDBMS)之一,并且它是开源免费的。MySQL 由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL 数据库管理系统有以下特点:
- MySQL 是开源的,所以你不需要支付额外的费用。
- MySQL 支持大型的数据库。可以处理拥有上千万条记录的大型数据库。
- MySQL 使用标准的 SQL 数据语言形式。
- MySQL 可以运行于多个系统上,并且支持多种语言。这些编程语言包括 C、C++、Python、Java、Perl、PHP、Eiffel、Ruby 和 Tcl 等。
- MySQL 对PHP有很好的支持,PHP 是目前最流行的 Web 开发语言。
- MySQL 支持大型数据库,支持 5000 万条记录的数据仓库,32 位系统表文件最大可支持 4GB,64 位系统支持最大的表文件为8TB。
- MySQL 是可以定制的,采用了 GPL 协议,你可以修改源码来开发自己的 MySQL 系统。
和其他关系数据库有所不同的是,MySQL本身实际上只是一个SQL接口,它的内部还包含了多种数据引擎,常用的包括:
- InnoDB:由Innobase Oy公司开发的一款支持事务的数据库引擎,2006年被Oracle收购;
- MyISAM:MySQL早期集成的默认数据库引擎,不支持事务。
MySQL接口和数据库引擎的关系就好比某某浏览器和浏览器引擎(IE引擎或Webkit引擎)的关系。对用户而言,切换浏览器引擎不影响浏览器界面,切换MySQL引擎不影响自己写的应用程序使用MySQL的接口。
使用MySQL时,不同的表还可以使用不同的数据库引擎。如果你不知道应该采用哪种引擎,记住总是选择InnoDB就好了。
1.1、MySQL的各种版本
MySQL官方版本分了好几个版本:
- Community Edition:社区开源版本,免费;
- Standard Edition:标准版;
- Enterprise Edition:企业版;
- Cluster Carrier Grade Edition:集群版。
以上版本的功能依次递增,价格也依次递增。不过,功能增加的主要是监控、集群等管理功能,对于基本的SQL功能是完全一样的。
所以使用MySQL就带来了一个巨大的好处:可以在自己的电脑上安装免费的Community Edition版本,进行学习、开发、测试。部署的时候,可以选择付费的高级版本,或者云服务商提供的兼容版本,而不需要对应用程序本身做改动。
因为MySQL一开始就是开源的,所以基于MySQL的开源版本,又衍生出了各种版本:
MariaDB:由MySQL的创始人创建的一个开源分支版本,使用XtraDB引擎。
Aurora:由Amazon改进的一个MySQL版本,专门提供给在AWS托管MySQL用户,号称5倍的性能提升。
PolarDB:由Alibaba改进的一个MySQL版本,专门提供给在阿里云托管的MySQL用户,号称6倍的性能提升。
1.2、其他几种常见的数据库管理系统
常用的数据库软件有:Oracle、MySQL、Microsoft SQL Server、DB2、MongoDB 等等
- Oracle:Oracle是甲骨文(Oracle)公司旗下的关系数据库管理系统,它是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是种高效率、可靠性好的适应高吞吐量的数据库解决方案。Oracle是收费的。
- MySQL:MySQL是流行的关系型数据库管理系统,特别是在WEB应用方面,MySQL是非常流行的关系数据库管理系统。MySQL体积小、速度快、开放源码这特点,一般中小型网站的开发都选择MySQL作为网站数据库。MySQL是开源免费的,但被Oracle收购后,MySQL6.x版本开始收费
- Microsoft SQL Server:Microsoft SQL Server是Microsoft公司推出的关系型数据库管理系统。具有使用方便可伸缩性好与相关软件集成程度高等优点,是个全面的数据库平台。SqlServer是收费的。
- DB2:DB2是IBM出品的系列关系型数据库管理系统,分别在不同的操作系统平台上服务。常应用于银行系统中。DB2是收费的。
- MongoDB:MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。
2、MySQL的下载安装和完全卸载
2.1、MySQL的下载和安装
MySQL5.5.4 安装包下载链接:https://pan.baidu.com/s/1FCONiIxFvhIBzDJ4Ao6P4Q 提取码:9crg
MySQL的安装流程可参考:https://blog.csdn.net/s_x123456/article/details/86754486
检验是否安装成:mysql -uroot -p你的密码 ,如果有版本提示即代表安装成。或者先输入 mysql –h localhost –u root -p ,然后再在出现的提示中输入密码也行。这几个命令也是连接MySQL的命令。
检验安装成功截图如下:
2.3、MySQL如何彻底卸载干净
MySQL如果没有卸载干净的话,就算重新安装也是不会安装成功的。
MySQL彻底卸载流程:
1)在MySQL安装的根目录下找到 my.ini 文件,打开该文件,可以找到类似于:datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/" 这样的一行代码
2)在控制面板上直接卸载 MySQL
3)找到第一步中的路径,如上面 datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/" ,则此时应该找到 C:/ProgramData/ 目录(ProgramData文件夹可能是隐藏的,此时可以设置系统可查看隐藏文件即可看到),在该目录下将 MySQL 文件夹删除掉即可。
3、启动关闭MySQL服务、登录退出MySQL
3.1、启动MySQL服务
MySQL安装后会自动在后台运行,并且默认开机自启动。如果关闭了MySQL服务以后,可以通过以下方式开启:
1)手动的方式
右键我的电脑 -> 管理 -> 服务和应用程序 -> 服务 -> 找到 MySQL 右键停止即可
或者是直接在 cmd 中输入 services.msc 也可查看服务,然后找到 MySQL 右键停止即可。
2)命令行方式
以管理员身份运行 cmd,输入 net start mysql 即可开启MySQL服务,输入 net stop mysql 即可关闭MySQL服务。(注意,不以管理员身份运行cmd,可能会提示拒绝访问。如何以管理员身份运行cmd自行百度)
3.2、登录MySQL
1)登录本地的MySQL
启动MySQL服务后我们就可以连接MySQL了,我们可以在 cmd 中输入 mysql [–h localhost] -uroot -p你的密码,([]内的命令表示本地的MySQL,不输也行) 来进行连接,如果有提示 welcome to the mysql ... 即代表连接成功。或者先输入 mysql –u root -p ,然后再在出现的提示中输入密码也行。
2)登录远程的MySQL
如果远程MySQL是可以登录的话,我们可以通过在命令行中输入 mysql -hip -uroot -p密码 来连接远程的MySQL(ip指的是远程开启了MySQL服务的服务器 ip 地址)。或者输入 mysql --host=ip --user=root --password=密码 也行。
退出MySQL直接按 ctrl + c,或者输入 quit、exit都行。但此时只是退出MySQL命令行,MySQL服务器仍在后台运行。
4、MySQL的目录结构
一台计算机安装了MySQL数据库管理系统就可以称之为MySQL服务器。
4.1、安装目录
MySQL安装后默认的安装目录结构如下:
my.ini 就是MySQL的配置文件
4.1、数据目录
MySQL的数据目录可以在安装目录的 my.ini 文件内找到,一般默认就是 datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/" 这么一行代码,表示MySQL的数据就存储在 C:/ProgramData/MySQL/MySQL Server 5.5/Data/ 目录下。
该目录下的文件默认如下:
MySQL在安装后默认创建了三个数据库:mysql、performance_schema、test,一个数据库以一个文件夹的形式保存在电脑中,文件夹内的文件就是一个个表,表内存储着数据