且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

SQL SERVER 2008数据库管理与维护总结

更新时间:2022-09-30 23:05:32

1、事物日志 分为小的虚拟日志VLF,它有编号叫LSN

2、检查点默认每隔1分钟将内存数据存盘,故障点发生后日志重做,事物根据提交与否前滚或回滚。

3、在数据库整体主菜单栏选择属性可设置数据文件和日志文件的存放地点,设置完后需要重启服务,可主菜单右键重启服务或通过windows系统服务重启。

4、sql2005在配置工具里有外围应用程序管理器,2008之后就在主菜单里右键方面也可看到。

5、sqlserver数据库端口为1433

6、master数据库保存用户环境、账户、变量等,model数据库控制其他数据库大小,msdb是计划任务用的,tempdb是临时表数据库,重启会丢失。

7、两个文件类型mdf和LDF

8、可以在属性文件里添加多数据文件多路径,比如放另一个盘,提高性能,此时数据文件后缀名为ndf,mdf最重要,通过它找到ndf,mdf只能为一个,ndf和ldf都可以多个。一般raid就行,无需多个数据文件,但可以多个raid组,多个ndf,但有一定风险,不建议这么做,因为一旦期中一个出问题,数据就可能不完整。

9、数据库文件增长大小,不要频繁让其增长,可以一次增长100M或按20%以上增长。

10、收缩数据库,可在主菜单右键点击任务-收缩数据库,可减少数据库文件大小在磁盘空间上的占用。光删除数据库文件内容不会减小磁盘占用,一般用到自动收缩,可在属性-选项里将自动收缩功能打开。

11、移动数据库文件需先脱机,再改变,但需要让master数据库知道,可以通过命令执行,比较麻烦。还有一种就是通过分离,然后将数据文件移动其他地方后通过附加回来。

12、数据库恢复模式分为完整、大容量日志和简单模式,完整的模式可以解决恢复任何情况下的数据库,大容量可以解决出现故障时刻的数据库,不能恢复任何想要的时刻,简单可覆盖不活跃的日志,即删除了已提交的日志。

13、备份可选择完整、大容量、简单,然后从任务-还原数据库。还原的时候数据库必须处于没使用状态,否则会出现锁而导致恢复失败。或使用命令  backup database weipeng to disk='e:\profile\weipeng.bak' restore database weipeng from disk='e:\profile\weipeng.bak',还可以通过备份的bak文件还原成一个新的数据库。

14、可以创建备份设备,也就是将一个文件路径做成一个图标,以后每次备份就不用每次找路径直接设备就行。方便而已。

15、完整备份后备份日志文件,日志是从第一次完整备份开始备,后续每次就是间隔的备份。

16、数据库没有完整备份时,日志文件是用完了覆盖,所以当插入数据时数据文件会越来越大,但日志文件占磁盘的容量不会变,日志文件内容会不断擦掉又逐渐增起来然后重复过程。

17、备份日志是追加,在操作系统看到是一个文件,backup log weipeng to disk='c:\profile\weipeng.bak',在数据库任务-还原选项里可以看到数据库曾备份过的记录。在第一次完整备份后日志备份的起点不是备份后而是备份前。

18、在多日志备份时,如果采用期中一日志还原,如果选择回滚未提交的事物让数据库可使用了,那么使用之后就不可以用后面其他备份的还原了。日志还原了,需要重新进行完整备份和日志备份。还原时要选择覆盖现有数据库。

19、还原数据库时刻选择目标时间为想要的时间点。

20、当数据库损坏时可 backup log weipeng to disk='c:\profile\weipeng.bak' with no_truncate

21、数据库日志只要备份后不活跃的日志就会被系统自动删除,避免占据磁盘空间,后续日志再写时会从删除的空白地方继续写,日志文件就不会一直增长那么快,说明备份日志文件有助于降低日志文件的增长。但此操作并不能减小当前日志文件大小只是降低增长,可以用如下方式截断事物日志,降低日志文件在磁盘空间上的占有量:backup log weipeng with no_log,然后选择任务-收缩日志文件。

22、差异数据库备份肯定比差异日志快。差异备份不是增量备份,差异备份是备份更改后修改的数据,数据量小,企业方式可以由完整备份-日志备份-差异备份-日志备份。。。等等。医院可以采用白天差异备份(可以恢复到具体的时间点),晚上采用差异备份,当然日志备份恢复较慢。可以在数据分析较多的地方设置日志备份,其他地方采用差异备份。

23、差异备份命令 backup database weipeng to disk='c\profile\weipeng.bak' with differential,还可以通过镜像备份设备把数据库备份到多个硬盘。镜像备份需要创建镜像设备。

24、如何创建数据库快照,需要百度文档。

25、数据库服务启动单用户模式,在系统服务里加上-m参数。

26、备份master数据库及还原,备份backup database master to disk='c:\profile\master.bak',还原master,进入cmd-sqlcmd-restore database master from disk='c:\profile\master.bak'

27、对数据库做了服务器级别的设置,就应该备份master数据库,例如新建数据库,新建登录账户,修改服务器属性或对数据库进行升级、修改之后都应该备份master数据库。备份master数据库跟里面的小数据库没关系,只是一些公共的信息。

28、sql Agent是自动化的必要条件,在服务里必须将它开启。

29、配置邮件服务,需要外网通,在管理-数据库邮件将其设置好,要想有短信提示,需用136手机邮箱,在设置里开启即可。想要自动发邮件,需要在邮件代理属性里将警报系统-启用邮件配置文件。

30、messenger服务启用可使数据库自动net send到另一台计算机。然后在cmd里就可以net send 192.168.1.5 fdfas。操作员在自动化时可让作业完成时自动将信息发给操作员。

31、自动化任务时一般都是将命令定期执行,如create database weipeng to zxta(备份设备,在服务器对象里创建,用来添加一个完整路径的名称设备) with init  每次都追加进去。

32、如需要远程自动化备份,需要在两台计算机都创建同一镜像账户,然后在服务里找到sql server-属性-添加镜像账户名及密码。镜像账户就是两台创建一样的账户密码,并加入到管理组。

33、创建维护计划,可以将多个作业加入到一个计划里,分步骤自动执行,可以方便统筹管理。

34、数据库镜像,基础要添加完整的域名后缀,后先要创建镜像账号在cmd里操作net user weipeng w2480211 /add,net localgroup administrators weipeng /add,然后用户密码不能修改且永不过期,然后在windows系统服务里将sql server 和 sql server agent服务改成刚创建的用户登录并自动启动。

35、给hosts文件添加相应的计算机名及ip地址,让他们能互相解析。在数据库镜像时需要将恢复模式改为完整模式。先在主服务器上将数据库完整备份然后拷到需要镜像的服务器上,在镜像服务上通过备份数据库文件还原时, 数据库名必须一样,且在选项里选择第二项-不对数据库执行任何操作!然后在主数据库上选择属性-镜像-配置安全性-配置见证服务器,在选择镜像服务器时服务器名完整域名。在主数据库连接本地时

本文转自  流颗星  51CTO博客,原文链接:http://blog.51cto.com/liukexing/1965149