数据库定时计划:索引重建

前言

数据库的索引是为了让我们的数据库查询速度变得更快,但是数据库表的增、删、改操作会增加我们数据库表索引的碎片率,从这里我们就知道索引的碎片率的增加是不可避免的,索引的碎片率达到40%以上时,就会影响数据库的读写操作。所以我们需求能够定时的重建我们的索引。

实施步骤

数据库的维护计划右击选择维护计划向导设置计划属性命名计划以及选择每项任务单独计划,点击下一步。
SQL Server 数据库相关维护 - 图1
选择重新生成索引,点击下一步
SQL Server 数据库相关维护 - 图2
选择好要重建索引的数据库以及对象,如下图。
SQL Server 数据库相关维护 - 图3

点击计划下的”更改“按钮,配置计划。
SQL Server 数据库相关维护 - 图4
到作业计划界面,例子是每周的星期天的0点执行一次(具体情况看需求),作业执行尽量选择在生产环境少用数据库的情况下,避免影响到实际生产。
SQL Server 数据库相关维护 - 图5
选择执行计划的日志存放路径,例子是默认的
SQL Server 数据库相关维护 - 图6
点击”完成“后,显示成功(如下图),就说明定时计划创建成功了。
SQL Server 数据库相关维护 - 图7
刷新维护计划和作业就可以查看到对应的计划和任务,如下图。
SQL Server 数据库相关维护 - 图8
维护计划的相应计划名称下右击选择查看历史记录,就可查看该维护计划的具体执行日志,是否成功,执行时间,失败原因。。。
SQL Server 数据库相关维护 - 图9

注意事项

  1. 该操作应该是非工作时间执行,避免影响正常的生产工作。

    数据库定时计划:备份

    前言

    数据库的定时备份是数据库维护的基本工作,我们应该为我们的数据库做定期的备份,避免不恰当的操作对我们的数据库造成不可挽回的损失。
    下面就介绍利用SQL Server 数据库的管理里面的维护计划,为数据库创建定时自动备份的任务。

    实施步骤

    找到数据库的维护计划。
    SQL Server 数据库相关维护 - 图10

    右击选择维护计划向导,出现下图界面,点击下一步。
    SQL Server 数据库相关维护 - 图11
    创建维护向导
    SQL Server 数据库相关维护 - 图12

    将3个备份方式都勾选上
    SQL Server 数据库相关维护 - 图13
    配置完整备份任务
    1. 选择数据库
    2. 设置备份文件过期时间
    3. 选择备份文件的存储文件夹
    4. 勾选验证备份完整性
    5. 选择压缩备份
    6. 配置计划(多久什么时候执行完整备份)
    SQL Server 数据库相关维护 - 图14
    SQL Server 数据库相关维护 - 图15
    SQL Server 数据库相关维护 - 图16

    设置数据库差异备份。差异备份一般是一天一次,其他设置如下图。
    1. 选择数据库
    2. 设置备份文件过期时间(可以是30天)
    3. 选择备份文件的存储文件夹
    4. 勾选验证备份完整性
    5. 选择压缩备份
    6. 配置计划(多久什么时候执行该备份)
    SQL Server 数据库相关维护 - 图17
    设置事务日志备份任务,事务日志备份一般是一天一次,其他设置如下图。
    1. 选择数据库
    2. 设置备份文件过期时间(可以是30天)
    3. 选择备份文件的存储文件夹
    4. 勾选验证备份完整性
    5. 选择压缩备份
    6. 配置计划(多久什么时候执行该备份)
    SQL Server 数据库相关维护 - 图18
    选择计划执行报告输出地址。
    SQL Server 数据库相关维护 - 图19
    点击完成
    SQL Server 数据库相关维护 - 图20
    创建成功
    SQL Server 数据库相关维护 - 图21
    SQL Server 数据库相关维护 - 图22
    重命名子计划名称,右击对应计划,点击修改,双击子计划弹出子计划属性,然后修改名称。
    SQL Server 数据库相关维护 - 图23

    注意事项

  2. 三种备份应该错开时间差进行
    2. 该操作应该是非工作时间执行,避免影响正常的生产工作。

    数据库日志文件过大问题处理

    前言

    SQL Server 数据库文件主要是.mdf(数据)和.ldf(日志)这两个文件,如果创建数据库时,没有设置好数据库文件的扩展策略,就会导致数据库日志文件(.ldf)会越来越大,并且在日志文件自动扩张的时候,由于文件过大,扩张时占据了大量的IO操作,这种情况会直接影响生产环境下数据库的使用。

    实施步骤

    Step 1 完整备份
    首先手动完整备份数据库
    Step 2 切换恢复模式
    将数据库的恢复模式从原来的完整模式切换到简单模式,如下图
    SQL Server 数据库相关维护 - 图24

    Step 3 收缩日志
    数据库右击 任务》收缩》文件 选择文件类型为”日志“。
    SQL Server 数据库相关维护 - 图25
    收缩操作寻找重新组织并且将文件收缩到固定大小,例子为10MB
    SQL Server 数据库相关维护 - 图26
    完成后查看数据库属性,在文件的选项里(如下图),可以看到数据库日志的大小已经改为11MB。
    SQL Server 数据库相关维护 - 图27
    Step 4 修改日志文件自增长方式
    SQL Server 数据库相关维护 - 图28
    日志文件增长方式修改为200MB每次,最大文件大小修改为无限制。
    SQL Server 数据库相关维护 - 图29

    Step 5 复原恢复模式
    SQL Server 数据库相关维护 - 图30

    注意事项

  3. 给数据库日志文件设置为无限制的原因是当数据库日志文件达到最大值时,数据库将无法再写入事务日志,也就是说数据库将不能正常进行事务操作,这肯定不是我们所希望看到的!
    2. 为避免我们的数据库日志文件越来越大,我们应该定时进行事务日志的备份并删除不活动的事务日志。
    3. 数据库自动收缩功能最好不要开。
    4. 该操作应该是非工作时间执行,避免影响正常的生产工作。