20211325 2023-2024-1 《信息安全系统设计与实现(上)》第十二周学习笔记
一、任务要求
自学教材第14章,提交学习笔记(10分),评分标准如下
1. 知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图,提示过程参考下面内容 (4分) “我在学***X知识点,请你以苏格拉底的方式对我进行提问,一次一个问题” 核心是要求GPT:“请你以苏格拉底的方式对我进行提问” 然后GPT就会给你提问,如果不知道问题的答案,可以反问AI:“你的理解(回答)是什么?” 如果你觉得差不多了,可以先问问GPT:“针对我XXX知识点,我理解了吗?” GPT会给出它的判断,如果你也觉得自己想清楚了,可以最后问GPT:“我的回答结束了,请对我的回答进行评价总结”,让它帮你总结一下。
2. 问题与解决思路,遇到问题最先使用chatgpt等AI工具解决,并提供过程截图(3分)
3. 实践过程截图,代码链接(2分)
4. 其他(知识的结构化,知识的完整性等,提交markdown文档,使用openeuler系统等)(1分)
二、教材总结
第十四章 MySQL数据库系统
学习目标
通过本章的学习,了解MySQL数据库系统的重要性。通过学习MySQL的命令和处理模式,使用SQL脚本管理数据库。并通过MySQL与C编程结合进行实践。
什么是MySQL
MySQL ( MySQL 2018)是一个关系数据库系统(Codd 1970)。在关系数据库中,数据存储在表中。每个表由多个行和列组成。表中的数据相互关联。表也可能与其他表有关联。关系结构使得可在表上运行查询来检索信息并修改数据库中的数据。关系数据库系统的标准查询语言是SQL(结构化查询语言),包括MySQL。
MySQL是一个开源数据库管理系统,由服务器和客户机组成。在将客户机连接到服务器后,用户可向服务器输入SQL命令,以便创建数据库,删除数据库,存储、组织和检索数据库中的数据。
MySQL是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL 所使用的 SQL 语言是用于访问数据库的最常用标准化语言。
MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
数据库类型和区别
关系型数据库指的是使用关系模型(二维表格模型)来组织数据的数据库。
关系型数据库的优势:
-
采用二维表结构非常贴近正常开发逻辑(关系型数据模型相对层次型数据模型和网状型数据模型等其他模型来说更容易理解);
-
支持通用的SQL(结构化查询语言)语句;
-
丰富的完整性大大减少了数据冗余和数据不一致的问题。并且全部由表结构组成,文件格式一致;
-
可以用SQL句子多个表之间做非常繁杂的查询;
-
关系型数据库提供对事务的支持,能保证系统中事务的正确执行,同时提供事务的恢复、回滚、并发控制和死锁问题的解决。
-
数据存储在磁盘中,安全可靠。
关系型数据库存在的不足:
-
高并发读写能力差:网站类用户的并发性访问非常高,而一台数据库的最大连接数有限,且硬盘 I/O 有限,不能满足很多人同时连接。
-
海量数据情况下读写效率低:对大数据量的表进行读写操作时,需要等待较长的时间等待响应。
-
可扩展性不足:不像web server和app server那样简单的添加硬件和服务节点来拓展性能和负荷工作能力。
-
数据模型灵活度低:关系型数据库的数据模型定义严格,无法快速容纳新的数据类型(需要提前知道需要存储什么样类型的数据)。
非关系型数据库又被称为 NoSQL(Not Only SQL ),意为不仅仅是 SQL。通常指数据以对象的形式存储在数据库中,而对象之间的关系通过每个对象自身的属性来决定,常用于存储非结构化的数据。
非关系型数据库的优势:
-
非关系型数据库存储数据的格式可以是 key-value 形式、文档形式、图片形式等。使用灵活,应用场景广泛,而关系型数据库则只支持基础类型。
-
速度快,效率高。 NoSQL 可以使用硬盘或者随机存储器作为载体,而关系型数据库只能使用硬盘。
-
海量数据的维护和处理非常轻松,成本低。
-
非关系型数据库具有扩展简单、高并发、高稳定性、成本低廉的优势。
-
可以实现数据的分布式处理。
非关系型数据库存在的不足:
-
非关系型数据库暂时不提供 SQL 支持,学习和使用成本较高。
-
非关系数据库没有事务处理,无法保证数据的完整性和安全性。适合处理海量数据,但是不一定安全。
-
功能没有关系型数据库完善。
-
复杂表关联查询不容易实现。
三、课堂代码实现
本次课堂为测试,无课堂代码。