首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
1.1 数据库系统概述
1.1.1 数据库技术的发展
1.1.2 数据库系统的组成
1.2 数据模型
1.2.1 数据模型的概念
1.2.2 常见的数据模型
1.2.3 关系数据库的规范化
1.2.4 关系数据库的设计原则
1.2.5 实体与关系
1.3 数据库的体系结构
1.3.1 数据库三级模式结构
1.3.2 三级模式之间的映射
2.1 了解MySQL
2.1.1 MySQL数据库的概念
2.1.2 MySQL的优势
2.1.3 MySQL的发展史
2.2 MySQL 8.0的新特性
2.3 MySQL的应用环境
2.4 MySQL服务器的安装和配置
2.4.1 MySQL服务器安装包的下载
2.4.2 MySQL服务器的安装
2.4.3 启动、连接、断开和停止MySQL服务器
2.4.4 打开MySQL 8.0 Command Line Client
2.5 如何学好MySQL
第3章 使用MySQL图形化管理工具
3.1 安装phpMyAdmin图形化管理工具
3.1.1 phpMyAdmin图形化管理工具简介
3.1.2 下载phpstudy集成开发环境
3.1.3 下载phpMyAdmin
3.1.4 打开phpMyAdmin
3.2 数据库操作管理
3.2.1 创建数据库
3.2.2 修改和删除数据库
3.3 管理数据表
3.3.1 创建数据表
3.3.2 修改数据表
3.3.3 删除数据表
3.4 管理数据记录
3.4.1 使用SQL语句插入数据
3.4.2 使用SQL语句修改数据
3.4.3 使用SQL语句查询数据
3.4.4 使用SQL语句删除数据
3.4.5 通过form表单插入数据
3.4.6 浏览数据
3.4.7 搜索数据
3.5 导入/导出数据
3.5.1 导出MySQL数据库脚本
3.5.2 导入MySQL数据库脚本
3.6 设置编码格式
3.7 添加服务器新用户
3.8 重置MySQL服务器登录密码
4.1 认识数据库
4.1.1 数据库基本概念
4.1.2 数据库常用对象
4.1.3 系统数据库
4.2 创建数据库
4.2.1 使用CREATE DATABASE语句创建数据库
4.2.2 使用CREATE SCHEMA语句创建数据库
4.2.3 创建指定字符集的数据库
4.2.4 创建数据库前判断是否存在同名数据库
4.3 查看数据库(SHOW命令)
4.4 选择数据库(USE命令)
4.5 修改数据库(ALTER命令)
4.6 删除数据库(DROP命令)
当前位置:
首页>>
技术小册>>
MySQL从入门到精通(一)
小册名称:MySQL从入门到精通(一)
### 2.2 MySQL 8.0的新特性 在数据库管理系统领域,MySQL一直是开源领域的佼佼者,其稳定性和灵活性赢得了全球众多开发者和企业的青睐。随着技术的不断进步,MySQL也在持续迭代升级,MySQL 8.0的发布标志着这一开源数据库系统迈入了一个新的时代。本章节将深入探讨MySQL 8.0带来的诸多新特性,这些特性不仅提升了数据库的性能、安全性,还增强了易用性和可扩展性,为数据管理和应用开发提供了更加强大的支持。 #### 2.2.1 性能优化与资源管理 **1. 窗口函数(Window Functions)** MySQL 8.0引入了SQL标准中的窗口函数,这是一项重大更新,允许用户在SQL查询中执行复杂的计算,如排名、移动平均等,而无需将数据加载到应用程序中进行处理。这不仅简化了查询逻辑,还显著提高了查询效率,尤其适用于数据分析类应用。 **2. 通用表表达式(Common Table Expressions, CTEs)** CTE提供了一种在单个SQL语句中定义临时结果集的方式,这些结果集可以在主查询中多次引用。CTE的引入使得查询逻辑更加清晰,特别是在处理复杂查询和递归查询时,大大提升了可读性和可维护性。 **3. 持久化全局变量** MySQL 8.0允许将全局系统变量的设置持久化到服务器的数据字典中,这意味着在系统重启后,这些设置依然有效,无需手动重新配置。这一特性简化了数据库维护过程,降低了因配置错误导致的问题风险。 **4. 性能优化器改进** MySQL 8.0对性能优化器进行了全面升级,包括改进了索引选择算法、增加了直方图统计信息等,使得优化器能够更准确地评估查询成本,选择最优的执行计划。此外,还引入了新的成本模型,进一步提升了查询性能。 #### 2.2.2 安全性与数据加密 **1. 默认的数据加密** MySQL 8.0引入了数据加密的默认选项,包括对数据目录、重做日志文件和撤销日志文件的加密支持。这一特性极大地增强了数据的安全性,即使物理介质被盗,未授权用户也难以访问其中的数据。 **2. 角色(Roles)** MySQL 8.0引入了角色机制,允许将一组权限赋予一个角色,然后将这个角色授予一个或多个用户。这种基于角色的权限管理简化了权限管理过程,提高了权限管理的灵活性和可维护性。 **3. 默认的密码验证插件** MySQL 8.0默认使用`caching_sha2_password`作为密码验证插件,相较于之前的`mysql_native_password`,它提供了更强的密码验证机制,支持SHA-256算法,增强了密码的安全性。 **4. 透明的数据加密(TDE)** 虽然MySQL 8.0本身不直接提供TDE功能,但通过与第三方工具或文件系统加密功能的结合,可以实现数据的透明加密。这一特性使得在不需要修改应用程序代码的情况下,即可实现对敏感数据的加密保护。 #### 2.2.3 易用性与功能增强 **1. NoSQL支持(JSON数据类型)** MySQL 8.0对JSON数据类型的支持得到了进一步加强,不仅提供了丰富的JSON函数来操作JSON数据,还优化了JSON数据的存储和查询性能。这使得MySQL不仅能够处理传统的关系型数据,还能轻松应对半结构化或非结构化数据的存储需求。 **2. 公用表表达式(CTE)和递归查询** 除了作为性能优化的工具外,CTE还支持递归查询,使得处理层次结构或图形数据等复杂查询变得简单高效。 **3. 资源组(Resource Groups)** MySQL 8.0引入了资源组的概念,允许用户将线程(即数据库连接)分配到不同的资源组中,并为每个资源组配置CPU和IO资源的上限。这一特性使得数据库管理员可以根据应用的需求,灵活地分配和管理数据库资源,确保关键应用的性能不受其他应用的影响。 **4. 账户管理** MySQL 8.0提供了更加丰富的账户管理功能,包括账户锁定策略、密码过期策略等,增强了账户的安全性。同时,还提供了更便捷的账户管理命令和界面,简化了账户管理的复杂度。 **5. 字符集和排序规则改进** MySQL 8.0对字符集和排序规则的支持进行了扩展和优化,新增了对更多Unicode字符的支持,并改进了排序和比较的规则,使得数据库在处理多语言数据时更加准确和高效。 #### 2.2.4 兼容性与迁移 **1. 向后兼容性** MySQL 8.0在引入新特性的同时,也注重保持与旧版本的兼容性。尽管存在一些不兼容的变更,但MySQL官方提供了详细的迁移指南和工具,帮助用户平滑过渡到新版本。 **2. 迁移工具** MySQL提供了多种迁移工具,如`mysql_upgrade`、`mysqlcheck`等,用于检查数据库兼容性问题并执行必要的升级操作。此外,MySQL Workbench等图形化工具也提供了强大的迁移支持,帮助用户简化迁移过程。 **3. 复制和集群** MySQL 8.0对复制和集群的支持也得到了加强,包括引入了组复制(Group Replication)等新技术,提供了更高可靠性和可用性的数据库解决方案。这些特性使得MySQL 8.0更加适合构建大规模、高可用的数据库系统。 ### 结语 MySQL 8.0的发布是MySQL发展历程中的一个重要里程碑,它不仅带来了众多新特性和性能优化,还增强了数据库的安全性、易用性和可扩展性。通过深入了解和掌握这些新特性,开发人员和数据库管理员可以更好地利用MySQL 8.0构建高效、安全、可扩展的数据库系统,为业务发展和技术创新提供坚实的支撑。在未来的技术发展中,MySQL将继续保持其领先地位,为数据管理和应用开发领域带来更多的创新和突破。
上一篇:
2.1.3 MySQL的发展史
下一篇:
2.3 MySQL的应用环境
该分类下的相关小册推荐:
MySQL8.0入门与实践
细说MySQL(零基础到高级应用)
SQL零基础到熟练应用(增删改查)
MySQL从入门到精通(四)
MySQL从入门到精通(二)
MySQL从入门到精通(三)
MySQL 实战 45 讲
MySQL必会核心问题
MySQL从入门到精通(五)