sch_sqlcap.sql 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649
  1. {**************************************************************************}
  2. {* *}
  3. {* Licensed Materials - Property of IBM and/or HCL *}
  4. {* *}
  5. {* IBM Informix Dynamic Server *}
  6. {* (c) Copyright IBM Corporation 2001, 2015. All rights reserved. *}
  7. {* (c) Copyright HCL Technologies Ltd. 2017. All Rights Reserved. *}
  8. {* *}
  9. {**************************************************************************}
  10. database sysadmin;
  11. DROP TABLE IF EXISTS mon_syssqltrace_info;
  12. CREATE RAW TABLE mon_syssqltrace_info (
  13. serial_id serial,
  14. ID integer,
  15. task_id integer,
  16. orig_sql_id int8,
  17. starttime integer);
  18. INSERT INTO mon_syssqltrace_info VALUES (0, 0, 0, -1, 0);
  19. DROP TABLE IF EXISTS mon_syssqltrace_hvar;
  20. CREATE RAW TABLE mon_syssqltrace_hvar(
  21. ID integer,
  22. task_id integer,
  23. cur_date date,
  24. sql_id int8,
  25. orig_sql_id int8,
  26. sql_address int8,
  27. sql_hvar_id int,
  28. sql_hvar_flags int,
  29. sql_hvar_typeid int,
  30. sql_hvar_xtypeid int,
  31. sql_hvar_ind int,
  32. sql_hvar_type varchar(128),
  33. sql_hvar_data lvarchar(8192));
  34. CREATE INDEX mon_syssqltrace_hvar_idx1 ON mon_syssqltrace_hvar(ID, task_id, orig_sql_id);
  35. CREATE INDEX mon_syssqltrace_hvar_idx2 ON mon_syssqltrace_hvar(cur_date);
  36. CREATE INDEX mon_syssqltrace_hvar_idx3 ON mon_syssqltrace_hvar(sql_id);
  37. DROP TABLE IF EXISTS mon_syssqltrace_iter;
  38. create raw table mon_syssqltrace_iter(
  39. ID integer,
  40. task_id integer,
  41. cur_date date,
  42. sql_id int8,
  43. orig_sql_id int8,
  44. sql_address int8,
  45. sql_itr_address int8,
  46. sql_itr_id int,
  47. sql_itr_left int,
  48. sql_itr_right int,
  49. sql_itr_cost int,
  50. sql_itr_estrows int,
  51. sql_itr_numrows int,
  52. sql_itr_type int,
  53. sql_itr_misc int,
  54. sql_itr_info char(256),
  55. sql_itr_time float,
  56. sql_itr_sender int default 0,
  57. sql_itr_nxtsender int default 0,
  58. sql_itr_partnum int);
  59. CREATE INDEX mon_syssqltrace_iter_idx1 on mon_syssqltrace_iter(ID, task_id, orig_sql_id);
  60. CREATE INDEX mon_syssqltrace_iter_idx2 on mon_syssqltrace_iter(cur_date);
  61. CREATE INDEX mon_syssqltrace_iter_idx3 on mon_syssqltrace_iter(sql_id);
  62. DROP TABLE IF EXISTS mon_syssqltrace;
  63. CREATE RAW TABLE mon_syssqltrace(
  64. ID integer,
  65. task_id integer,
  66. cur_date date,
  67. sql_id int8,
  68. orig_sql_id int8,
  69. sql_address int8,
  70. sql_sid int,
  71. sql_uid int,
  72. sql_stmttype int,
  73. sql_stmtname varchar(40),
  74. sql_finishtime int,
  75. sql_begintxtime int,
  76. sql_runtime float,
  77. sql_pgreads int,
  78. sql_bfreads int,
  79. sql_rdcache float,
  80. sql_bfidxreads int,
  81. sql_pgwrites int,
  82. sql_bfwrites int,
  83. sql_wrcache float,
  84. sql_lockreq int,
  85. sql_lockwaits int,
  86. sql_lockwttime float,
  87. sql_logspace int,
  88. sql_sorttotal int,
  89. sql_sortdisk int,
  90. sql_sortmem int,
  91. sql_executions int,
  92. sql_totaltime float,
  93. sql_avgtime float,
  94. sql_maxtime float,
  95. sql_numiowaits int,
  96. sql_avgiowaits float,
  97. sql_totaliowaits float,
  98. sql_rowspersec float,
  99. sql_estcost int,
  100. sql_estrows int,
  101. sql_actualrows int,
  102. sql_sqlerror int,
  103. sql_isamerror int,
  104. sql_isollevel int,
  105. sql_sqlmemory int,
  106. sql_numiterators int,
  107. sql_database varchar(128),
  108. sql_numtables int,
  109. sql_tablelist lvarchar(4096),
  110. sql_statement lvarchar(16000),
  111. sql_stmtlen int,
  112. sql_stmthash int8,
  113. sql_pdq smallint,
  114. sql_num_hvars smallint,
  115. sql_dbspartnum int);
  116. CREATE INDEX mon_syssqltrace_idx1 on mon_syssqltrace(ID, task_id, orig_sql_id);
  117. CREATE INDEX mon_syssqltrace_idx2 on mon_syssqltrace(sql_stmtlen,sql_stmttype);
  118. CREATE INDEX mon_syssqltrace_idx3 on mon_syssqltrace(cur_date);
  119. CREATE INDEX mon_syssqltrace_idx4 on mon_syssqltrace(sql_id);
  120. DROP FUNCTION IF EXISTS sql_showsnap(INTEGER,INTEGER);
  121. CREATE FUNCTION sql_showsnap(in_task_id INTEGER, in_seq_id INTEGER)
  122. RETURNING INTEGER
  123. DEFINE p_last_starttime INTEGER; -- starttime from mon_syssqltrace_info
  124. -- for the last task run
  125. DEFINE p_trace_starttime INTEGER; -- starttime from sysmaster:syssqltrace_info
  126. DEFINE p_last_sql_id INT8; -- biggest orig_sql_id from last task run
  127. DEFINE p_new_sql_id INT8; -- new max(orig_sql_id) from mon_syssqltrace
  128. -- for this task run
  129. DEFINE p_start_high4 INT8; -- high value of sql_id in mon_syssqltrace*
  130. -- tables
  131. DEFINE p_sql_itr_senders_exist INTEGER;
  132. DEFINE ins_mon_syssqltrace_iter CHAR(512);
  133. DEFINE sel_mon_syssqltrace_iter CHAR(512);
  134. DEFINE rem_mon_syssqltrace_iter CHAR(64);
  135. DEFINE p_host_vars INTEGER; -- Is SQLTRACE set to collect host vars ?
  136. DEFINE sqltrace_row_cnt INTEGER;
  137. DEFINE sqltrace_iter_row_cnt INTEGER;
  138. DEFINE sqltrace_hvar_row_cnt INTEGER;
  139. DEFINE delete_cnt INTEGER;
  140. ON EXCEPTION IN (-206) -- If no table was found, create one
  141. BEGIN
  142. ON EXCEPTION -- Continue trying each of these statements within the outer exception
  143. END EXCEPTION WITH RESUME;
  144. create raw table mon_syssqltrace_info
  145. (
  146. serial_id serial,
  147. ID integer,
  148. task_id integer,
  149. orig_sql_id int8,
  150. starttime integer
  151. );
  152. insert into mon_syssqltrace_info values (0, 0, 0, -1, 0);
  153. create raw table mon_syssqltrace_hvar
  154. (
  155. ID integer,
  156. task_id integer,
  157. cur_date date,
  158. sql_id int8,
  159. orig_sql_id int8,
  160. sql_address int8,
  161. sql_hvar_id int,
  162. sql_hvar_flags int,
  163. sql_hvar_typeid int,
  164. sql_hvar_xtypeid int,
  165. sql_hvar_ind int,
  166. sql_hvar_type varchar(128),
  167. sql_hvar_data lvarchar(8192)
  168. );
  169. create raw table mon_syssqltrace_iter
  170. (
  171. ID integer,
  172. task_id integer,
  173. cur_date date,
  174. sql_id int8,
  175. orig_sql_id int8,
  176. sql_address int8,
  177. sql_itr_address int8,
  178. sql_itr_id int,
  179. sql_itr_left int,
  180. sql_itr_right int,
  181. sql_itr_cost int,
  182. sql_itr_estrows int,
  183. sql_itr_numrows int,
  184. sql_itr_type int,
  185. sql_itr_misc int,
  186. sql_itr_info char(256),
  187. sql_itr_time float,
  188. sql_itr_sender int default 0,
  189. sql_itr_nxtsender int default 0,
  190. sql_itr_partnum int
  191. );
  192. create raw table mon_syssqltrace
  193. (
  194. ID integer,
  195. task_id integer,
  196. cur_date date,
  197. sql_id int8,
  198. orig_sql_id int8,
  199. sql_address int8,
  200. sql_sid int,
  201. sql_uid int,
  202. sql_stmttype int,
  203. sql_stmtname varchar(40),
  204. sql_finishtime int,
  205. sql_begintxtime int,
  206. sql_runtime float,
  207. sql_pgreads int,
  208. sql_bfreads int,
  209. sql_rdcache float,
  210. sql_bfidxreads int,
  211. sql_pgwrites int,
  212. sql_bfwrites int,
  213. sql_wrcache float,
  214. sql_lockreq int,
  215. sql_lockwaits int,
  216. sql_lockwttime float,
  217. sql_logspace int,
  218. sql_sorttotal int,
  219. sql_sortdisk int,
  220. sql_sortmem int,
  221. sql_executions int,
  222. sql_totaltime float,
  223. sql_avgtime float,
  224. sql_maxtime float,
  225. sql_numiowaits int,
  226. sql_avgiowaits float,
  227. sql_totaliowaits float,
  228. sql_rowspersec float,
  229. sql_estcost int,
  230. sql_estrows int,
  231. sql_actualrows int,
  232. sql_sqlerror int,
  233. sql_isamerror int,
  234. sql_isollevel int,
  235. sql_sqlmemory int,
  236. sql_numiterators int,
  237. sql_database varchar(128),
  238. sql_numtables int,
  239. sql_tablelist lvarchar(4096),
  240. sql_statement lvarchar(16000),
  241. -- sql_statement char(16000),
  242. sql_stmtlen int,
  243. sql_stmthash int8,
  244. sql_pdq smallint,
  245. sql_num_hvars smallint,
  246. sql_dbspartnum int
  247. );
  248. CREATE INDEX mon_syssqltrace_idx1 on
  249. mon_syssqltrace(ID, task_id, orig_sql_id);
  250. CREATE INDEX mon_syssqltrace_idx2 on
  251. mon_syssqltrace(sql_stmtlen,sql_stmttype);
  252. CREATE INDEX mon_syssqltrace_idx3 on mon_syssqltrace(cur_date);
  253. CREATE INDEX mon_syssqltrace_iter_idx1 on
  254. mon_syssqltrace_iter(ID, task_id, orig_sql_id);
  255. CREATE INDEX mon_syssqltrace_iter_idx2 on mon_syssqltrace_iter(cur_date);
  256. CREATE INDEX mon_syssqltrace_hvar_idx1 on
  257. mon_syssqltrace_hvar(ID, task_id, orig_sql_id);
  258. CREATE INDEX mon_syssqltrace_hvar_idx2 on mon_syssqltrace_hvar(cur_date);
  259. END
  260. END EXCEPTION WITH RESUME;
  261. --SET DEBUG FILE TO "/tmp/debug_sql_showsnap.log";
  262. --TRACE ON;
  263. SET ISOLATION TO DIRTY READ;
  264. LET p_last_starttime = 0;
  265. LET p_trace_starttime = 0;
  266. LET p_last_sql_id = -1;
  267. LET p_host_vars = 0;
  268. LET sqltrace_iter_row_cnt = 0;
  269. LET sqltrace_row_cnt = 0;
  270. LET sqltrace_hvar_row_cnt = 0;
  271. LET p_trace_starttime =
  272. (SELECT NVL(starttime,0) FROM sysmaster:syssqltrace_info);
  273. IF ( (p_trace_starttime is NULL) or (p_trace_starttime == 0) ) THEN
  274. INSERT into mon_syssqltrace_info
  275. values (0, in_seq_id, in_task_id, -1, p_trace_starttime);
  276. RETURN 0;
  277. END IF;
  278. LET p_host_vars =
  279. (SELECT bitand(flags,8192) FROM sysmaster:syssqltrace_info);
  280. LET p_last_sql_id = (SELECT NVL(orig_sql_id,-1) FROM mon_syssqltrace_info
  281. where serial_id =
  282. (select MAX(serial_id) from mon_syssqltrace_info));
  283. LET p_last_starttime = (SELECT NVL(starttime,0) FROM mon_syssqltrace_info
  284. where serial_id =
  285. (select MAX(serial_id) from mon_syssqltrace_info));
  286. IF (p_last_sql_id is NULL) THEN
  287. LET p_last_sql_id = -1;
  288. END IF;
  289. IF (p_last_starttime is NULL) THEN
  290. LET p_last_starttime = 0;
  291. END IF;
  292. IF (p_last_starttime != p_trace_starttime) THEN
  293. LET p_last_sql_id = -1 ;
  294. END IF;
  295. LET p_start_high4 = p_trace_starttime * 4294967296 ;
  296. INSERT INTO mon_syssqltrace
  297. (
  298. ID ,
  299. task_id ,
  300. cur_date ,
  301. sql_id ,
  302. orig_sql_id ,
  303. sql_address ,
  304. sql_sid ,
  305. sql_uid ,
  306. sql_stmttype ,
  307. sql_stmtname ,
  308. sql_finishtime ,
  309. sql_begintxtime ,
  310. sql_runtime ,
  311. sql_pgreads ,
  312. sql_bfreads ,
  313. sql_rdcache ,
  314. sql_bfidxreads ,
  315. sql_pgwrites ,
  316. sql_bfwrites ,
  317. sql_wrcache ,
  318. sql_lockreq ,
  319. sql_lockwaits ,
  320. sql_lockwttime ,
  321. sql_logspace ,
  322. sql_sorttotal ,
  323. sql_sortdisk ,
  324. sql_sortmem ,
  325. sql_executions ,
  326. sql_totaltime ,
  327. sql_avgtime ,
  328. sql_maxtime ,
  329. sql_numiowaits ,
  330. sql_avgiowaits ,
  331. sql_totaliowaits ,
  332. sql_rowspersec ,
  333. sql_estcost ,
  334. sql_estrows ,
  335. sql_actualrows ,
  336. sql_sqlerror ,
  337. sql_isamerror ,
  338. sql_isollevel ,
  339. sql_sqlmemory ,
  340. sql_numiterators ,
  341. sql_database ,
  342. sql_numtables ,
  343. sql_tablelist ,
  344. sql_statement ,
  345. sql_stmtlen ,
  346. sql_stmthash ,
  347. sql_pdq ,
  348. sql_num_hvars ,
  349. sql_dbspartnum
  350. )
  351. SELECT
  352. in_seq_id ,
  353. in_task_id ,
  354. today ,
  355. p_start_high4 + sql_id ,
  356. sql_id ,
  357. sql_address ,
  358. sql_sid ,
  359. sql_uid ,
  360. sql_stmttype ,
  361. sql_stmtname ,
  362. sql_finishtime ,
  363. sql_begintxtime ,
  364. sql_runtime ,
  365. sql_pgreads ,
  366. sql_bfreads ,
  367. sql_rdcache ,
  368. sql_bfidxreads ,
  369. sql_pgwrites ,
  370. sql_bfwrites ,
  371. sql_wrcache ,
  372. sql_lockreq ,
  373. sql_lockwaits ,
  374. sql_lockwttime ,
  375. sql_logspace ,
  376. sql_sorttotal ,
  377. sql_sortdisk ,
  378. sql_sortmem ,
  379. sql_executions ,
  380. sql_totaltime ,
  381. sql_avgtime ,
  382. sql_maxtime ,
  383. sql_numiowaits ,
  384. sql_avgiowaits ,
  385. sql_totaliowaits ,
  386. sql_rowspersec ,
  387. sql_estcost ,
  388. sql_estrows ,
  389. sql_actualrows ,
  390. sql_sqlerror ,
  391. sql_isamerror ,
  392. sql_isollevel ,
  393. sql_sqlmemory ,
  394. sql_numiterators ,
  395. sql_database ,
  396. sql_numtables ,
  397. TRIM(sql_tablelist) ,
  398. TRIM(sql_statement) ,
  399. sql_stmtlen ,
  400. sql_stmthash ,
  401. sql_pdq ,
  402. sql_num_hvars ,
  403. sql_dbspartnum
  404. FROM sysmaster:syssqltrace
  405. WHERE sql_id > p_last_sql_id;
  406. LET sqltrace_row_cnt = DBINFO('sqlca.sqlerrd2');
  407. LET ins_mon_syssqltrace_iter = "INSERT INTO mon_syssqltrace_iter" ||
  408. "(" ||
  409. "ID ," ||
  410. "task_id ," ||
  411. "cur_date ," ||
  412. "sql_id ," ||
  413. "orig_sql_id ," ||
  414. "sql_address ," ||
  415. "sql_itr_address ," ||
  416. "sql_itr_id ," ||
  417. "sql_itr_left ," ||
  418. "sql_itr_right ," ||
  419. "sql_itr_cost ," ||
  420. "sql_itr_estrows ," ||
  421. "sql_itr_numrows ," ||
  422. "sql_itr_type ," ||
  423. "sql_itr_misc ," ||
  424. "sql_itr_info ," ||
  425. "sql_itr_time ," ||
  426. "sql_itr_partnum ";
  427. LET sel_mon_syssqltrace_iter = "+ sql_id ," ||
  428. "sql_id ," ||
  429. "sql_address ," ||
  430. "sql_itr_address ," ||
  431. "sql_itr_id ," ||
  432. "sql_itr_left ," ||
  433. "sql_itr_right ," ||
  434. "sql_itr_cost ," ||
  435. "sql_itr_estrows ," ||
  436. "sql_itr_numrows ," ||
  437. "sql_itr_type ," ||
  438. "sql_itr_misc ," ||
  439. "sql_itr_info ," ||
  440. "sql_itr_time ," ||
  441. "sql_itr_partnum ";
  442. LET rem_mon_syssqltrace_iter = " FROM sysmaster:syssqltrace_iter" ||
  443. " WHERE sql_id > ";
  444. LET p_sql_itr_senders_exist = (SELECT COUNT(*) FROM sysmaster:syscolumns a, sysmaster:systables b
  445. WHERE a.tabid = b.tabid AND a.colname = 'sql_itr_sender' AND b.tabname = 'syssqltrace_iter');
  446. IF ( p_sql_itr_senders_exist > 0) THEN
  447. EXECUTE IMMEDIATE ins_mon_syssqltrace_iter ||
  448. ",sql_itr_sender ,sql_itr_nxtsender) " ||
  449. "SELECT " ||
  450. in_seq_id ||
  451. "," ||
  452. in_task_id ||
  453. "," ||
  454. today ||
  455. "," ||
  456. p_start_high4 ||
  457. sel_mon_syssqltrace_iter ||
  458. ",sql_itr_sender ,sql_itr_nxtsender " ||
  459. rem_mon_syssqltrace_iter ||
  460. p_last_sql_id ||
  461. ";";
  462. ELSE
  463. EXECUTE IMMEDIATE ins_mon_syssqltrace_iter ||
  464. ") " ||
  465. "SELECT " ||
  466. in_seq_id ||
  467. "," ||
  468. in_task_id ||
  469. "," ||
  470. today ||
  471. "," ||
  472. p_start_high4 ||
  473. sel_mon_syssqltrace_iter ||
  474. rem_mon_syssqltrace_iter ||
  475. p_last_sql_id ||
  476. ";";
  477. END IF; -- IF ( p_sql_itr_senders_exist > 0)
  478. LET sqltrace_iter_row_cnt = DBINFO('sqlca.sqlerrd2');
  479. IF ( p_host_vars > 0 ) THEN
  480. INSERT INTO mon_syssqltrace_hvar
  481. (
  482. ID ,
  483. task_id ,
  484. cur_date ,
  485. sql_id ,
  486. orig_sql_id ,
  487. sql_address ,
  488. sql_hvar_id ,
  489. sql_hvar_flags ,
  490. sql_hvar_typeid ,
  491. sql_hvar_xtypeid ,
  492. sql_hvar_ind ,
  493. sql_hvar_type ,
  494. sql_hvar_data
  495. )
  496. SELECT
  497. in_seq_id ,
  498. in_task_id ,
  499. today ,
  500. p_start_high4 + sql_id ,
  501. sql_id ,
  502. sql_address ,
  503. sql_hvar_id ,
  504. sql_hvar_flags ,
  505. sql_hvar_typeid ,
  506. sql_hvar_xtypeid ,
  507. sql_hvar_ind ,
  508. sql_hvar_type ,
  509. trim(sql_hvar_data)
  510. FROM sysmaster:syssqltrace_hvar
  511. WHERE sql_id > p_last_sql_id;
  512. LET sqltrace_hvar_row_cnt = DBINFO('sqlca.sqlerrd2');
  513. DELETE FROM mon_syssqltrace_hvar
  514. WHERE ID = in_seq_id AND
  515. task_id = in_task_id AND
  516. orig_sql_id > p_last_sql_id AND
  517. orig_sql_id NOT IN ( SELECT orig_sql_id FROM mon_syssqltrace
  518. where ID = in_seq_id AND task_id = in_task_id);
  519. LET delete_cnt = DBINFO('sqlca.sqlerrd2');
  520. END IF; -- IF ( p_host_vars > 0 ) THEN
  521. DELETE FROM mon_syssqltrace_iter
  522. WHERE ID = in_seq_id AND
  523. task_id = in_task_id AND
  524. orig_sql_id > p_last_sql_id AND
  525. orig_sql_id NOT IN ( SELECT orig_sql_id FROM mon_syssqltrace
  526. where ID = in_seq_id AND task_id = in_task_id);
  527. LET delete_cnt = DBINFO('sqlca.sqlerrd2');
  528. LET p_new_sql_id = -1;
  529. LET p_new_sql_id = (SELECT NVL(MAX(orig_sql_id),-1) from mon_syssqltrace
  530. where ID = in_seq_id AND task_id = in_task_id );
  531. IF ( (p_new_sql_id is NULL) or (p_new_sql_id == -1) )
  532. THEN
  533. INSERT into mon_syssqltrace_info
  534. values (0, in_seq_id, in_task_id, p_last_sql_id, p_trace_starttime);
  535. ELSE
  536. INSERT into mon_syssqltrace_info
  537. values (0, in_seq_id, in_task_id, p_new_sql_id, p_trace_starttime);
  538. END IF;
  539. RETURN sqltrace_row_cnt;
  540. END FUNCTION;
  541. DELETE FROM ph_task WHERE tk_name ='Save SQL Trace';
  542. INSERT INTO ph_task
  543. (
  544. tk_name,
  545. tk_type,
  546. tk_group,
  547. tk_description,
  548. tk_execute,
  549. tk_start_time,
  550. tk_stop_time,
  551. tk_frequency,
  552. tk_delete,
  553. tk_result_table,
  554. tk_attributes,
  555. tk_enable
  556. )
  557. VALUES
  558. (
  559. 'Save SQL Trace',
  560. 'SENSOR',
  561. 'PERFORMANCE',
  562. 'Saves the current syssqltrace info to table',
  563. 'sql_showsnap',
  564. DATETIME(06:00:00) HOUR TO SECOND,
  565. DATETIME(18:00:00) HOUR TO SECOND,
  566. INTERVAL ( 15 ) MINUTE TO MINUTE,
  567. INTERVAL ( 1 ) DAY TO DAY,
  568. 'mon_syssqltrace,mon_syssqltrace_iter,mon_syssqltrace_hvar,mon_syssqltrace_info',
  569. 1,
  570. 'f'
  571. );
  572. close database;