阅读目录(Content)
- 1 基本介绍
- 2 对数据库启动的影响
- 3 日志文件添加方式
- 4 物理结构
- 5 延迟日志截断原因
- 6 管理事务日志
本系列上一篇博文链接:SQL SERVER大话存储结构(4)_复合索引与包含索引
回到顶部(go to top)
1 基本介绍
每个数据库都具有事务日志,用于记录所有事物以及每个事物对数据库所作的操作。
日志的记录形式需要根据数据库的恢复模式来确定,数据库恢复模式有三种:
- 完整模式,完全记录事物日志,需要定期进行日志备份。
- 大容量日志模式,适用于批量操作的数据库,可以以更压缩的方式处理日志,需要定期进行日志备份。
- 简单模式,也有日志文件,只是该模式下可以通过checkpoint自动重用virtual log file,所以日志文件会处于一直重复使用的过程,保持一定大小,但是,如果有一个事务启动,很久没有commit,那么从这个事务开始到最后commit的时间段内的事务日志存储空间都无法checpoint自动重用,这时,你很可能看到一个很大的日志文件;注意,简单模式下是无法进行日志备份。
数据库里边,任何对数据库的读写都是在内存页中找到对应的数据也,再做修改,如果内存页中不存在数据页,则从磁盘加载如内存中。当一个修改操作发生时,修改的将是内存页中对应的数据页面,同时也会实时记录到日后文件ldf中。那么,什么时候数据会被同步到mdf文件呢,只有以下三种情况:
- 做checkpoint时,后续会专门整理checkpoint的相应文章;
- Lazy write运行时,即内存出现压力,需要把内存中的数据页写入到磁盘,腾出内存空间;
- eager write时,即发生bulk insert和select into操作时。
DB中的事务日志记录,可以给我们带来很多好处,它可以支持以下操作:
- 恢复个别的事务。
- 在 SQL Server 启动时恢复所有未完成的事务。
- 将还原的数据库、文件、文件组或页前滚至故障点。
- 支持事务复制。
- 支持高可用性和灾难恢复解决方案:AlwaysOn 可用性组、数据库镜像和日志传送。
回到顶部(go to top)
2 对数据库启动的影响
当数据库重启或者还原到最后的时候,数据库都会进入 recovery状态,正常情况下,这个状态持续时间在几十秒间,但是特殊情况下,它会花费非常长的时间,甚至几个小时,如果这个步骤失败,数据库则进入到挂起 suspect状态,无法正常提供使用。
那么,当数据库进入 recovery 的时候,它在操作些什么呢?
SQL SERVER日志会记录所有修改记录(数据的修改情况,不包含SQL语句),包括Begin Transaction和Commit / Rollback Transaction 操作。由于对事务日志的修改,要比数据文件的修改要快,所有会出现,数据修改更新到了日志文件,但是还没有落盘到数据文件,那么这个时候数据库就处于recovery状态,同时对事务日志最近的一个checkpoint点以后的所有数据修改记录做以下检查:
![技术分享](https://img.gxlcms.com//Uploads-s/new/2020-10-12-qlqqti/20180110233501011124.png)
所有检查结束后,则会对数据库做一个checkpoint的表示,并写入事务日志中,表明日志文件跟数据文件已经同步结束,完成了recovery过程,数据库可正常提供使用。这里需要注意一点,如果你数据库最近一次checkpoint到现在的修改操作足够多,那么将会耗费相对较长时间来检查,同时也能够在 error log中看到百分比标识的recovery完成进展,避免漫无目的的等待。
Error Log的检查,可以通过图形界面(见下图)查看当前日志,也可以运行xp_readerrorlog 查询。
1 /*
2 xp_readerrorlog参数说明
3 1. 存档编号
4 2. 日志类型(1为SQL Server日志,2为SQL Agent日志)
5 3. 查询包含的字符串
6 4. 查询包含的字符串
7 5. LogDate开始时间
8 6. LogDate结束时间
9 7. 结果排序,按LogDate排序(可以为降序"Desc" Or 升序"Asc"),默认升序
10 */
11
12 Exec xp_readerrorlog 0,1,Null,Null,‘2017-02-16 10:53:32.300‘,‘2017-02-16 12:53:32.300‘
![技术分享]()
假设出现这种情况,由于上线的重要程度远远重要过 数据丢失的情况,并且你跟所有部门沟通确认
可以承担 data file跟log file之间的差异数据的丢失,那么你可以按以下步骤操作,
严重建议不要这么操作,因为会带来不可预估的数据丢失情况,
如果你命悬一线,真打算放弃这部分数据,那么,可以按照以下操作:
1 #设置数据库单用户
2 alter database backupdb set single_user with rollback immediate
3
4 #设置数据库紧急状态
5 alter database backupdb set emergency with rollback immediate
6
7 #获取事务日志的物理名和逻辑名后,重建日志文件
8 select name,physical_name from sys.master_fiels where database_id=db_id(‘backupdb‘)
9 alter database backupdb rebuild log on (name=‘事务日志的逻辑名‘,filename=‘事务日志的物理名词‘)
10
11 #设置数据库online
12 alter database backupdb set online with rollback immediate
13
14 #设置数据库为多用户
15 alter database backupdb set multi_user with rollback immediate
![技术分享](https://img.gxlcms.com/https://img.gxlcms.com/https://img.gxlcms.com/https://img.gxlcms.com/https://img.gxlcms.com/https://img.gxlcms.com/https://img.gxlcms.com/https://img.gxlcms.com//Uploads-s/new/2020-10-12-qlqqti/fz.gif)
回到顶部(go to top)
3 日志文件添加方式
日志记录在 后缀名为 ldf的文件,允许有多个日志文件,但是不会并发分开记录日志,而是使用填充满一个日志文件后,再转向一个日志文件,线性操作日志文件。
可以通过下方来添加 ldf文件,需要注意几个地方:
- 初始大小,建议直接设置为 截断日志的期间内最大值,比如,某DB 恢复模式是完整模式,每隔半个小时做一次事务日志备份且截断日志,那么设置 日志文件大小的时候,取业务高峰期 每半小时的日志增长 最大值是5G,则可设置初始大小为 5G-7G之间;
- 增长大小,无论是 按比例增长还是按照MB增长,都不要设置过小,建议每次增长在100Mb左右,减少使用到自动增长,在最初设置的初始大小就满足其增长需求 ,如果开始设置的 初始大小 偏小,不满足,可以挑一个业务低峰期,修改变大初始大小。每一次文件自动增长期间,都会对写入的日志造成堵塞,虽然时间很短,但是如果增长频繁,则会影响数据库操作;
- 自动增长,建议设置为自动增长,但是前提定期监控日志的增长情况,避免磁盘空间不足,同时,如果恢复模式是 完整模式或者大容量模式,还需定期做日志备份截断日志,避免 事务日志已满的9002错误;
- 路径选择,建议与 mdf 文件放在不同的磁盘上,分散IO,若是磁盘读写瓶颈不大,则可放在一个磁盘上;
添加方式有2种,如下:
1 USE [master]
2 GO
3 ALTER DATABASE [backupdb]
4 ADD LOG FILE (
5 NAME = N‘backupdb_log_1‘,
6 FILENAME = N‘D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\backupdb_log_1.ldf‘ ,
7 SIZE = 524288KB ,
8 MAXSIZE = 1048576KB ,
9 FILEGROWTH = 10240KB
10 )
11 GO
![技术分享](http://www.mamicode.com/data:image/png;base64,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czvzwXN5rfZjNlIGzwbPpz14vuvud3Zfffml7qWXXum++lLXXY2h8/Ovds8/F0Pnr3Z/8tRz3T94/Q91P//L7z74tX+u+60/erY7/w++v/pcZfH9WVtvNXX/MvqxN763+7mfu9T98A/9XnfvvS91d9517w395M//eveTP/fh7nX/+H2zwfM33/rm6nOVnfTrW4XXR5IkSZIkSdda+uA5HcegOR0frVXe8Zze7ewdzwbPtU578PyjP3FxNnB+629e7v71bz/Z/eJvPd698/3PdO/6yLPdl65c7T528L3xX/yV/6H7y9/0uu6v//1/3v13f//7urfd/fs3PE/6fozytb7rZX3XTqsf+ZF3dXs//UD3gz/wm9073/mV2aC59KaL93R/9i/9ne6H3/Te2fk3fuNPV58ryr/uvNq11j35ejqWJEmSJEnS2bbUwXMqBtDpXc75em3wPFQaPEfl0Dkvhs9HQ2eD52a1oXNUGzbn1YbNeZsyeP7uH/zp7itXX+2+etCzL77cvfhi1z353Evdk1eudk9++ZXuw5/4k+4/+y//2+q9efE9WT6mhq4PFftPq9tv/53uTW/6QHfbP7une8c7nj02eM7f9ZyKdz//wP/8zupzlZVfS34+9ViSJEmSJEln28IHzzH8yUs/buPox2vkVQbPY9/xnL/rOUpD6HIQbfBcHzinakPnqDZszqsNm/M2ZfD8bd/3Y92LL73a/evf+FJ38Tef7N72+5e7e977VHffh57pHnvm1e4zj3y5+/P/zW539ZWXq/en4nsxf2wd52tlfddOq+//vnu7H33Du7vv+s67u7t+4enZcDnJj5P07uf3ffjT1eeL4usqS+v5Y76/PI7HsrRHkiRJkiRJp99CB89p4BPveq6987ms9m7nMYPnfH8+cD7qYw/f+OM2DofNBs/Hqw2do9qwOa82bM7blMHzj/3UOw6+55/unn3uq90zz17tnv5y111+5qvdF55+qXvs8a92D1/+SvfdP/rW7pd+9d3V+1P592y+Vh7na3np3tb1KX3d131ds9r+vO/9nl/pbv/nv939T//TL3Zv+dkvdT/x1l89HDHXB89v/Ff/tvvt9z44OHyOyq8tPy+P81p70rEkSZIkSZJOv4W/4zkNnWd9+Nq7nce84/ndqQeuD57z8sFz+aM2buhw8Hz0bmeD52a1oXNUGzbn1YbNeZsyeP74px7ufuSnf6l76ssvdT/3W0/O3vX89t9/svuV9z3dvWv/ywe/ts92H/rEk91f/Bv/tHv66a9UnyNKg9D8MVW7njdmz9TmGTpH3/M9d3ff932/1n3bP35r95N3Ptrd8bO/cjhirg+ef+Sn3z4bOqfK54uvpVa6lu+b91iSJEmSJEmnn8Fz6kGD57zasDmvNmzO25TBc3TP73yge8s7fqf70tMvd489/dXuC09+tXvkS1/tPvMnL3YPfeEr3ae+cLX7ld/9ZPcNf+NbuxdffLH6HGkQOjQorQ1My2u1PfM0degc/bN/9svd933fO7tved3Pdm/4sc90P/yT/+ZwxNwdvfv5ze/4g1nhlVdf7d5y9x92/+od76kOnlOtrztVrk85liRJkiRJ0uln8Jx60OA5rzZszqsNm/M2afAc/fKvvqd77/6nu0eevNrd9dtPdz//W09273zPM927PvLswev4XPeJzz7Xfc+P/EL3977t+6v3xyA0lc7L633rfccnacrQOfre73l7d9ttv9x927f+bPfPf/iT3Q/+y7fOBswhf/dzePXVrvvKV1/qnr7yYvdv7/tU92f+4t+uPmfra259jbGel6/XjiVJkiRJknT6GTynHjR4zqsNm/Nqw+a8TRs8R997x1u7z16+2j38havdp7/wXHfp0ee7T372avfxTz9/8Jq8ePBrc6X7unN/rvvYxz91w71pEDr2sTwec34afdd3/kL3Pd/9b7pv+9a3dN/7fR/tbvvRn50NmV955dWjdz+ndzynPv2Fp7u3/cZHqoPn+BrGVN4z5ViSJEmSJEmnn8Fz6kGD57zasDmvNmzO28TB8z/87h+f/WiN+DnPbz3obb/7TPer73n64Pv76YNf42e7P/rUc90PvuFi9w/+6W033JsGofljqnVerpfl+06rC9/+1u7bv/1fd//oH/5U953f+9Hue37kzd2rr77afeXqS8fe/fzSK690X3r6+e4zX/zT7oGD77N//c4PTH7H89B5POb13SNJkiRJkqTTzeA59aDBc15t2JxXGzbnrfvg+Vd//wPdd/7gT3S3/pMf7b7xW3+k+5uv+8Hur/+97+teu/u93V/5W9/RfcM3vr77C3/j9d2ff+0/7P7T//rvdx/65LPdBz/xYvfBjz3X/cf/6X95w/OlQWhrIDpmULoKw9S/87fu6P72N9/R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)
回到顶部(go to top)
4 物理结构
数据库的事务日志映射在一个或者多个的物理文件上,从概念上讲,日志文件是一系列的日志记录;从物理上讲,日志记录序列被有效的存储在实现事务日志的物理文件中。
SQL Server 数据库引擎在内部将每一物理日志文件分成多个虚拟日志文件,即VLF(Virtual Log File),虚拟日志文件没有固定大小,且物理日志文件所包含的虚拟日志文件数不固定。数据库引擎在创建或扩展日志文件时
动态选择虚拟日志文件的大小。数据库引擎尝试维护少量的虚拟文件。在扩展日志文件后,虚拟文件的大小是现有日志大小和新文件增量大小之和。
只有当日志文件使用较小的 size 和 growth_increment 值定义时,虚拟日志文件才会影响系统性能。如果这些日志文件由于许多微小增量而增长到很大,则它们将具有很多虚拟日志文件。这会降低数据库启动以及日志备份和还原操作的速度。
建议您为日志文件分配一个接近于最终所需大小的size值,并且还要分配一个相对较大的 growth_increment 值。
管理员不能配置或设置虚拟日志文件的大小或数量,但是
在VLF影响系统性能的情况下,可以尝试缩小,通过收缩日志文件的方式
。
dbcc loginfo(dbname) 返回的行数,即为 VLF 文件个数,当status为0时,即该文件没有被使用,还能写入LOG,2表示已被使用,并且无法重用,这个时候,可以通过 backup Log 的形式,备份并截断LOG文件,则可以回收 从最后一个0到最近一个2行的空间。
收缩日志文件或者减少VLF文件的方式如下,需要先备份日志文件,才可以有效进行收缩,在没有备份日志文件的情况下,进行收缩,效果不大。详见以下代码:
1 #其行数及为VLF个数,status为0表示文件未用,为2表示已被使用,无法重用
2 dbcc loginfo
3
4 #备份日志
5 BACKUP LOG [backupdb]
6 TO DISK = N‘D:\data\20170215_backupdb_log.trn‘ WITH NOFORMAT, NOINIT, NAME = N‘backupdb-事务日志 备份‘, SKIP, NOREWIND, NOUNLOAD, STATS = 10
7 GO
8
9 #收缩日志文件,根据日志文件名来收缩500Mb,建议收缩大小是合理大小,参考上文的 初始大小 判断
10 USE [backupdb]
11 GO
12 SELECT name FROM sys.database_files WHERE type_desc=‘log‘
13 DBCC SHRINKFILE (N‘jiankong_db_log‘ , 500)
14 GO
15
16 #其行数及为VLF个数,VLF文件减少
17 dbcc loginfo
事务日志是一种回绕的文件。假设,数据库backupdb只有一个ldf文件,且刚好分成了5个虚拟日志,当我们开始使用数据库的时候,逻辑日志从物理日志的最开始端向末端记录,如下图。