史林枫:sqlserver数据库中数据日志的压缩及sqls

上海时时乐走势图官网 1

4 数据库
    首先检查数据量,SW7的信息数据量在15W左右,日志表数据量在2W左右。OBLOG博文信息数据量在4W左右,日志表数据量在1W以下。应该讲这个数据量是很小的,服务器绝对能跑得动。但表现出来的现象应该就是出在数据库,于是清空了两个系统的日志表,同时针对SW7的信息表做了分表,将2008年以前的数据分了出去,这时信息表数据量在10W左右。经过上面操作后,SW7的访问速度仍然非常慢。
    结合现象再次分析,认为一定是有某处数据库瓶颈没有找到。再次分析SW7的表使用情况,未发现有更多数据量数据表,问题排查一度无果。后来不经意间在备份数据库时发现OBLOG的备份文件竟然有近2个GB,远远超过了SW7(SW7的备份文件大小在800MB左右),很显然OBLOG数据库里一定有一张超大表。于是用脚本将OBLOG中各表的数据量以及占用空间列出来,脚本如下:
create table #t(name varchar(255), rows bigint, reserved varchar(20), data varchar(20), index_size varchar(20), unused varchar(20))
exec sp_MSforeachtable "insert into #t exec sp_spaceused '?'"
select * from #t
drop table #t

第一步:打开数据库 连接后  如图操作 右键选择属性

2 网络访问量
    分析网站日志以及流量统计,未发现访问量的明显变化,因为网站速度慢访问量甚至还有所下降。

先将数据库改为简单模式,再压缩数据库,最后恢复完全模式即可。这样数据库就回收了一部分空间,并清空了日志,只保留了必要的数据。

现象:
    自5月份以来系统,SW7速度突然变慢,前后台页面打开速度以及静态页面生成速度都极慢。静态页面打开速度影响不大

1 ALTER DATABASE [数据库名称]  SET RECOVERY SIMPLE -- 更改为简单模式
2 
3 DBCC SHRINKDATABASE([数据库名称])  --压缩数据库命令
4 
5 ALTER DATABASE [数据库名称] SET RECOVERY FULL  --恢复为完全模式

分析:
1 服务器安全
    经过仔细检查,服务器没有入侵迹象。也没有发现有效的攻击记录。

 

3 服务器负载
    SQLSERVER进程占用了2GB内存。IIS进程占用约800MB,CPU利用率波动较大。总体上看负载还可以,CPU波动大应该与SQLSERVER有很大关系

 

体会
1 分析问题还是钻了死胡同,只盯着几张主表看,没有注意其他表
2 这个问题应该早已有之,只不过症状不是很明显,所以也就得过且过了,最后小问题变成大问题
3 OBLOG应该在后台管理引用通告开关调节的地方注明一下,此选项打开可能会影响网站性能。

选择“内存”管理 

史林枫:sqlserver数据库中数据日志的压缩及sqlserver占用内存管理设置上海时时乐走势图官网。环境:
    服务器4核4GB内存,运行基于动易SW7的网站及基于OBLOG4的博客,数据库基于MSSQLSERVER2000。网站和博客大部分都做了静态化

今天在给一个客户维护网站的时候,发现运行了2年的程序,数据库中主表的数据已超过70万条,按理说这样的数据量根本不算多。数据库是Sqlserver2012版本,服务器是Windows Server 2008。

    不列不知道一列吓一跳,发现oblog_trackback这张表竟然有近250W条记录,这是何方神圣,立刻GOOGLE。原来这是OBLOG的引用通知记录表,同时在OBLOG的官方网上也有人反映此表数据量超大的问题(不过也就10来W,和我这个比起来还是差远了)影响性能,官方的解答很简单 1 在OBLOG管理后台关掉引用通告 2 清空此表。
     于是 truncate table oblog_trackback,然后进后台设置。再看网站速度明显快了很多,看来问题的症结找到了。

 

 

需要用以下命令:

调整最大内存,即可。这样就可以限制数据库占用的内存了。当然,这只是临时做法,真正优化数据库内存还有很多方法,如分库,分表,读写分离,程序优化,sql语句优化等。

使用sqlserver和IIS开发.net B/S程序时,数据量逐渐增多,用户也逐渐增多,那么服务器的稳定性就需要维护了。数据库如何占用更小内存,无用的日志如何瞬间清空?

在远程连接过程中,IIS和sqlserver总是打开一会儿自动闪退,打开任务管理器,发现IIS进程占用几百MB内存,数据库进程占用了将近600M内存。为了让服务器稳定运行IIS和sqlserver 我强制重启了服务器。

重启后,发现数据库和IIS都能正常打开使用了。数据库的日志文件已经有2个多GB,数据文件不到200MB。于是开始清空数据库日志:

上海时时乐走势图官网 2

另外,数据库占用的内存是可以调控的,这里说一下可视化界面的调控

关于IIS的内存占用过大,这里就只能优化程序了,某些算法的升级,请求次数的减少都可以帮助优化IIS所占用的内存。

 

本文由上海时时乐走势图发布于上海时时乐走势图官网,转载请注明出处:史林枫:sqlserver数据库中数据日志的压缩及sqls

您可能还会对下面的文章感兴趣: