数据库基础#3:数据库中的数据?

原文链接:https://www.scarydba.com/2017/06/20/database-fundamentals-3-whats-database/

转载自BOOK – “EXECUTION PLANS” CODE   AZURE DATA PLATFORM INSTRUCTORS

值得注意的是,很多人永远不需要创建自己的数据库。 您也许永远不会创建自己的表或其他数据结构。 您只能运行备份和恢复并操纵系统上的安全性,并让应用程序为您安装数据库。 这是完全可以理解的,完全符合许多企业和许多意外DBA的需求。 但是,了解这些东西是什么以及如何作为理解SQL Server的一部分,这是一个好主意。

数据库实际上是文件

您需要存储以后能够检索的信息。 您有必要组织这些信息。 如果您正在使用文字处理程序,则将不同的文档存储在不同的文件中。 你真的不会将所有的文档放在一个单一的大文件中。 SQL Server的功能非常类似。 当您有一台服务器时,您不会简单地存储在该服务器中的一个大堆中运行业务所需的各种类型的信息。 相反,你将组织这些信息。 SQL Server的初始组织机制是数据库。 数据库允许您在单独的存储区域中保留信息集。 此外,它允许您隔离这些不同信息集的安全性,以便您可以控制谁查看或修改数据。

在数据库中有一些称为表的东西。 表是如何定义关系存储。 您在组织的给定数据库中存储的信息将被添加到这些表中。 您将能够通过这些表添加或删除数据库中的数据。 您还可以从这些表中检索数据库中的信息。

除了数据库中的表之外,还有一些不同的构造将帮助您管理数据库中也存储在数据库中的信息。 这些包括许多不同类型的对象,可帮助您操纵数据,如视图,存储过程和函数。 您还可以获得一整套安全对象,例如角色和用户。

数据库实际上由存储在Windows文件系统的某个位置的文件组成。 这些文件是专有的二进制格式,除非通过SQL Server才能直接读取。 将数据写入这些文件是SQL Server中最昂贵和耗时最多的操作之一(尽管大多数情况下,所涉及的时间以微秒为单位)。 由于这种费用,重要的是要了解您的数据库是由文件定义的,并且它们在存储的地方很重要,因为您对数据库的理解。

两种类型的文件

您可以将数据简单地存储在文本文件或电子表格中,并有大量人员使用。 但是,当您需要多个人同时访问它时,更新某些日期,删除某些日期,插入新信息,同时,这些其他存储机制变得非常有问题。 这就是为什么你需要使用数据库。 因为SQL Server必须与存储的数据做很多不同的工作,所以提出了一些不同的机制来执行这些操作。 数据库围绕存储不同类型信息的两种不同类型的文件构成。 我们通过这两种类型可以参考这个数字。

注意:实际上可以添加到数据库中的其他几种文件类型,但是我们在这里谈论基本原理,所以现在我们将保持直观和简单。

数据文件

定义数据库所需的第一种文件类型是数据文件。 数据文件易于理解和解释。 这种类型的文件是要存储您写入数据库的信息的地方。 任何给定的数据库都可以由多个数据文件组成。 数据文件可以放在与您的系统的多个硬盘驱动器上。 如果您拥有更高级的存储机制,例如存储区域网络(SAN),您可能会有其他构造,而不是服务器上的简单硬盘驱动器,但它们将映射到Windows操作系统作为驱动器,SQL Server可以使用存储 的数据文件。

日志文件

创建数据库所需的第二种文件类型是日志文件。日志文件比数据文件要复杂一点。日志文件记录数据库中发生的每个事务。当系统中以某种方式操纵数据时,会发生事务。这些操作可以是对现有数据的更新,通过将新数据插入到表中来添加新数据,或从表中删除数据。所有这些操作都会将信息写入日志文件。还有一些其他功能也与日志文件相关联。这些文件通常远小于数据文件,因为日志文件中的条目只需要保留,直到所有数据都已成功写入数据文件。因为写入数据文件有不同种类的故障,因此日志文件被保留以帮助处理这些故障。一旦将信息写入数据文件,可以删除日志条目。清理日志文件的过程将在另一篇文章中详细讨论。
当您最初创建文件时,您可以调整其大小。您也可以在创建文件之后调整上下的大小。每个文件也可以自动设置,这是非常复杂的,所以值得花更多的时间了解它的意思。

自动增长设置

如果你有很多数据库,那么在数据库上管理文件可能会很多。您必须检查可用空间,然后在足够的时候将文件设置为更大的尺寸。所有这些手动工作的一个方法是使用数据库上的自动增长属性设置。
谨慎一点:使用此设置非常小心。您可以填写驱动器,使您的服务器脱机。
将数据库设置为自动增长是指数据库在开始运行时会自动调整文件大小。许多人使用此设置,并且许多应用程序在安装它们时将其设置为开启。您应该为文件设置一个较高的增长限制,以避免该问题。您可以将文件设置为增长数据库的百分比或固定大小。对于较小的数据库,按百分比增长可以起作用,但随着数据库的大小增加,百分比的增长将变得越来越长。最佳做法是将增长率设定为特定值而不是百分比。有关如何设置所有这些的详细信息将在数据库创建时被覆盖。

放置文件的位置

安装SQL Server时,您可以选择定义数据库文件的放置位置。 您还可以通过“服务器属性”窗口进行调整。 在创建数据库时,最好知道您要放置文件的位置,以确保该驱动器上有足够的空间。 要查看此位置,请按照“数据库基础知识2”中所述连接到您的服务器。 一旦连接,在对象资源管理器窗口中,右键单击服务器名称本身。 这将显示一个上下文菜单。 选择该菜单底部的“属性”菜单选项。 这将打开“服务器属性”窗口,您将处于默认的“常规”选项卡。 选择“数据库设置”选项卡,您将看到与此类似的内容:

要查看的有趣区域是位于窗口底部的“数据库默认位置”部分。您将看到列出的三个不同的目录,一个用于数据,日志和备份。通过单击条目右侧的省略号,您可以启动默认文件浏览器窗口,以更改日志或数据文件的默认位置。您还可以通过使用上述物理路径直接键入文本框或使用通用命名约定(UNC)路径来修改它们。
放置文件的目标应该是尝试尽可能多地分离功能。如果你有这个能力,你最好将操作系统文件和数据和日志文件分开。这意味着如果可能,将数据和日志文件放在C:\驱动器之外。此外,您至少应考虑将数据和日志文件存储在完全独立的驱动器上。这允许对驱动器上的文件的最大数据吞吐量。
确定存储位置是否合适后,如果您进行了更改,请单击确定按钮保存这些更改。如果您没有进行任何更改,或者您不想保存所做的更改,请单击取消按钮。这些点击之一将关闭“服务器属性”窗口。
除了物理位置之外,两个文件类型中的每一个都具有几个属性,这些属性在创建数据库时将会很重要。物理位置的一部分将是文件名和扩展名。这些可以是任何有效的Windows操作系统名称和扩展名。默认情况下,扩展名通常是数据文件的.mdf,日志文件的.ldf。你可以改变这些,如果你愿意,但它可能导致混乱,因为大多数人使用默认值作为最佳做法。有一个逻辑文件名,允许您引用文件中的数据库中的操作,而不必参考包括驱动器在内的完整文件位置。逻辑名称根本不必与物理名称相匹配,但通常它们相同。

结论
这将介绍数据库的文件存储的内容。 下一篇文章我们将在服务器上实际创建一个数据库,这是一个比这个帖子更容易的感觉。

时间: 2024-10-10 08:17:12

数据库基础#3:数据库中的数据?的相关文章

数据库——基础(数据库操作,表格操作)——增加高级查询

笔记 LAMP:Linx(操作系统) A(阿帕奇)——网页的应用程序 M(Mysql):体积小,应用简单 P(PHP) 第一步:搭建网页环境——A\M\P WAMP:用WAMP搭建环境 DW:更好的显示 数据库的基本操作: 数据库——表结构——字段(列) 每一行数据成为一条数据(记录) 特点:关系型数据库,有严格的规范 1.必须有主键:能够唯一标识一条数据的字段 2 T-SQL:通用的数据库操作语句 自增长列code(主键列) ;连接键表 最后一个字段不加 ,#注释 创建表:create tab

数据库基础(数据库事务及存储过程的小练习)

数据库事务: 数据库事务(Database Transaction) 是指作为单个逻辑工作单元执行的一系列操作. 事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源. 设想网上购物的一次交易,其付款过程至少包括以下几步数据库操作: 更新客户所购商品的库存信息 保存客户付款信息--可能包括与银行系统的交互 生成订单并且保存到数据库中 · 更新用户相关信息,例如购物数量等等 正常的情况下,这些操作将顺利进行,最终交易成功,与交易相关的所有数据库信息也成功地更新.

MySql数据库基础操作——数据库、用户的创建,表的制作、修改等

MySql 是一款使用便捷.轻量级的数据库.因为他体积小.速度快.安装使用简单.开源等优点,目前是使用最广泛的数据库.目前位于Oracle甲骨文公司旗下.那今天我们就来介绍一下数据库的基本操作.具体介绍通过指令的方式来操作数据库. 首先,连接数据库的软件很多,比如说 Navicat 等软件.通过这些软件可以轻松便捷的操作数据库,但是今天的重点不在这. 我们今天普及一下指令操作的方式操作MySql数据库. 我们主要从以下 4 个方面介绍: 1.数据库的 创建.删除.查询 等语句 跳转 2.用户的

java连接Oracle数据库,从ResultSet中提取数据出现java.sql.sqlException结果集已耗尽

出现错误的原因是ResultSet中并没有任何东西,再调用next()方法就会出错,原因可能是oracle创建用户,表没有提交,commit即可

数据库 基础学习— 数据库语句操作、数据类型、约束分类

一.数据库的创建 1.创建数据库 create database MyDBon primary( Name=MyDB, FileName="D:\MyDB.MDF"), --创建主数据文件叫MyDB,放在D盘中.( Name=MyDB1, FileName="E:\MyDB1.NDF"), --创建次数据文件叫MyDB1,放在E盘中.log on( Name="MyDB_Log", FileName="E:\MyDB.Log"

Clojure基础课程2-Clojure中的数据长啥样?

本文来自网易云社区 作者:李诺 " Clojure is elegant and pragmatic; it helps me focus more on solving business problems." 不同于Java这类静态语言, Clojure是动态语言,动态类型意味着这些类型会在代码运行时由Clojure动态的推导出来,编译时不作任何限制. user=> (defn f1 [a b] (+ "1" 2))#'user/f1 user=> (

JNI基础 c程序中打印数据到控制台

(1)声明头文件,拷贝下面的内容到c文件中 #include <android/log.h> #define LOG_TAG "clog" #define LOGI(...) __android_log_print(ANDROID_LOG_DEBUG,LOG_TAG,  __VA_ARGS__) #define LOGD(...) __android_log_print(ANDROID_LOG_INFO,LOG_TAG,  __VA_ARGS__) (2)在Android.

详解大数据采集引擎之Sqoop&amp;采集oracle数据库中的数据

欢迎关注大数据和人工智能技术文章发布的微信公众号:清研学堂,在这里你可以学到夜白(作者笔名)精心整理的笔记,让我们每天进步一点点,让优秀成为一种习惯! 一.Sqoop的简介: Sqoop是一个数据采集引擎/数据交换引擎,采集关系型数据库(RDBMS)中的数据,主要用于在RDBMS与HDFS/Hive/HBase之间进行数据传递,可以通过sqoop import命令将RDBMS中的数据导入到HDFS/Hive/HBase中,也可以通过sqoop export命令将HDFS/Hive/HBase中的

Datawhale MySQL 训练营 Task1:MySQL 安装与数据库基础

安装 平台 Windows X64; MySQL: 直接去 MySQL 官网 下载:点击即可安装:安装过程中可能会要求 python3.7; 可以去安装一个 python3.7; 可视化工具:Navicat 数据库基础知识 数据库定义: 根据 <SQL 必知必会>里的定义, 数据库是保存有组织数据的容器: 顾名思义数据的仓库,其实很好理解. 区分数据库 Database 和 数据库管理系统 DBMS: DBMS 是对数据库进行管理的系统,如 MySQL 就是一个DBMS. 表: 数据库中的一种