用友软件数据库变慢导致查询单据打印账表等很卡的终极解决办法( 二 )


4、将分区函数绑定到分区架构上
SQL
CREATE PARTITION SCHEME [架构名]AS PARTITION [函数名]TO ([PRIMARY],[文件组名],[PRIMARY],[文件组名],[PRIMARY],[文件组名])
5、删除表的主键 , 必须删除 , 表担心,主键可以再建的
SQL
ALTER TABLE 数据表名称 DROP CONSTRAINT [主键]6、删除聚集索引,如果有的话,我还没找到命令,现在是手动删除的
7、开始做表分区
SQL
ALTER TABLE 数据表名称 add CONSTRAINT [主键] PRIMARY KEY CLUSTERED (主键字段名)ON [SHEME_rdrec](主键字段名)你看,这不是恢复了主键吗
不过还是得手动恢复原来的聚集索引,这个我再查查语句吧
特别提出:
数据库收缩并不能提高数据库的读取效率,正相反,它反而更慢了,蛋痛!原因,是收缩后数据库内部的数据存储发生位移,也就是索引变得更低效 。
这种情况下 , 必须再做一次索引重建,但我发现似乎只要收缩了以后,数据库都慢,重建索引也恢复不到原来的速度 , 一下想不明白道理,而且做的测试次数也有限 。
建议以后不要做收缩处理,没空间了买硬盘吧 。
最终建议:
微软的sqlserver系列产品一直在进化,我从7.0一直用到2008 , 对于习惯了sql2000的服务人员来讲,要更换并熟悉一种新的数据库确实是一个挑战 。这个字眼换一个吧,叫做好奇心 。是的,技术人员的最根本特性,就是要保持这种好奇心,那么无论何种旁人看来的枯燥都是我们新奇的玩具 。
sql2008有什么特点?就速度的提升而言,并没有太大的提高 , 但是它将我们在sql2005中必须要复杂语句处理的表分区,直接做成了向导模式,傻瓜型的,也就是说 , 谁都可以轻松的胜任一个数据库管理员的工作 。如果你不想记住那些复杂的语句,呃,那么来个sqlserver2008数据库吧 。

用友软件数据库变慢导致查询单据打印账表等很卡的终极解决办法

文章插图
用友软件打开明细账反应很慢有可能是系统的硬盘碎片太多,好久没有整理硬盘碎片了 。整理一下硬盘碎片看看速度是否有提升 。
另外 , 使用查询分析器连接数据库,是否连接速度也会很慢 。查看ufsystem中的UA_log这个表中的数据是否很多 。
还有可能是建立的帐套太多,导致数据过多 , 打开速度慢,这些都是有可能的,当然你可以删除一些不必要的程序或者数据 , 来达到提升速度的效果,但是这些都是治标不治本的方法,想要彻底解决还是需要专业的人员来做 , 找技术人员的时候需要找专业做用友软件的技术人员来操作,不然容易造成数据误删除,造成不必要的麻烦 , 可以找中兴通用友,具有多年的用友软件售后经验,在技术和经验方面足够 。
用友软件数据库变慢导致查询单据打印账表等很卡的终极解决办法

文章插图
用友政务U8 余额表查询缓慢1、服务器是否有这种情况?如果没有建议检查网络设备 , 另外服务器上不用的网卡通通禁用掉 。
2、跟踪(CTRL+F12开启)语句,然后到数据库后台查询,看是否一样缓慢 。
3、检查数据格式是否正常 , 建立一个标准的数据库检查数据字段类型 。