Mysql介绍和常用总结

张开发
2026/4/4 4:55:21 15 分钟阅读
Mysql介绍和常用总结
Mysql介绍MySQL是一个关系型数据库管理系统由瑞典 MySQL AB 公司开发属于 Oracle 旗下产品MySQL使用 C和 C编写分为社区版免费和企业版付费MySQL企业版提供了更高级的功能比如线程池Thread Pooling、增强的审计插件等在模拟高并发场景下使用线程池可以使系统吞吐量提高约30%至50%同时显著降低CPU利用率。虽然社区版也支持主从复制但企业版通过提供半同步复制Semi-Synchronous Replication和其他高级复制选项来进一步增强数据的一致性和可靠性。索引mysq InnoDB引擎是mysql默认引擎以次引擎为例分析mysql索引mysql索引可以分为聚簇索引和非聚簇索引索引底层数据结构是B树聚簇索引聚簇索引是innodb核心特性InnoDB 表是本质就是索引组织表整张表以聚簇索引 B 树形式存储索引即数据数据即索引叶子节点存储数据一个表只能有一个聚簇索引索引选择优先级主键优先唯一非空索引次之隐藏行id兜底无主键或唯一非空索引时InnoDB 隐式创建 6 字节自增 ROWIDGEN_CLUST_INDEX作为聚簇索引非聚簇索引非聚簇索引又称二级索引或辅助索引该索引不存储数据叶子结点只存储索引键主键值查询非索引列数据必须回表先查二级索引拿到主键 → 再查聚簇索引拿整行。一个表可以有多个非聚簇索引覆盖索引不是一种独立索引类型是索引使用效果指所有需要查询的字段都在索引里不用回表速度快 覆盖索引适合报表、统计、列表查询只查固定几个字段不想慢查询给要查询的几个字段建立联合索引表连接表连接分为内连接外连接(left/right join)自连接全连接通过union实现笛卡尔积等内连接inner join 或者使用 WHERE 子句的内连接隐式内连接SELECT employees.employee_name, departments.department_name FROM employees, departments WHERE employees.department_id departments.department_id;总结内连接条件放 ON/WHERE 性能无差异优先保证逻辑清晰关联条件放 ON过滤条件放 WHERE外连接右表LEFT JOIN/ 左表RIGHT JOIN的过滤条件必须放 ON否则性能差且逻辑错误外连接退化为内连接核心原则过滤条件「能早则早」—— 放在 ON 中提前过滤减少关联的行数是提升 JOIN 性能的关键。下载与与安装mysql社区版下载地址https://www.mysql.com/cn/products/community/下载如下2,选择windows版本选择离线安装包直接下载默认类型选择下一步一路默认下一步设置用户名密码最后安装完成:设置mysql环境变量打开cmd输入mysql -u root -p 输入密码进入mysql就表示环境变量配置成功mysql语法介绍mysql提供了强大的数据操作语言主要分为四类数据定义语言DDL - Data Definition Language 用于定义数据库和表结构例如创建、修改、删除数据库和表等操作。数据操作语言DML - Data Manipulation Language 用于管理数据库中的数据例如插入、更新、删除数据等操作。数据查询语言DQL - Data Query Language 用于查询数据库中的数据例如检索、排序、筛选数据等操作。数据控制语言DCL - Data Control Language 用于管理数据库用户的权限例如授权、撤销权限等操作。Mysql常用总结在项目开发中因为某些原因需要在现有数据表中新增字段在新增字段是如果不指定新增字段的位置默认放在最后下面介绍下分别通过navicat和sql语句添加字段的两种方式方式一通过navicat工具添加字段dept表如下图点击添加栏位或插入栏位并填写对应值添加注释字符集和排序规则不用填写保存后会使用表的默认设置dept表右键选择对象信息查看数据定义语句DDL已改变方式二通过ALTER TABLE dept ADD loc_city VARCHAR(20) COMMENT 部门所在城市 AFTER loc sql语句添加字段after指定在哪个字段后添加字段保存后如下

更多文章