目录
MySQL简介
特点
版本信息
环境搭建
SQL简介
数据库及存储引擎
数据库
存储引擎
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。
可移植性、可扩展性、灵活性:使用C和C++编写,支持UNIX、Linux和Mac OS及Windows等操作系统,在一个操作系统中实现的应用可以很方便地移植到其他操作系统;作为开源性质的数据库服务器,可以为特定需求提供完全定制的功能;可在同一查询中混用不同数据库中的表
数据保护:该服务拥有一个非常灵活且安全的权限和密码系统,所有的密码传输均使用加密形式,同时支持SSH和SSI
支持大型数据库:可存放上千万条记录
稳定性:拥有快速且稳定的基于线程的内存分配系统
命名机制:三个数字一个后缀,如mysql-5.7.21
数字
后缀
MySQL8.0 Community Server 下载链接
Visual Studio 2019 下载链接
Anaconda3 下载链接 开源的python发行版本
安装MySQL需要的环境:visual studio2015、2017或2019,python3及以上版本
鉴于版本变动的原因,以上提供的下载链接可能会发生变化,如果下载不了请前往官网寻找资源,以下是官网域名
www.mysql.com
visualstudio.microsoft.com
www.anaconda.com
本文的环境是完全安装的8.0.28版本
安装完成后的软件路径分布在C:\Program Files\MySQL\ 和 C:\Program Files (x86)\MySQL\路径下
C:\Program Files\MySQL\ 路径下的软件
C:\Program Files (x86)\MySQL\路径下的软件
安装完毕后的服务名叫MySQL80,前往控制面板>管理工具>服务,找到MySQL80服务,可将其设为自动启动,本文采用手动的方式启动的方式
启动
D:\>net start mysql80
MySQL80 服务正在启动 .
MySQL80 服务已经启动成功。
关闭
D:\>net stop mysql80
MySQL80 服务正在停止..
MySQL80 服务已成功停止。
环境变量的配置:计算机>属性>高级系统设置>高级(选项卡)>环境变量>系统变量>变量名:Path>编辑,选中输入栏任意一处,将光标移至输入栏末尾(推荐按键盘上的End键,其实也可以在头部,加好分号就行),加入';'(一定要英文符号),增加路径:'C:\Program Files\MySQL\MySQL Server 8.0\bin',单击确定,再次单击确定,然后再确定一次
配置完成后可以通过命令行连接到MySQL
D:\>mysql -u root -h localhost -p
Enter password: ******
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.28 MySQL Community Server - GPL
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>exit #退出
Bye
该操作可以通过win键+R键输入'mysql -u root -h localhost -p'来实现
Enter password: ******
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.28 MySQL Community Server - GPL
Copyright (c) 2000, 2022, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>quit #退出
Bye
Structured Query Language 结构化查询语言,是由ANSI (American National Standards Institute 美国国家标准协会) 和 ISO (International Standards Organization 国际标准化组织) 定义的标准,其分类有
MySQL的每个数据库都对应存放在一个与数据库同名的文件夹中,MySQL数据库文件包括MySQL所建数据库文件和MySQL所用存储引擎创建的数据库文件。
1、MySQL创建并管理的数据库文件:
.frm文件:存储数据表的框架结构,MySQL数据库文件名与表名相同,每个表对应一个同名frm文件,与操作系统和存储引擎无关,即不管MySQL运行在何种操作系统上,使用何种存储引擎,都有这个文件。
除了必有的.frm文件,根据MySQL所使用的存储引擎的不同(MySQL常用的两个存储引擎是MyISAM和InnoDB),存储引擎会创建各自不同的数据库文件。
2、MyISAM数据库表文件:
.MYD文件:即MY Data,表数据文件
.MYI文件:即MY Index,索引文件
.log文件:日志文件
3、InnoDB采用表空间(tablespace)来管理数据,存储表数据和索引,
InnoDB数据库文件(即InnoDB文件集,ib-file set):
ibdata1、ibdata2等:系统表空间MySQL数据库文件,存储InnoDB系统信息和用户数据库表数据和索引,所有表共用
.ibd文件:单表表空间文件,每个表使用一个表空间文件(file per table),存放用户数据库表数据和索引
日志文件:ib_logfile1、ib_logfile2
二、MySQL数据库存放位置:
1、MySQL如果使用MyISAM存储引擎,数据库文件类型就包括.frm、.MYD、.MYI,默认存放位置是C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 8.0\data;或者是C:\ProgramData\MySQL\MySQL Server 8.0\Data
2、MySQL如果使用InnoDB存储引擎,MySQL数据库文件类型就包括.frm、ibdata1、.ibd,存放位置有两个,
.frm文件默认存放位置是C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 8.0\data
参考:MySQL数据库文件其具体的存放位置简述
存储引擎就是存储数据、为存储的数据建立索引和更新、查询数据等技术的实现方法,在关系型数据库中,数据是以表的形式存储的
查看所有引擎
mysql> show engines;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine | Support | Comment | Transactions | XA | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |
| MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |
| CSV | YES | CSV storage engine | NO | NO | NO |
| FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL |
| PERFORMANCE_SCHEMA | YES | Performance Schema | NO | NO | NO |
| MyISAM | YES | MyISAM storage engine | NO | NO | NO |
| InnoDB | DEFAULT | Supports transactions, row-level locking, and foreign keys | YES | YES | YES |
| BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO |
| ARCHIVE | YES | Archive storage engine | NO | NO | NO |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
9 rows in set (0.00 sec)
(暂时只写这么多,有空再把另外几种补上)
安装完成后的mysql第一次启动会看到默认的六个数据库
库名 | 作用 |
---|---|
information_schema | 保存关于MySQL服务器维护的所有其他数据库的信息 |
mysql | 描述用户访问权限 |
performance_schema | 主要用于收集数据库服务器性能参数 |
sakila | 样本数据库,提供设计表的例子 |
sys | 通过视图的形式把information_schema和performance_schema结合起来,查询出更容易理解的数据存储过程,可以执行一些性能方面的配置,也可以得到一些性能诊断报告内容 |
world | 示例数据库,包含的表的内容,城市,国家,国家语言 |
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sakila |
| sys |
| world |
+--------------------+
6 rows in set (0.00 sec)
创建数据库
语法格式
CREATE DATABASE <库名>;
mysql> create database bruh;
Query OK, 1 row affected (0.01 sec)
打开数据库
语法格式
USE <库名>;
mysql> use bruh;
Database changed
删除数据库
语法格式
DROP DATABASE <库名>;
mysql> drop database bruh;
Query OK, 0 rows affected (0.04 sec)
下一篇入口:
MySQL数据库创建与维护数据表