Sybase ASE 15.7が作成時にデータベースのsysquerymetricsビューを作成しないようにすることはできますか?また、ビューが削除された場合、後でどのように追加できますか?
QPメトリックは、それぞれのデータベースのデフォルトグループ1で常にキャプチャされ、sysquerymetrics
ビューを使用してメトリック情報にアクセスできます。
だから私はあなたに提案します
sp_metrics 'backup'
を使用して、デフォルトの実行グループからバックアップグループにメトリックをバックアップしますsp_metrics 'drop', '@gid'
を使用してメトリックをdrop
します。したがって、デフォルトのグループ1からすべてのメトリックを削除するには、sp_metrics 'drop', '1'
を実行する必要があります。
補足として、以下のSQLを使用してビューを再作成できます
CREATE VIEW sysquerymetrics (
uid
,gid
,hashkey
,id
,sequence
,exec_min
,exec_max
,exec_avg
,elap_min
,elap_max
,elap_avg
,lio_min
,lio_max
,lio_avg
,pio_min
,pio_max
,pio_avg
,cnt
,abort_cnt
,qtext
)
AS
SELECT a.uid
,- a.gid
,a.hashkey
,a.id
,a.sequence
,convert(INT, substring(b.TEXT, charindex('e1', b.TEXT) + 3, charindex('e2', b.TEXT) - charindex('e1', b.TEXT) - 4))
,convert(INT, substring(b.TEXT, charindex('e2', b.TEXT) + 3, charindex('e3', b.TEXT) - charindex('e2', b.TEXT) - 4))
,convert(INT, substring(b.TEXT, charindex('e3', b.TEXT) + 3, charindex('t1', b.TEXT) - charindex('e3', b.TEXT) - 4))
,convert(INT, substring(b.TEXT, charindex('t1', b.TEXT) + 3, charindex('t2', b.TEXT) - charindex('t1', b.TEXT) - 4))
,convert(INT, substring(b.TEXT, charindex('t2', b.TEXT) + 3, charindex('t3', b.TEXT) - charindex('t2', b.TEXT) - 4))
,convert(INT, substring(b.TEXT, charindex('t3', b.TEXT) + 3, charindex('l1', b.TEXT) - charindex('t3', b.TEXT) - 4))
,convert(INT, substring(b.TEXT, charindex('l1', b.TEXT) + 3, charindex('l2', b.TEXT) - charindex('l1', b.TEXT) - 4))
,convert(INT, substring(b.TEXT, charindex('l2', b.TEXT) + 3, charindex('l3', b.TEXT) - charindex('l2', b.TEXT) - 4))
,convert(INT, substring(b.TEXT, charindex('l3', b.TEXT) + 3, charindex('p1', b.TEXT) - charindex('l3', b.TEXT) - 4))
,convert(INT, substring(b.TEXT, charindex('p1', b.TEXT) + 3, charindex('p2', b.TEXT) - charindex('p1', b.TEXT) - 4))
,convert(INT, substring(b.TEXT, charindex('p2', b.TEXT) + 3, charindex('p3', b.TEXT) - charindex('p2', b.TEXT) - 4))
,convert(INT, substring(b.TEXT, charindex('p3', b.TEXT) + 3, charindex('c', b.TEXT) - charindex('p3', b.TEXT) - 4))
,convert(INT, substring(b.TEXT, charindex('c', b.TEXT) + 2, charindex('ac', b.TEXT) - charindex('c', b.TEXT) - 3))
,convert(INT, substring(b.TEXT, charindex('ac', b.TEXT) + 3, char_length(b.TEXT) - charindex('ac', b.TEXT) - 2))
,a.TEXT
FROM sysqueryplans a
,sysqueryplans b
WHERE (a.type = 10)
AND (b.type = 1000)
AND (a.id = b.id)
AND a.uid = b.uid
AND a.gid = b.gid
作成されないようにします。そうは思いません。システムテーブルを使用するため、できたとしても、それらのテーブルを必要とする可能性のある他のプロセスに影響を与える可能性があります。必要に応じてドロップできます。
再作成するには、installmasterスクリプトを確認してください。そのビューの定義がそこにあるはずです。