⑴ Mysql如何查詢當前正在運行的SQL語句
processlist命令的輸出結果顯示了有哪些線程在運行,可以幫助識別出有問題的查詢語句,兩種方式使用這個命令
1.進入mysql/bin目錄下輸入mysqladmin processlist;
2.啟動mysql,輸入show processlist;
⑵ oracle如何查看後台正在運行著的sql語句
用以頃搏下的sql可以查詢出當前session中胡皮正在運行雀做祥的sql信息:x0dx0a SELECT S.MODULE, SQL_TEXT, SN.OSUSER, SN.MACHINE, S.EXECUTIONSx0dx0a FROM SYS.V_$SQL S, SYS.ALL_USERS U, V$SESSION SNx0dx0a WHERE S.PARSING_USER_ID = U.USER_IDx0dx0a AND UPPER(U.USERNAME) IN ('USERNAME')x0dx0a AND (UPPER(S.MODULE) = 'APP.EXE')x0dx0a AND SN.sql_hash_value = S.hash_valuex0dx0a AND SN.sql_address = S.addressx0dx0a ORDER BY S.LAST_LOAD_TIME
⑶ 如何查看mysql中執行sql語句
如果我的理解沒錯的話,你的意思是正在執行的sql語句吧,
命令:
mysql>show full processlist;
示例:
mysql>select sleep(20);
另一個session執行:
mysql>show full processlist;
--- 可以看到正在執行的語句 ---
| 183 | root | localhost | NULL | Query | 6 | User sleep | select sleep(20) |
⑷ 在MS SQL Server中怎麼查看正在執行的SQL
有二種方式來查看正在執行的SQL語句
使用SQL自帶的SQL Server Profiler,以可視化界面的方式來查看。
從開始=》所有程序=》Microsoft SQL Server 2008=》性能工具打開Profiler工具,也可以打開SQL Server Management Studio=》工具=》SQL Server Profiler。
然後選擇文件=》新建=》跟蹤打開一個連接窗口,選擇將要跟蹤的伺服器實例然後連接,並打開「跟蹤屬性」對話框,點運行即可看到正在執行的SQL語句。
使用SQL語句來查看正在運行的語句,如下
SELECT [Spid] = session_id ,
ecid ,
[Database] = DB_NAME(sp.dbid) ,
[User] = nt_username ,
[Status] = er.status ,
[Wait] = wait_type ,
[Indivial Query] = SUBSTRING(qt.text,
er.statement_start_offset / 2,
( CASE WHEN er.statement_end_offset = -1
THEN LEN(CONVERT(NVARCHAR(MAX), qt.text))
* 2
ELSE er.statement_end_offset
END - er.statement_start_offset )
/ 2) ,
[Parent Query] = qt.text ,
Program = program_name ,
hostname ,
nt_domain ,
start_time
FROM sys.dm_exec_requests er
INNER JOIN sys.sysprocesses sp ON er.session_id = sp.spid
CROSS APPLY sys.dm_exec_sql_text(er.sql_handle) AS qt
WHERE session_id > 50 -- Ignore system spids.
AND session_id NOT IN ( @@SPID ) -- Ignore this current statement.
ORDER BY 1 ,
2
⑸ 如何查看頁面上正在執行的sql語句的完整語句
請參照以下 sql 語句,本腳本適用sql 2005 及以上版本
SELECT[Spid]=session_id,
ecid,
[Database]=DB_NAME(sp.dbid),
[User]=nt_username,
[Status]=er.status,
[Wait]=wait_type,
[IndivialQuery]=SUBSTRING(qt.text,
er.statement_start_offset/2,
(CASEWHENer.statement_end_offset=-1
THENLEN(CONVERT(NVARCHAR(MAX),qt.text))
*2
ELSEer.statement_end_offset
END-er.statement_start_offset)
/2),
[ParentQuery]=qt.text,
Program=program_name,
hostname,
nt_domain,
start_time
FROMsys.dm_exec_requestser
INNERJOINsys.sysprocessesspONer.session_id=sp.spid
CROSSAPPLYsys.dm_exec_sql_text(er.sql_handle)ASqt
WHEREsession_id>50--Ignoresystemspids.
ANDsession_idNOTIN(@@SPID)
⑹ 如何查詢當前正在執行的sql語句
首先,你要以dba身份登陸資料庫。
第二,為某個用戶開啟sql跟蹤。那個用戶就是你要跟蹤的、正在執行sql語句的那個用戶。命令如下:
execute dbms_system.set_sql_trace_in_session(sid,serial#,true)
其中參數的意義是,sid-會話id,serial#-序列號,這兩個參數可以從v$session中得到。
第三,上面的命令執行成功之後資料庫就自動對該用戶所發出的所有sql語句進行跟蹤,並把結果寫在用戶跟蹤文件里。用戶跟蹤文件存放在資料庫伺服器上,路徑請參考init.ora文件中的ump參數值。文件名為ora_sid_xxxx.trc(for unix)或者oraxxxxx.trc(for NT),其中xxxx文件系統進程編號,這個編號可以從v$process和v$session兩個表通過關聯的方式查詢得到。
⑺ 怎麼查詢資料庫在執行哪個sql
可以使用SQL跟蹤功能,可以查詢到數據當前執行的內容