网站视频下载到手机怎么做,猎头公司收费标准,创建公司官网,网站建设的相关政策数据库概念
在学习数据库之前#xff0c;大家保存数据要么是在程序运行期间#xff0c;例如#xff1a;在学习编程语言的时候#xff0c;大家写过的管理系统#xff0c;运用一些简单的数据结构#xff08;例如顺序表#xff09;来组织数据#xff0c;可是程序一旦结束…数据库概念
在学习数据库之前大家保存数据要么是在程序运行期间例如在学习编程语言的时候大家写过的管理系统运用一些简单的数据结构例如顺序表来组织数据可是程序一旦结束数据就会丢失只有程序重新运行才能输入和查看数据这是因为我们的数据是在内存上保存的一旦遇到断电或者程序关闭等外部影响我们的数据就会清空这也是内存上数据的存储特点。
如果再高级一点我们可以使用文件来保存数据例如在C语言中的文件操作函数我们可以将数据保存到文件上或者使用 excel 来保存数据但是文件保存数据不利于数据的查询和管理也不利于存储海量的数据文件在程序中不方便控制。
因此数据库就顺势而生。 数据库是组织和保存数据的应用程序底层使用了一些合适的数据结构对数据进行组织方便用户进行增删查改的基本操作。 数据库把数据保存在磁盘中实现对数据的持久化每次程序重新加载数据就可以从数据库中读取以前的数据 数据库还能提供远程服务即通过远程连接来使用数据库因此也称为数据库服务器。 数据库的分类
关系型数据库RDBMS 是指采用了关系模型来组织数据的数据库。 简单来说关系模型指的就是二维表格模型而一个 关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。
举例 一张图表由行和列组成例如我们使用的 excel 表格 数据库里由很多的表格这些表格之间存在某些联系例如一家商店使用一个数据库来保存数据里面由很多张数据表一张商品表包含商品名称、商品价格、商品库存、商品描述一张客户需求表包括客户名称需要的商品以及数量金额这两张数据表相辅相成存在联系而包含这两个数据表的数据库被称为关系型数据库。
关系型数据库基于标准的SQL只是内部一些实现有区别。常用的关系型数据库如 1.Oracle甲骨文产品适合大型项目适用于做复杂的业务逻辑如ERP、OA等企业信息系统收费。 2.MySQL属于甲骨文不适合做复杂的业务。开源、免费。 3.SQL Server微软的产品安装部署在windows server上适用于中大型项目。收费。
非关系型数据库 不规定基于SQL实现。现在更多是指NoSQL数据库如 1.基于键值对Key-Value如 memcached、redis 2.基于文档型如 mongodb 3.基于列族如 hbase 4.基于图型如 neo4j MySQL 这里我使用的是 MySQL 8.0 大版本作为演示 配置文件的介绍 注意别乱删东西 修改配置文件记得要备份一份 MySQL 的配置文件是 my.ini 如果你是默认安装路径可以在 C:\ProgramData\MySQL\MySQL Server 8.0 这个路径找到这个配置文件文件的打开方式这里使用 VS2022 编译器打开你也可以使用 VScode 或者记事板编译器打开会有颜色标记比较好看一些。 所有的客户端配置都在 client 结点下注释以 # 开头绿色的是注释。
port 3306 表示MySQL 服务开启的是 3306 端口 mysqld 是MySQL 守护 下面的 datadirD:/database/MySQL/data8.0 是我指定 MySQL 数据保存的位置大家可以自行设置。 存储引擎用来处理数据的是 MySQL 的核心 log-outputFILE 通用日志保存在文件中
general-log1 开启通用日志记录每一条数据库操作
general_log_file“路径” ,通用日志的路径
slow-query-log1 慢查询日志数据操作超过了指定的时间
slow_query_log_file路径” 慢日志的路径
long_query_time10 慢查询日志的执行超过时间
log-error“路劲” 错误日志的存储路劲
log-bin“路径” 记录所有的修改操作用于集群环境
server-id1 用于集群环境一个集群环境的 id 不能重复 客户端工具
我们使用 MySQL 数据库的时候我们可以直接通过 cmd 窗口打开 MySQL 前提是你配置好了环境变量 win r ,输入 cmd 输入 mysql -uroot -p
解释一些这个命令行mysql 表示要执行 mysql.exe 的程序-u 表示使用(use)后面 root 是用户名默认是 root-uroot b表示登录用户名-p 表示需要用户输入密码才能使用 我们还可以直接点击MySQL 自带的客户端工具 我们还可以使用可视化客户端工具例如MySQL workbench 这个可以在官网自行下载 可以在里面连接数据库然后编辑我们的SQL 语句
或者你可以使用其他可视化工具。
SQL
DDL数据定义语言用来维护存储数据的结构 代表指令: create, drop, alter
DML数据操纵语言用来对数据进行操作 代表指令 insertdeleteupdate DML中又单独分了一个DQL数据查询语言代表指令 select
DCL数据控制语言主要负责权限管理和事务 代表指令 grantrevokecommit
注意SQL 是针对数据库操作的语言可以类比我们的编程语言数据库是用来存放数据的这两个是两个东西大家不要混淆。
数据之间的关系 MySQL数据库中可以包含很多个数据库 上面除了 javatest 是我自己创建的数据库 其他四个数据库是MySQL自带的数据库不要删除不要删除 这些自带的数据库包含MySQL 自身的一些配置、性能、系统变量等信息在不清楚它们的具体作用的时候不要修改不要修改如果改错了或者删除了MySQL就可能无法启动如果你还没有备份的话那就 请重装数据库吧 一句忠告不要随便删除系统自带的东西因为你伤不起 每个数据库中又可以包含很多张数据表。 一张表有很多个数据行例如 张三—男—1——54185254501 这就是数据行
每个数据行由列组成例如上面的数据行是由 学生姓名、性别、班级和联系方式这四个列组成的
总结 在 MySQL 数据库中我们可以创建属于自己的数据库每个数据库中会有很多张数据表每张数据表有很多的数据行每个数据行有很多个列组成。