當前位置:首頁 » 編程語言 » 日誌查看sql語句
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

日誌查看sql語句

發布時間: 2022-06-16 20:41:48

『壹』 如何查看sqlserver日誌的方法

定期分析sqlserver日誌是DBA很重要的任務,那如何才能查看sqlserver日誌呢?
在SQL Server 7.0和SQL Server2000中,可以用下面的命令查看:
DBCC log ( {dbid|dbname}, [, type={0|1|2|3|4}] )
參數:
Dbid or dbname - 任一資料庫的ID或名字
type - 輸出結果的類型:
0 - 最少信息(operation, context, transaction id)
1 - 更多信息(plus flags, tags, row length)
2 - 非常詳細的信息(plus object name, index name,page id, slot id)
3 - 每種操作的全部信息
4 - 每種操作的全部信息加上該事務的16進制信息
默認 type = 0
要查看MSATER資料庫的事務日誌可以用以下命令:
DBCC log (master)
釋放日誌空間
1.清空日誌
DUMP TRANSACTION 庫名 WITH NO_LOG
2.截斷事務日誌:
BACKUP LOG 資料庫名 WITH NO_LOG
3.收縮資料庫文件(如果不壓縮,資料庫的文件不會減小
企業管理器--右鍵你要壓縮的資料庫--所有任務--收縮資料庫--收縮文件
--選擇日誌文件--在收縮方式里選擇收縮至XXM,這里會給出一個允許收縮到的最小M數,直接輸入這個數,確定就可以了
--選擇數據文件--在收縮方式里選擇收縮至XXM,這里會給出一個允許收縮到的最小M數,直接輸入這個數,確定就可以了
也可以用SQL語句來完成
--收縮資料庫
DBCC SHRINKDATABASE(客戶資料)
--收縮指定數據文件,1是文件號,可以通過這個語句查詢到:select * from sysfiles
DBCC SHRINKFILE(1)
4.為了最大化的縮小日誌文件(如果是sql 7.0,這步只能在查詢分析器中進行)
a.分離資料庫:
企業管理器--伺服器--資料庫--右鍵--分離資料庫
b.在我的電腦中刪除LOG文件
c.附加資料庫:
企業管理器--伺服器--資料庫--右鍵--附加資料庫
此法將生成新的LOG,大小隻有500多K
或用代碼:
下面的示例分離 pubs,然後將 pubs 中的一個文件附加到當前伺服器。
a.分離
E X E C sp_detach_db @dbname = 'pubs'
b.刪除日誌文件
c.再附加
E X E C sp_attach_single_file_db @dbname = 'pubs',
@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf'
5.為了以後能自動收縮,做如下設置:
企業管理器--伺服器--右鍵資料庫--屬性--選項--選擇"自動收縮"
--SQL語句設置方式:
E X E C sp_dboption '資料庫名', 'autoshrink', 'TRUE'
6.如果想以後不讓它日誌增長得太大
企業管理器--伺服器--右鍵資料庫--屬性--事務日誌
--將文件增長限制為xM(x是你允許的最大數據文件大小)
--SQL語句的設置方式:
alter database 資料庫名 modify file(name=邏輯文件名,maxsize=20)
特別注意:
請按步驟進行,未進行前面的步驟,請不要做後面的步驟
否則可能損壞你的資料庫.
一般不建議做第4,6兩步
第4步不安全,有可能損壞資料庫或丟失數據
第6步如果日誌達到上限,則以後的資料庫處理會失敗,在清理日誌後才能恢復.

另外提供一種更簡單的方法,建議大家使用。
更簡單的方法:
1。右建資料庫屬性窗口--故障還原模型--設為簡單
2。右建資料庫所有任務--收縮資料庫
3。右建資料庫屬性窗口--故障還原模型--設為大容量日誌記錄

『貳』 oracle里怎麼對sql查詢的日誌進行查看

oracle里對sql查詢的日誌進行查看步驟如下:

1、Oracle日誌的路徑的查看。

『叄』 如何查看mysql資料庫操作記錄日誌

有時候我們會不小心對一個大表進行了 update,比如說寫錯了 where 條件......

此時,如果 kill 掉 update 線程,那回滾 undo log 需要不少時間。如果放置不管,也不知道 update 會持續多久。

那我們能知道 update 的進度么?



實驗

我們先創建一個測試資料庫:

那我們怎麼准確的這個倍數呢?

一種方法是靠經驗:update 語句的 where 中會掃描多少行,是否修改主鍵,是否修改唯一鍵,以這些條件來估算系數。

另一種方法就是在同樣結構的較小的表上試驗一下,獲取倍數。

這樣,我們就能准確估算一個大型 update 的進度了。

『肆』 如何通過sql日誌,查看以前執行過的sql語句

--關鍵字:cross apply & outer apply
SELECT TOP 1000
--創建時間
QS.creation_time,
--查詢語句
SUBSTRING(ST.text,(QS.statement_start_offset/2)+1,
((CASE QS.statement_end_offset WHEN -1 THEN DATALENGTH(st.text)
ELSE QS.statement_end_offset END - QS.statement_start_offset)/2) + 1
) AS statement_text,
--執行文本
ST.text,
--執行計劃
QS.total_worker_time,
QS.last_worker_time,
QS.max_worker_time,
QS.min_worker_time
FROM
sys.dm_exec_query_stats QS
--關鍵字
CROSS APPLY
sys.dm_exec_sql_text(QS.sql_handle) ST
WHERE
--根據時間搜索
QS.creation_time BETWEEN '2011-10-20 16:00:00' AND '2011-10-20 17:00:00'
--根據語句內容搜索
AND ST.text LIKE '%%'
ORDER BY
QS.creation_time DESC

『伍』 sql server日誌查看操作的是哪列

查看sql資料庫操作日誌的方法步驟:1、用windows身份驗證登陸資料庫,點擊【連接】2、展開資料庫伺服器下面的【管理】【SQL Server日誌】3、雙擊【當前】可以打開【日誌文件查看器】裡面有所有的運行日誌
SQL是高級的非過程化編輯語言,允許用戶在高層數據結構上工作。它不要求用戶指定對數據的存放方法,也不需要用戶了解具體的數據存放方式,所以具有完全不同底層結構的不同資料庫系統可以使用相同的sql語言作為數據輸入與管理的介面。

『陸』 怎樣使用SQL語句查詢SQLSERVER系統日誌

您好,很高興為您解答。

1)用系統函數
SELECT allocunitname,operation,[RowLog Contents 0] as r0,[RowLog Contents 1] as r1FROM::Fn_dblog(null,null)where allocunitname like'dbo.TArea%'and operation in('LOP_INSERT_ROWS','LOP_DELETE_ROWS')

2)用DBCC
DBCC log('hrdb', TYPE=2)

dbcc log(dbname,4) --(n=0,1,2,3,4)
1 - 更多信息plus flags, tags, row length
2 - 非常詳細的信息plus object name, index name,page id, slot id
3 - 每種操作的全部信息
4 - 每種操作的全部信息加上該事務的16進制信息
默認 type = 0

如若滿意,請點擊右側【採納答案】,如若還有問題,請點擊【追問】

希望我的回答對您有所幫助,望採納!

~ O(∩_∩)O~

『柒』 如何查看sql資料庫操作日誌

請參照以下步驟查看sql資料庫操作日誌。

1、首先在電腦上打開sql server軟體,進入軟體載入界面。

『捌』 怎麼利用sql server日誌查看執行的語句

怎麼利用sql server日誌查看執行的語句
--1.第一種測試方法
declare @begin datetime,@end datetime
set @begin =getdate()
{你所要測試的sql語句}

set @end=getdate()
PRINT DATEDIFF(millisecond, @begin, @end)/1000.0 --單位:s

--2.另一種測試方法(將執行每個語句時採取的步驟作為行集返回,通過層次結構樹的形式展示出來)

SET STATISTICS PROFILE ON:顯示分析、編譯和執行查詢所需的時間(以毫秒為單位)。
SET STATISTICS IO ON:報告與語句內引用的每個表的掃描數、邏輯讀取數(在高速緩存訪問的頁數)和物理讀取數(訪問磁碟的次數)有關的信息。
SET STATISTICS TIME ON:顯示每個查詢執行後的結果集,代表查詢執行的配置文件。

SET STATISTICS profile on
SET STATISTICS io ON
SET STATISTICS time ON
go
---你要測試的sql語句
{你要測試的sql語句}
SET STATISTICS profile OFF
SET STATISTICS io OFF
SET STATISTICS time OFF

go

3.對SQL SERVER進行設置!!!!

{查詢-查詢選項-高級里,有個SET STATISTICS TIME勾上,然後執行SQL,看消息,就有執行時間了}

『玖』 怎樣使用sql語句查詢sqlserver系統日誌

您好,很高興為您解答。

1)用系統函數
SELECT allocunitname,operation,[RowLog Contents 0] as r0,[RowLog Contents 1] as r1FROM::Fn_dblog(null,null)where allocunitname like'dbo.TArea%'and operation in('LOP_INSERT_ROWS','LOP_DELETE_ROWS')

2)用DBCC
DBCC log('hrdb', TYPE=2)

dbcc log(dbname,4) --(n=0,1,2,3,4)
1 - 更多信息plus flags, tags, row length
2 - 非常詳細的信息plus object name, index name,page id, slot id
3 - 每種操作的全部信息
4 - 每種操作的全部信息加上該事務的16進制信息
默認 type = 0

如若滿意,請點擊右側【採納答案】,如若還有問題,請點擊【追問】

希望我的回答對您有所幫助,望採納!