在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

您好,歡迎來(lái)電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>電子百科>主機(jī)配件>硬盤>

如何修復(fù)置疑SQL數(shù)據(jù)庫(kù)

2010年03月29日 10:42 m.xsypw.cn 作者:佚名 用戶評(píng)論(0

如何修復(fù)置疑SQL數(shù)據(jù)庫(kù)


如果 SQL Server 因?yàn)榇疟P可用空間不足,而不能完成數(shù)據(jù)庫(kù)的恢復(fù),那么? SQL Server 2000 會(huì)返回錯(cuò)誤 1105 并且將 sysdatabases 中的 status 列設(shè)為置疑。
憧梢鑰吹皆赟QLSERVER 的ERROR LOG 和OS的應(yīng)用程序日志中應(yīng)該有1105的錯(cuò)誤信息:

SQL Server事務(wù)日志可能會(huì)被填滿,這會(huì)阻止之后的數(shù)據(jù)庫(kù)操作,包括UPDATE, DELETE, INSERT 和CHECKPOINT。
事務(wù)日志填滿會(huì)導(dǎo)致1105錯(cuò)誤:
??? Can't allocate space for object syslogs in database dbname because
??? the logsegment is full。 If you ran out of space in syslogs, dump
??? the transaction log。 Otherwise use ALTER DATABASE or
??? sp_extendsegment to increase the size of the segment。

這種現(xiàn)象可能出現(xiàn)于任何一個(gè)數(shù)據(jù)庫(kù)中,包括Master和TempDB。一些難以預(yù)見(jiàn)的因素可能消耗日志空間。 例如:
一個(gè)大型事務(wù), 尤其像批量數(shù)據(jù)更新、插入或刪除。
一個(gè)未提交的事務(wù)。
檢查點(diǎn)處理程序截除時(shí)所需的帶寬過(guò)大。
截除時(shí)超過(guò)閾值
上述各種條件互相作用的結(jié)果。
用于發(fā)布的標(biāo)記事務(wù)沒(méi)有被日志讀取程序讀走

下面是修復(fù)的步驟和收縮日志的步驟:

?1.在命令提示符下運(yùn)行以下命令啟動(dòng) SQL Server:
SQLSERVER -f -m

?????? 備注:-m 開關(guān)以單用戶模式啟動(dòng) SQL Server。在單用戶模式下,只能成功建立一個(gè)連接。 請(qǐng)注意是否有任何其他客戶機(jī)或服務(wù)可能會(huì)在您通過(guò) SQL Server 查詢分析器??? 建立連接前使用那個(gè)連接。

?? 2. 重置置疑數(shù)據(jù)庫(kù)的狀態(tài)。
?sp_resetstatus 'database_name'

下面是結(jié)果集:

?Database'database_name'status reset!
?WARNING: You must reboot SQL Server prior to accessing this database!

3. 用 ALTER DATABASE 向數(shù)據(jù)庫(kù)添加一個(gè)數(shù)據(jù)文件或日志文件:

?USE master
?GO
?CREATE DATABASE db_name ON
?(
? NAME = dbname_dat1,
? FILENAME = 'D:\MSSQL\Data\dbname_dat1.ndf',
? SIZE = 1000MB,
? FILEGROWTH = 50MB
?)
?GO
?--更改該數(shù)據(jù)庫(kù)以添加一個(gè) 2GB 大小的新數(shù)據(jù)文件
?ALTER DATABASE db_name
?ADD FILE
?(
? NAME = dbname_dat2,
? FILENAME = 'F:\MSSQL\DATA\dbname_dat2.ndf',
? SIZE = 2000MB,
? FILEGROWTH = 50MB
?)
?GO
?--更改該數(shù)據(jù)庫(kù)以添加一個(gè)1GB 大小的新日志文件
?ALTER DATABASE db_name
?ADD LOG FILE
?( NAME = db_name_log2,
?? FILENAME = 'F:\MSSQL\Data\db_name_log2.ldf',
?? SIZE = 1000MB,
?? FILEGROWTH = 20MB),
?GO

?? 4. 停止并重新啟動(dòng) SQL Server:
?? 用新的數(shù)據(jù)文件或日志文件所提供的額外空間,SQL Server 應(yīng)該能完成數(shù)據(jù)庫(kù)的恢復(fù)。

??? 5. 釋放磁盤空間并且重新運(yùn)行恢復(fù)操作,按照下面的步驟收縮日志。
?sp_resetstatus 關(guān)閉數(shù)據(jù)庫(kù)的置疑標(biāo)志,但是原封不動(dòng)地保持?jǐn)?shù)據(jù)庫(kù)的其它選項(xiàng)。


為從根本上解決這樣的問(wèn)題,你可以按下面的操作配置SQLSERVER 2000:
a.如果不需要恢復(fù)到指定的時(shí)間點(diǎn),你可以將數(shù)據(jù)庫(kù)的恢復(fù)模式配置為簡(jiǎn)單,這樣
UPDATE,DELETE,SELECT就不會(huì)記錄日志,日志就不會(huì)增加的很大:

???? USE MASTER

??? GO
???? ALTER DATABASE DB_NAME SET RECOVERY SIMPLE
b.如果你的恢復(fù)模式是全部,你一定要配置日志字段收縮:

??? USE MASTER

??? GO
??? sp_dboption 'databasename','trunc. log on chkpt.',true
??? sp_dboption 'databasename','autoshrink',true
c.通過(guò)每日備份將日志收縮:
?? BACKUP DATABASE DATABASE_NAME TO BACKUP_DEVICES
?? BACKUP LOG DATABASE_NAME TO LOG_DEVICES
?? OR
?? BACKUP LOG DATABASE_NAME with truncate_only

?? **檢查日志的容量:DBCC SQLPERF (LOGSPACE) 這時(shí)日志并沒(méi)有收縮!

d.每天在備份數(shù)據(jù)庫(kù)完成之后,重新啟動(dòng)MS SQLSERVER SERVICE.
???? USE DATABASE_NAME
???? go
???? DBCC? SHRINKFILE(2,truncateonly)

? **檢查日志的容量:DBCC SQLPERF (LOGSPACE) 這時(shí)日志已經(jīng)收縮!

e.手動(dòng)快速收縮日志:
? / *run? below? script,you? will? shrink? you? database? log? files
immediately,? in? my? experience,you? need? to? run? the? script? for? 3? or
4? minutes? before stopping? it? manually? */
use? databasename
dbcc? shrinkfile(2,notruncate)
dbcc? shrinkfile(2,truncateonly)
create? table? t1(char1? char(4000))
go
declare? @i? int
select? @i=0
while(1=1)
begin
???? while(@i<100)
???????????? begin
?????????? INSERT? INTO? T1? VALUES? ('A')
?????????? SELECT? @I=@I+1
?????????? END
TRUNCATE? table? T1
BACKUP? LOG? youdatabasename? with? truncate_only
end
GO

?注意? 只有在您的主要支持提供者指導(dǎo)下或有疑難解答建議的做法時(shí),才可以使用
?sp_resetstatus。否則,可能會(huì)損壞數(shù)據(jù)庫(kù)。

?由于該過(guò)程修改了系統(tǒng)表,系統(tǒng)管理員必須在運(yùn)行 sp_resetstatus這個(gè)過(guò)程前,啟用系統(tǒng)表更新。要啟用更新,使用下面的過(guò)程:

?USE master
?GO
?sp_configure 'allow updates', 1
?GO
?RECONFIGURE WITH OVERRIDE
?GO
?過(guò)程創(chuàng)建后,立即禁用系統(tǒng)表更新:

?sp_configure 'allow updates', 0
?GO
?RECONFIGURE WITH OVERRIDE
?GO
?只有系統(tǒng)管理員才能執(zhí)行 sp_resetstatus。執(zhí)行該過(guò)程后,立即關(guān)閉 SQL Server

非常好我支持^.^

(0) 0%

不好我反對(duì)

(0) 0%

( 發(fā)表人:admin )

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?
      主站蜘蛛池模板: 亚洲乱码卡一卡二卡三 | 大尺度免费高清在线观看视频 | 五月婷婷伊人网 | 亚洲成年网| 真实一级一级一片免费视频 | 能看的黄网 | 91综合在线视频 | 一级片视频在线 | 综合激情网站 | 女人张开腿让男人桶视频免费大全 | 欧洲天堂网 | 色丁香在线视频 | 色香欲亚洲天天综合网 | 中国女人a毛片免费全部播放 | 国产色产综合色产在线观看视频 | 免费中国jlzzjlzz在线播放 | 午夜毛片免费观看视频 | aaa特级毛片| 乡村乱人伦短小说 | 色黄网站成年女人色毛片 | 二十年等一人小说在线观看 | 国产做a爰片久久毛片 | 中文字幕一区二区视频 | 二十年等一人小说在线观看 | 国内精品手机在线观看视频 | 最刺激黄a大片免费观看下截 | 666夜色666夜色国产免费看 | 色婷婷五 | 韩国电影天堂 | 亚洲影视网 | 天堂资源在线bt种子 | 97久久草草超级碰碰碰 | 97色在线视频 | 亚洲六月丁香六月婷婷花 | 欧美性xxxx交| 欧美精品videofree720p | 美女视频久久 | 国产黄色在线观看 | 1300部小u女视频免费 | 关晓彤被调教出奶水的视频 | 国产精品爱久久久久久久三级 |