作为记录,一些最基本的检查:
1、通过管理工具,性能查看器,根据磁盘io,两个重要指标:PhysicalDisk中的Avg.Disk Read Queue Length 和 Avg.Disk Write Queue Length,如果这两个平均值大于0.5,就需要注意磁盘io的性能了;
2、数据库日志文件是否很慢,会拖慢系统速度;如何收缩日志需要注意;
3、tempDb数据库是否很大,会拖慢系统速度;数据库每次重启,会重建tempdb,
4、通过SqlProfiler来跟踪sql语句的查询效率;
解决办法,对提高数据库性能有帮助:
1、给tempdb分配一个初始值较大的空间,如数据文件300m,日志文件50m;
2、数据库事务默认的级别Read Committed,并发性低,可以设置为行版本控制的可提交读:READ_COMMITTED_SNAPSHOT,给每张表增加一个Version字段,手动控制版本,这样既能提高并发性,也避免了读取脏数据;
ALTER DATABASE dbname SET READ_COMMITTED_SNAPSHOT ON