微信授权登录网站退出怎么做,wordpress主页显示图片,花生壳 wordpress,成都必去景点排名#x1f30e;初识MySQL
注#xff1a;本文SQL语句只为了验证猜想#xff0c;不会也不要紧。
文章目录#xff1a;
MySql开端 认识数据库 什么是数据库 主流数据库 MySQL的本质 MySQL基础使用 连接mysql服务器 …初识MySQL
注本文SQL语句只为了验证猜想不会也不要紧。
文章目录
MySql开端 认识数据库 什么是数据库 主流数据库 MySQL的本质 MySQL基础使用 连接mysql服务器 MySQL与文件的关系 服务器管理 服务器、数据库和表关系 MySQL架构 SQL语句分类 前言 MySQL是地表最受欢迎开源的数据库管理系统之一也作为程序员水平的技术之一。今天我们就开始全新的话题 认识数据库
✈️什么是数据库
存储数据用文件就可以了为什么还要弄个数据库? 文件保存数据有以下几个 缺点 文件的安全性问题 文件不利于数据查询和管理 文件不利于存储海量数据 文件在程序中控制不方便
数据库存储介质 磁盘 内存 为了解决上述问题专家们设计出 更加利于管理数据的东西——数据库它能更有效的管理数据。数据库的水平是衡量一个程序员水平的重要指标。 ✈️主流数据库
SQL Sever 微软的产品.Net程序员的最爱中大型项目。Oracle 甲骨文产品适合大型项目复杂的业务逻辑并发一般来说不如MySQL。MySQL世界上最受欢迎的数据库属于甲骨文并发性好不适合做复杂的业务。主要用在电商SNS论坛。对简单的SQL处理效果好。PostgreSQL加州大学伯克利分校计算机系开发的关系型数据库不管是私用商用还是学术研究使用可以免费使用修改和分发。SQLite 是一款轻型的数据库是遵守ACID的关系型数据库管理系统它包含在一个相对小的C库中。它的设计目标是嵌入式的而且目前已经在很多嵌入式产品中使用了它它占用资源非常的低在嵌入式设备中可能只需要几百K的内存就够了。H2 是一个用Java开发的嵌入式数据库它本身只是一个类库可以直接嵌入到应用项目中。 ✈️MySQL的本质 MySQL事实上是一种网络服务我们使用的是Linux下的mysql服务在Linux下使用grep命令可以查看 其中mysql是数据库服务的客户端mysqld是数据库服务的服务器端而mysql的本质基于 C(mysql) S(mysqld) 模式的一种网络服务。 而mysql作为一种网络服务在Linux下我们就一定能使用如下命令来监测出mysql的网络服务
netstat -lntp话虽如此但mysql可不仅仅是一套服务它还是一套给用户提供数据存取服务的网络程序。可以在服务端对数据进行保存。 而我们口头所说的 “数据库”一般指的是在磁盘或内存中存储存储特定结构组织的数据也就是在磁盘上存储的一套数据库方案。 MySQL基础使用
✈️连接mysql服务器 不论在Linux下还是Windows下连接MySQL都需要先下载MySQL服务器。在MySQL中我们使用如下命令连接MySQL
mysql -P 3306 -h 127.0.0.1 -u root -p其中各个选项的含义如下: -P选项表示mysql端口号通常为3306。不带此选项默认为3306端口 -h选项表示要连接mysql主机本机为127.0.0.1。不带这个选项默认是本机连接 -u选项表示哪个用户登录mysql。 -p选项password表示用户登录密码。 root用户表示以root的身份登录mysql。 当看到此页面时就表示你已经登录MySQL成功了进入到MySQL中想退出怎么办呢输入 quit; 再回车即可退出MySQL ✈️MySQL与文件的关系 首先在MySQL中存在一个个的库而我们想要查看这些库可以使用如下SQL命令
SHOW DATABASES;--大小写随意--我们发现MySQL中默认存在四个库、那么这四个库存储在系统的哪个位置呢通常在MySQL中/etc目录下的配置文件中查看
cat /etc/mysql/mysql.conf.d/mysqld.cnf #很多不确定性因素你的可能和我的配置文件不同而在该文件下一般都会保存一个名为 datadir 的目录是用来保存SQL服务所对应的数据 我们进入到所保存的目录为了验证以上说法我们首先创建一个数据库使用如下SQL指令
CREATE DATABASE helloMySQL;--创建名为helloMySQL的数据库--我们发现确实如此当然不仅如此细心的小伙伴已经发现别的端倪了。而我们查看刚刚创建的这个目录 我们发现这里什么都没有当然你的可能会有 dp.opt 默认配置文件。所以由此我们可以得出结论所谓建立数据库本质就是在Linux下创建一个目录文件 而我们关系型数据库也得有表来展示我们不妨使用如下SQL语句创建一张数据表
USE helloMySQL;--使用具体的数据库--
CREATE TABLE student(id int,name varchar(32),gender varchar(2)
);这样我们的表就创建成功了。而这个时候我们在Linux下对该目录进行查看时 此时在该目录下就多了一个后缀为 .ibd 的文件了。创建完表当然要对表插入数据我们使用如下的SQL语句对该表进行插入
insert into student (id, name, gender) values (1, 张三, 男);
insert into student (id, name, gender) values (2, 李四, 女);
insert into student (id, name, gender) values (3, 王五, 男);这样就插入成功了我们使用如下SQL语句查看刚插入的表结构
select * from student;而我们输入这些SQL语句才完成了这样的工作那么这个工作真的是我们完成的吗实际上 这个工作是由mysqld来完成的我们只是给它发了指令而已他们的关系如下 ✈️服务器管理 如果你是 windows 下的MySQL用户我们可以通过 win r 并输入 services.msc 快速打开文件夹模式来 停用或者暂停 MySQL服务 ✈️服务器、数据库和表关系 所谓安装数据库服务器只是在机器上安装了一个数据库管理系统程序这个管理程序可以管理多个数据库一般开发人员会针对每一个应用创建一个数据库。 为保存应用中实体的数据一般会在数据库中创建多个表以保存程序中实体的数据。 而数据库服务器、数据库和表的关系如下 准确来说Client实际上是mysqlMySQL实际上是mysqld后面的内容俗称 “数据库”而各个表其实就是普通的文件只不过表的文件是以二进制形式存储的。 MySQL架构 MySQL 是一个可移植的数据库几乎能在当前所有的操作系统上运行如Unix/Linux、Windows、Mac 和 Solaris。各种系统在底层实现方面各有不同但是 MySQL 基本上能保证在各个平台上的物理体系结构的一致性。 虽然上面划分了四层结构但是对于整体的MySQL Serve来说主要功能由前三层来构成。 链接池Connection Pool其作用是帮助用户做网络管理、帮助用户做鉴权和保证一些安全方面的策略。 中间层处理下达的一些SQL指令而MySQL要对下达的SQL语句做词法分析、语法分析、甚至对SQL查询进行优化随后按照SQL的协议将SQL传入下一层。 可插拔存储引擎Pluggable Storage Engines底层的存储引擎将上层经过处理的SQL语句对其进行解释工作。访问指定数据库、访问指定文件、表结构等对数据进行增删查改。 存储引擎是数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。MySQL的核心就是插件式存储引擎支持多种存储引擎。
我们可以使用如下SQL指令查看存储引擎
SHOW ENGINES;以下是一些存储引擎的对比 SQL语句分类 DDL[data definition language] : 数据定义语言用来维护存储数据的结构代表指令: create, drop, alter DML[data manipulation language]: 数据操纵语言用来对数据进行操作代表指令 insertdeleteupdate 数据查询语言为DML中单独分了一个DQL代表指令 select DCL[Data Control Language]: 数据控制语言主要负责权限管理和事务代表指令 grantrevokecommit 今天的内容到这里就结束啦如果这篇文章对您有帮助的话还望给点个小赞~~