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

sql日誌文件大嗎

發布時間: 2023-06-27 18:40:21

sql Server 壓縮日誌及資料庫文件大小

請按步驟進行 未進行前面的步驟時 請不要做後面的步驟 以免損壞你的資料庫

一般不建議做第 兩步 第 步不安全 有可能損壞資料庫或丟失數據 第 步如果日誌達到上限 則以後的資料庫處理會失敗 在清理日誌後才能恢復

清空日誌

DUMP TRANSACTION 庫名 WITH NO_LOG

截斷事務日誌

BACKUP LOG 資料庫名 WITH NO_LOG

收縮資料庫文件(如果不壓縮 資料庫的文件不會減小

企業管理器 右鍵你要壓縮的資料庫 所有任務 收縮資料庫 收縮文件

選擇日誌文件 在收縮方式里選擇收縮至XXM 這里會給出一個允許收縮到的最小M數 直接輸入這個數 確定就可以了

選擇數據文件 在收縮方式里選擇收縮至XXM 這里會給出一個允許收縮到的最小M數 直接輸入這個數 確定就可以了

也可以用SQL語句來完成

收縮資料庫

DBCC SHRINKDATABASE(客戶資料)

收縮指定數據文件 是文件號 可以通過這個語句查詢到:

select * from sysfiles

DBCC SHRINKFILE( )

為了最大化的縮小日誌文件(如果是sql 這步只能在查詢分析器中進行)

a 分離資料庫:

企業管理器 伺服器 資料庫 右鍵 分離資料庫

b 在我的電腦中刪除LOG文件

c 附加資料庫:

企業管理器 伺服器 資料庫 右鍵 附加資料庫

此法將生成新的LOG 大小隻有 多K

或用代碼

下面的示例分離 pubs 然後將 pubs 中的一個文件附加到當前伺服器

a 分離

EXEC sp_detach_db @dbname = pubs

b 刪除日誌文件

c 再附加

EXEC sp_attach_single_file_db @dbname = pubs

@physname = c:/Program Files/Microsoft

SQL Server/MSSQL/Data/pubs mdf

為了以後能自動收縮 做如下設置

企業管理器 伺服器 右鍵資料庫 屬性 選項 選擇 自動收縮

SQL語句設置方式:

EXEC sp_dboption 資料庫名

autoshrink TRUE

如果想以後不讓它日誌增長得太大

企業管理器 伺服器 右鍵資料庫 屬性 事務日誌

將文件增長限制為xM(x是你允許的最大數據文件大小)

SQL語句的設置方式:

lishixin/Article/program/SQLServer/201311/22266

⑵ SQL2005資料庫日誌文件LOG太大怎麼辦

Sqlserver2005下,日誌文件太大,使其減小的方法。
在打開SQL Server Management Studio並正常聯接SQL伺服器後,運行下面的三行:
( 注意將dbName代換為你的資料庫名。)
backup log dbName with NO_LOG
backup log dbName with TRUNCATE_ONLY
DBCC SHRINKDATABASE(dbName)

注意,在SQL 2008之後的版本以上方法無效,需將資料庫設為簡單模式後再進行收縮。

此外,在SQL Server Management Studio中,以視窗方法操作也可以,操作步驟:
第一步:截斷資料庫日誌,運行代碼:
BACKUP LOG 要收縮的資料庫名 WITH NO_LOG
第二步:收縮資料庫日誌文件:
1. 選擇要收縮的資料庫,點右鍵選擇任務-收縮-文件

2. 在彈出的頁面中,選擇文件類型為日誌

3.點確定。

⑶ SQL Server 2000資料庫的事務日誌文件過大,如何將其縮小

守得雲開見月明,花了一個上午結合前輩的博客,終於弄好了sqlserver2008的資料庫日誌收縮到1MB,分享給大家

# 方法步驟

1、執帶裂段行SQL語句改成「簡單模式」

2、收縮資料庫

3、執行SQL語句改回「完全模式」

## 第一步:執行SQL語句改成「簡單模式」


USE [master]
GO
ALTER DATABASE SlowXWebDB (改成你需要進行收縮的資料庫名) SET RECOVERY SIMPLE WITH NO_WAIT
GO
ALTER DATABASE SlowXWebDB (改成你需要進行收縮的資料庫名) SET RECOVERY SIMPLE --改成簡單模式
GO

## 第二步:進行資料庫操作
相關界面截圖和操作
假定:
資料庫名:SlowXWebDB
日誌文件名:SlowXWebDB_Log

## 第三步:執行SQL語句改成「完全模式」

USE [master]
GO
ALTER DATABASE SlowXWebDB (改成你需要進行收縮的資料庫名)SET RECOVERY FULL WITH NO_WAIT
GO
ALTER DATABASE datebaseName(改成你需要進行源高收縮的資料庫名)SET RECOVERY FULL --還原為完全模式
GO
==最後不要忘記實測下資料庫是否能夠正常使用==

網頁鏈接


⑷ SQL SERVER 2000資料庫日誌文件過大如何解決

收縮資料庫
一般情況下,SQL資料庫的收縮並不能很大程度上減小資料庫大小,其主要作用是收縮日誌大小,應當定期進行此操作以免資料庫日誌過大
1、設置資料庫模式為簡單模式:打開SQL企業管理器,在控制台根目錄中依次點開Microsoft
SQL
Server-->SQL
Server組-->雙擊打開你的伺服器-->雙擊打開資料庫目錄-->選擇你的資料庫名稱(如論壇資料庫Forum)-->然後點擊右鍵選擇屬性-->選擇選項-->在故障還原的模式中選擇「簡單」,然後按確定保存
2、在當前資料庫上點右鍵,看所有任務中的收縮資料庫,一般裡面的默認設置不用調整,直接點確定
3、收縮資料庫完成後,建議將您的資料庫屬性重新設置為標准模式,操作方法同第一點,因為日誌在一些異常情況下往往是恢復資料庫的重要依據

⑸ sql server 資料庫日誌過大會影響運行速度嗎

sql server資料庫日誌文件過大不會影響運行速度,但是會導致數據無法寫入。
SQL Server資料庫中,當日誌文件過大或者日誌已滿時就會影響到資料庫的正常工作。而日誌文件已滿常常會造成SQL Server資料庫無法寫入的問題。
解決方法:
1、右鍵資料庫→屬性→選項→故障還原模型→設為簡單→確定;
2、右鍵資料庫→所有任務→收縮資料庫→確定;
3、右鍵資料庫→屬性→選項→故障還原模型→設為大容量日誌記錄→確定。

⑹ SQL資料庫文件的最大容量是多少(資料庫的最大容量受什麼限制)

技術規格

--------------系統技術規格---------------

--每個伺服器最多可以允許16個SQLSERVER實例

--每個實例可擁有2147483467個鎖

--------------資料庫技術規格--------------

--SQLSERVER的資料庫大小1048516TB

--每個資料庫可擁有的文件組數32767

--每個資料庫可擁有的文件組數256

--文件大小(數據文件)32TB---

--文件大小(日誌文件)32TB---

--資料庫中的對象數2147483647

--標識符的長度128

--------------表技術規格-------------------

--每個資料庫中可擁有的表數受限於資料庫中的對象數

--每個表可擁有的行數受限於可用的存儲容量

--每個表的主鍵約束數1

--每個表的外鍵約束數253

--每個表的引用數253

--每個表的觸發器數受限於資料庫中的對象數

--每個表的簇索引數1

--每個表的非簇索引數249

--每個表的唯一約束249非簇的,1成簇的

--------------列技術規格-------------------

--每個索引可包含的列數16

--每個主鍵可包含的列數16

--每個外鍵可包含的列數16

--每個表的列數1024

--索引鍵的大小900位元組喊型培

--每個character或binary列的位元組數8000

--每個text,ntext或image列的位元組數2GB-2

--每行的位元組數8060

--每個索引的字租櫻節數900

--每個主鍵的位元組數900

--每個外鍵的位元組數900

--------------SQL技術規格-------------------

--批處理大小65536乘以網路包大小

--每個SELECT語句可鄭唯處理的表數256

--存儲過程源文件的位元組數小於批處理大小或250MB

--每個存儲過程的參數數目1024

--嵌套的子查詢數32

--嵌套的觸發器層數32

--每個SELECT語句可處理的列數4096

--每個INSERT語句可處理的列數1024

⑺ sql server 資料庫日誌文件過大是什麼原因

您好:
通常是INSERT,UPDATE,DELETE語句使用過多導致。
請定期備份日誌,清理日誌。
確保資料庫的日誌文件大小在一個穩定的范圍里。

⑻ sql日誌文件太大會影響性能嗎

你的資料庫的數據量大嗎?如果大,肯定的。 你的數據操作很頻繁嗎?如果頻繁,一定的。 如果這兩項都不符合,那沒有道理。