使用 Interactive SQL 找出并修正索引碎片。应定期对生产数据库进行碎片检查。
前提条件
本课假定您拥有在本教程开头的特权部分中列出的角色和特权: 教程:诊断索引碎片。
本教程假定已创建测试数据库 app_profiling.db。请参见教程:为应用程序分析教程创建测试数据库。
确保与 app_profiling.db 之间再无其它连接。
启动 Interactive SQL。单击 [开始] » [程序] » [SQL Anywhere 16] » [管理工具] » [Interactive SQL]。
在 [连接] 窗口中,完成以下字段以连接到测试数据库 app_profiling.db。
在 [用户 ID] 字段中键入 DBA。
在 [口令] 字段中键入 sql。
在 [操作] 下拉列表中,选择 [启动并连接到此计算机上的数据库]。
在 [数据库文件] 字段中,键入 C:\AppProfilingTutorial\app_profiling.db。
在 [启动行] 字段中键入 dbeng16 -x tcpip。
单击 [连接]。
在 Interactive SQL 中,执行以下 SQL 语句来测试 Employees 表的索引密度:
CALL sa_index_density( 'Employees' ); |
密度值范围介于 0 和 1 之间。该值越接近 1,说明索引碎片越小。该值小于 0.5 则表示索引碎片级别可能会影响性能。
由于结果 [密度] 列中的值恰好小于 0.5,所以出现 Employees 表的索引值以显示碎片问题。但由于该表非常小,所以这些数值较低只是表面现象。
在 Interactive SQL 中,执行以下 ALTER INDEX...REBUILD 语句来提高索引的密度:
ALTER INDEX PRIMARY KEY ON Employees REBUILD; |
关闭 Interactive SQL。
![]() |
使用DocCommentXchange讨论此页。
|
版权 © 2013, SAP 股份公司或其关联公司. - SAP Sybase SQL Anywhere 16.0 |