位置: 编程技术 - 正文

SQL SERVER 文件和文件组(sql server中的文件位置可以很灵活)

编辑:rootadmin

1、文件和文件组的含义与关系

每个数据库有一个主数据文件.和若干个从文件。文件是数据库的物理体现。 文件组可以包括分布在多个逻辑分区的文件,实现负载平衡。文件组允许对文件进行分组,以便于管理和数据的分配/放置。例如,可以分别在三个硬盘驱动器上创建三个文件(Data1.ndf、Data2.ndf 和 Data3.ndf),并将这三个文件指派到文件组 fgroup1 中。然后,可以明确地在文件组 fgroup1 上创建一个表。对表中数据的查询将分散到三个磁盘上,因而性能得以提高。在 RAID(磁盘冗余阵列)条带集上创建单个文件也可以获得相同的性能改善。然而,文件和文件组使您得以在新磁盘上轻易地添加新文件。另外,如果数据库超过单个 Microsoft Windows 文件的最大大小,则可以使用次要数据文件允许数据库继续增长。

2、文件、文件组在实践应用中常见的问题

通常情况下我们构造的数据库都只有两个文件,mdf文件和ldf文件.但是这样有两个缺点:

(一)容易导致文件过大

我们知道,mdf文件是数据库文件,这样的话也就意味着随着数据库的增大mdf就会相应的增大,显然在现在的应用中数据膨胀是太常见的事情了,当你的应用变大后,mdf文件也会变大,然而windows对文件的大小是有要求的,这样的话很容易导致mdf文件达到windows所允许的文件大小的界限(于是数据库就崩溃了)。

(二)没有利用到磁盘阵列

大型的服务器好多都有磁盘阵列,你可以把磁盘阵列简单的假象成n个一块转动的磁盘,磁盘阵列的设计是希望通过多个磁盘的串联来得到更大的读写效率.但是如果你的数据库只有一个mdf文件(ldf文件暂时不考虑),那么你总是只能够利用这个磁盘阵列里面的一个磁盘而已.那样的话昂贵的磁盘阵列的效率就由并联变成串联了.试想如果我们能够让mdf分散成多个文件,比如说磁盘阵列上的每个磁盘中都分配一个文件,然后把mdf中的数据分散到各个文件中,我在读取的时候就是串联的读取了,这样就充分的利用了磁盘阵的存取效能.

这两个问题平常我们没有遇到过(条件不具备),但是做大型的服务开发的时候这几乎是致命的.

3、查询文件组和文件语句

这在下,运行

SELECT df.[name], df.physical_name, df.[size], df.growth, f.[name][filegroup], f.is_default FROM sys.database_files df JOIN sys.filegroups f ON df.data_space_id = f.data_space_id

4、MSDN官方解释

了解文件和文件组

每个 SQL Server 数据库至少具有两个操作系统文件:一个数据文件和一个日志文件。数据文件包含数据和对象,例如表、索引、存储过程和视图。日志文件包含恢复数据库中的所有事务所需的信息。为了便于分配和管理,可以将数据文件集合起来,放到文件组中。

数据库文件

SQL Server 数据库具有三种类型的文件,如下表所示:

文件 说明

主要

主要数据文件包含数据库的启动信息,并指向数据库中的其他文件。用户数据和对象可存储在此文件中,也可以存储在次要数据文件中。每个数据库有一个主要数据文件。主要数据文件的建议文件扩展名是 .mdf。

次要

次要数据文件是可选的,由用户定义并存储用户数据。通过将每个文件放在不同的磁盘驱动器上,次要文件可用于将数据分散到多个磁盘上。另外,如果数据库超过了单个 Windows 文件的最大大小,可以使用次要数据文件,这样数据库就能继续增长。

次要数据文件的建议文件扩展名是 .ndf。

事务日志

事务日志文件保存用于恢复数据库的日志信息。每个数据库必须至少有一个日志文件。事务日志的建议文件扩展名是 .ldf。

例如,可以创建一个简单的数据库 Sales,其中包括一个包含所有数据和对象的主要文件和一个包含事务日志信息的日志文件。也可以创建一个更复杂的数据库 Orders,其中包括一个主要文件和五个次要文件。数据库中的数据和对象分散在所有六个文件中,而四个日志文件包含事务日志信息。

默认情况下,数据和事务日志被放在同一个驱动器上的同一个路径下。这是为处理单磁盘系统而采用的方法。但是,在生产环境中,这可能不是最佳的方法。建议将数据和日志文件放在不同的磁盘上。

文件组

每个数据库有一个主要文件组。此文件组包含主要数据文件和未放入其他文件组的所有次要文件。可以创建用户定义的文件组,用于将数据文件集合起来,以便于管理、数据分配和放置。

例如,可以分别在三个磁盘驱动器上创建三个文件 Data1.ndf、Data2.ndf 和 Data3.ndf,然后将它们分配给文件组 fgroup1。然后,可以明确地在文件组 fgroup1 上创建一个表。对表中数据的查询将分散到三个磁盘上,从而提高了性能。通过使用在 RAID(独立磁盘冗余阵列)条带集上创建的单个文件也能获得同样的性能提高。但是,文件和文件组使您能够轻松地在新磁盘上添加新文件。

下表列出了存储在文件组中的所有数据文件。

文件组 说明

主要

包含主要文件的文件组。所有系统表都被分配到主要文件组中。

用户定义

用户首次创建数据库或以后修改数据库时明确创建的任何文件组。

默认文件组

如果在数据库中创建对象时没有指定对象所属的文件组,对象将被分配给默认文件组。不管何时,只能将一个文件组指定为默认文件组。默认文件组中的文件必须足够大,能够容纳未分配给其他文件组的所有新对象。

PRIMARY 文件组是默认文件组,除非使用 ALTER DATABASE 语句进行了更改。但系统对象和表仍然分配给 PRIMARY 文件组,而不是新的默认文件组。

推荐整理分享SQL SERVER 文件和文件组(sql server中的文件位置可以很灵活),希望有所帮助,仅作参考,欢迎阅读内容。

SQL SERVER 文件和文件组(sql server中的文件位置可以很灵活)

文章相关热门搜索词:sql server的文件包括哪两种,sql server2008的文件包括,sql server中的文件位置可以很灵活,sql server的数据文件,sql server的文件类型,sqlserver文件和文件组与数据库还原,sql server的文件包括什么,sql server sql文件,内容如对您有帮助,希望把文章链接给更多的朋友!

SQL server 随机数函数 不过还是希望老鸟们多多指教了,现在切入正题:随机函数:rand()在查询分析器中执行:selectrand(),可以看到结果会是类似于这样的随机小数:0.

SQLServer Top语句参数化方法 declare@TopCountintset@TopCount=selecttop(@TopCount)*fromAdventureWorks.HumanResources.Employee如果有Like等字句,一定要拼Sql的话,也应该使用sp_executesql来执行,示例如下

SQLServer EVENTDATA()函数来获取DDL 触发器信息 --CreatealogtableCREATETABLETriggerLog(LogInfoxml)--CreateadummytabletodeletelateronCREATETABLETableToDelete(IdintPRIMARYKEY)--新建一个新表,作为删除实验表INSERTINTOTableToDeleteVALUES(1

标签: sql server中的文件位置可以很灵活

本文链接地址:https://www.jiuchutong.com/biancheng/349108.html 转载请保留说明!

上一篇:mssql 两表合并sql语句(sql将两个表的数据合并)

下一篇:SQL server 随机数函数(sql server随机数函数)

  • 税前扣除项目包括
  • 企业所得税季初和季末
  • 预算内往来款
  • 商品流通企业应将当期已销商品的进价转入当期费用
  • 应付账款明细账模板
  • 广告公司制作警示牌可以开具什么样的发票?
  • 企业汇算清缴补税原因
  • 购入货物自用的进项税额转出分录怎么处理
  • 企业购买硬件与软件该如何做账?
  • 房屋维修专用发票图片
  • 零售汽油费发票需要交印花税吗?
  • 劳务派遣税收政策文件
  • 印花税股权转让计税依据
  • 融资租赁的房产,按收取的租金从租计征房产税
  • 补发工资补缴公积金一直没到账
  • 融资租赁销售方会计处理
  • 现金折扣列题
  • 银行代扣社保费
  • 公司投资理财产品
  • 金税盘纳税申报
  • 一般纳税人资质证明文件去哪打印
  • navione.exe是什么意思
  • macOS 10.13允许任何来源没有了怎么办?macOS 10.13允许任何来源没了开启步骤
  • php字符串型数据的定义方式
  • 冲销多计提所得税
  • 跨省经营建筑企业税收政策
  • ds file是干什么的
  • phpstorm怎么用
  • 承包安装工程怎么报价
  • 小企业取得存货入账价值的依据是
  • php操作步骤
  • 无形资产入账价值包括资本化支出吗
  • ctf web题型
  • vue的number
  • 语音识别的正确流程
  • php路径问题
  • 预缴增值税需要预缴城建税吗
  • 小规模纳税人开专票需要交税吗
  • 认缴制对实务操作的可能影响有哪些?
  • mysql常用表
  • 公司购买绿植入什么科目
  • 装修款需要开发票吗
  • 税率与征收率是怎么回事
  • PostgreSQL教程(十八):客户端命令(2)
  • 土地使用权的核算
  • 其他应付款在借方资产负债表怎么填
  • 长期股权投资收益会计处理
  • 出口货物不免不退
  • 研发支出费用化和资本化的界定
  • 应收账款收不回来怎么处理比较好
  • 企业间贴现手续怎么办理
  • 固定资产的原价减去预计净残值后的余额
  • 法人存入公司账户会计分录
  • 在建工程的人工费会计分录
  • 什么情况下投资乘数最大
  • 商业折扣的会计分录
  • 创办小企业如何起步
  • 过滤重复字符串
  • win8换win7详细过程
  • mac外接显示器不显示全部桌面
  • win8.1系统更新后启动不了
  • linux 安装vs
  • keyworker什么意思
  • win10升级后无法进入系统一直重启
  • winxp修改ip地址方法
  • linux之间拷贝文件
  • Windows下查看PCI插槽链路
  • WIN10更新失败
  • win8 控制面板
  • windows 10预览版
  • 控制台报错是前端问题吗
  • android:ListView的局部刷新
  • js类继承的几种方式
  • unity jsonutility 数组
  • vue自定义方法
  • 安卓手机怎么导入地图
  • unity 3d 介绍
  • 辽宁省国家税务总局
  • 关联企业签订劳动合同的次数可以累计吗
  • 国地税账号密码
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设