使用 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_table_fragmentation( 'Employees' ); |
如果 segs_per_row 列中的值(每行的分段数)大于 1.1,则存在表碎片。等级较高的碎片可能会对性能造成负面影响。
在 Interactive SQL 中,执行以下 REORGANIZE TABLE 语句来减少表碎片:
REORGANIZE TABLE Employees; |
关闭 Interactive SQL。
![]() |
使用DocCommentXchange讨论此页。
|
版权 © 2013, SAP 股份公司或其关联公司. - SAP Sybase SQL Anywhere 16.0 |