大连项目备案网站,wordpress active,做网站纸张大小,厨师培训机构目录
1.数据库是什么
2.基本操作
数据库服务器连接操作 数据库和数据库表的创建 服务器#xff0c;数据库#xff0c;表关系
数据逻辑存储
3.MySQL架构 4.SQL分类
5.存储引擎 1.数据库是什么 mysqlmysqld#xff1a; mysql#xff1a;这通常指的是 MySQL …目录
1.数据库是什么
2.基本操作
数据库服务器连接操作 数据库和数据库表的创建 服务器数据库表关系
数据逻辑存储
3.MySQL架构 4.SQL分类
5.存储引擎 1.数据库是什么 mysqlmysqld mysql这通常指的是 MySQL 的命令行客户端工具。它是用户与 MySQL 数据库服务器mysqld进行交互的一种方式。用户可以通过 mysql 客户端工具输入 SQL 语句来查询、更新、管理数据库中的数据。mysql 客户端通过 TCP/IP 网络协议或其他支持的协议与 MySQL 服务器mysqld进行通信。 mysqld这是 MySQL 数据库的服务端守护进程daemon。它负责处理来自客户端如 mysql 命令行工具、图形界面客户端、应用程序等的请求执行 SQL 语句并管理数据库文件的存取。mysqld 提供了数据库的核心功能包括数据的存储、查询、索引、事务处理等。它是 MySQL 数据库系统的核心组成部分。 MySQL本质 MySQL本质基于C(mysql)S(mysqld)模式的一种网络服务。mysql是一套给用户提供数据存取的服务的网络程序数据库服务指的就是mysqld。 有文件为什么不用文件存储 一般文件确实提供了数据的存储功能但是文件并没有提供非常好的数据内容的管理能力。eg比如我想在百万行的IP地址中找出所有以127开头的IP地址这种情况下数据库只需要给出指定的命令就可以了但是文件操作并没有这么方便 数据库本质 数据库一般指的是在磁盘或者内存中存储的特定结构组织的数据--将来在磁盘上存储的一套数据库方案。 对数据内容存储的一套解决方案用户给我字段或要求数据库直接给你结果就可以。 从物理层面来看数据库确实也是以文件的形式存储在磁盘上的。数据库管理系统如MySQL提供了一套高级接口如SQL语言mysqld就会根据SQL语言在数据库文件中给用户做增删查改最后将结果返回给mysqldmysqld再将结果交给用户 数据库本质是文件。只不过 这些文件并不由程序员直接操作而是由数据库服务帮我们进行操作的 2.基本操作 数据库服务器连接操作 登录指令 -h [主机名或IP地址]这个选项用来指定MySQL服务器的主机名或IP地址。如果您想连接到本地机器上的MySQL服务可以省略这个选项或者指定为127.0.0.1或localhost。 -P [端口号]这个选项允许您指定MySQL服务器监听的端口号。MySQL的默认端口号是3306如果您使用的是默认端口号也可以省略这个选项。 -u [用户名]这个选项用来指定登录MySQL服务器的用户名。如果不指定通常会尝试以root用户身份登录。但出于安全考虑推荐使用具有适当权限的特定用户进行连接。 -p这个选项告诉mysql命令在连接时需要密码。注意-p选项后面不需要立即跟密码因为系统会提示您输入密码以确保密码的安全性。 mysql -h 192.168.1.100 -P 3306 -u myuser -p 数据库和数据库表的创建 在ubuntu环境下查看配置文件 sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf其中有一行datadir /var/lib/mysql 表示MySQL的数据库文件被存储在 /var/lib/mysql 这个目录下。 以下工作由mysql客服端让mysqld服务端做的。 1.创建数据库 create database 数据库名;2.列出MySQL服务器中所有的数据库。 show databases; 这就可以看到我们刚刚创建的数据库了。 在该路径下也确实新增了 hellosql数据库的目录。 所以建立数据库本质就是建立Linux下的一个目录。 3.使用指定的数据库 use 数据库名;就是用刚才的数据库 4.在数据库内创建表 create table 表名(字段1 字段1类型); 这样我们就创建好了一张表我们可以进入hellosql目录下进行查看所以在数据库内建立表本质就是在Linux下创建对应的文件即可。 5.往数据库中插入数据 insert into 表名(字段名) values(值);6.查询表中所有数据 select * from 表名;服务器数据库表关系 所谓安装数据库服务器只是在机器上安装了一个数据库管理系统程序这个管理程序可以管理多个数据库一般开发人员会针对每一个应用创建一个数据库。为保存应用中实体的数据一般会在数据库中创建多个表以保存程序中实体的数据。数据库服务器、数据库和表的关系如下 数据逻辑存储 在关系型数据库中数据以表的形式进行组织。每个表由一系列定义好的列组成每列代表特定类型的数据每行则包含了一条记录代表着一组相关数据。 3.MySQL架构 MySQL 是一个可移植的数据库几乎能在当前所有的操作系统上运行如 Unix/Linux、Windows、Mac 和 Solaris。各种系统在底层实现方面各有不同但是 MySQL 基本上能保证在各个平台上的物理体系结构的一致性。 MySQL架构大致分为以下三层 1. 连接层 功能处理客户端与服务器之间的连接、认证和通信。关键组件连接管理器、认证模块、SSL加密。 2. 查询层 功能解析SQL查询优化查询计划并调用存储引擎执行查询。关键组件SQL解析器、查询优化器不再包括已废弃的查询缓存。 3. 存储引擎层 功能负责数据的存储、索引和检索。特点插件式架构支持多种存储引擎如InnoDB、MyISAM、Memory等每种引擎有其特定的功能和性能特点。 4.SQL分类 DDL【data definition language】 数据定义语言用来维护存储数据的结构代表指令: create, drop, alterDML【data manipulation language】 数据操纵语言用来对数据进行操作代表指令 insertdeleteupdateDML中又单独分了一个DQL数据查询语言代表指令 selectDCL【Data Control Language】 数据控制语言主要负责权限管理和事务代表指令 grantrevokecommit 5.存储引擎 存储引擎是数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。MySQL的核心就是插件式存储引擎支持多种存储引擎 查看存储引擎 常见存储引擎对比 最常用的就是以下两种; 1. InnoDB 特点 事务支持支持ACID事务模型具有提交、回滚和崩溃恢复能力。数据一致性通过MVCC多版本并发控制和行级锁定保证数据的一致性。外键支持支持外键约束有助于维护数据的完整性。存储方式使用聚簇索引存储数据表数据直接存储在主键的B树叶节点上。 优势 高可靠性和高并发性能。适用于需要事务支持和复杂查询的应用场景。 适用场景 大多数应用程序场景尤其是需要处理大量并发访问和复杂数据操作的应用。 2. MyISAM 特点 非事务型不支持事务处理。表级锁定使用表级锁定并发性能相对较差。全文索引支持全文索引适用于文本搜索。存储方式表数据和索引分开存储索引文件包含指向数据文件中记录的指针。 优势 读取速度较快主要指读操作特别是全表扫描。适用于读密集型的应用场景。