午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁技術文章
文章詳情頁

怎么清除sql server日志

瀏覽:244日期:2023-10-29 13:32:26

方法1:第一步:backup log database_name with no_log 或者 backup log database_name with truncate_only --no_log和truncate_only是在這里是同義的,隨便執行哪一句都可以第二步:1.收縮特定數據庫的所有數據和日志文件,執行 dbcc shrinkdatabase (database_name,[,target_percent])--database_name是要收縮的數據庫名稱;target_percent是數據庫收縮后的數據庫文件中所要的剩余可用空間百分比2.收縮一次一個特定數據庫中的數據或日志文件,執行 dbcc shrinkfile(file_id,[,target_size]) --file_id是要收縮的文件的標識 (ID) 號,若要獲得文件 ID,請使用 FILE_ID 函數或在當前數據庫中搜索 sysfiles;target_size是用兆字節表示的所要的文件大小(用整數表示)。如果沒有指定,dbcc shrinkfile 將文件大小減少到默認文件大小

兩個dbcc都可以帶上參數notruncate或truncateonly,具體意思看幫助。

方法2(這個方法在sqlserver2000的環境下做一般能成功,在sqlserver7及以下版本就不一定了): 第一步: 先備份整個數據庫以備不測第二步: 備份結束后,在Query Analyzer中執行如下的語句: exec sp_detach_db yourDBName,true --卸除這個DB在MSSQL中的注冊信息 第三步: 到日志的物理文件所在的目錄中去刪除該日志文件或者將該日志文件移出該目錄 第四步: 在Query Analyzer中執行如下的語句: exec sp_attach_single_file_db yourDBName,'d:mssql7datayourDBName_data.mdf' --以單文件的方式注冊該DB,如果成功則MSSQL將自動為這個DB生成一個500K的日志文件。

以上方法在清除log日志中均有效。但,能否讓sql server 不產生log日志呢?以上方法好像均無效。 我這兒正好有個case:我客戶的sql server每天都會產生4,500M的log日志,每天都清除一下,非常不便。有沒有辦法實現不產生log日志呢?

我分析了一下客戶產生log日志的原因,并且做了相應測試。客戶是每天將數據庫清空,從總系統中將數據導入到sql server里。我感決sqlserver在插入時產生log不大,在delete整個庫時產生log極大。比如:SELECT * into test_2 from b_bgxx共45000條記錄,產生十幾M log,如果delete from test_2產生80多M log ,這明顯存在問題。

雖然可以換成:truncate table test_2但我還是希望能找到不產生log的方法。就如oracle不產生歸檔一樣。

標簽: Sql Server 數據庫
主站蜘蛛池模板: 91色中文 | 亚洲欧美在线看 | 国产一级二级三级在线观看 | 欧美黄色一级生活片 | 一区二区黄色 | 日本大尺度吃奶做爰久久久绯色 | 老牛影视av一区二区在线观看 | 国产福利免费观看 | 欧美视频一二区 | 中文字幕1| 在线视频午夜 | 国产xxx在线观看 | 婷婷色吧 | 欧美综合视频在线 | 久久久夜色精品亚洲 | 国产哺乳奶水91在线播放 | 国产第8页| 日韩三区| 一级二级三级在线观看 | 麻豆蜜桃视频 | av大片在线观看 | 精品亚洲一区二区三区 | 国产欲妇| 色婷婷a| 国产日韩精品视频 | 精品久久久视频 | 日韩影视一区 | 免费黄色在线视频 | 黄色大片视频网站 | 欧美一级黑人 | 午夜三级视频 | 什么网站可以看毛片 | 亚洲人成在线观看 | 天堂福利在线 | wwwxx国产| 国产喷潮| 色av导航 | 在线激情网 | 午夜网址| 亚洲第一福利视频 | 91最新网址 |