mssql server 數(shù)據(jù)庫(kù)附加不上解決辦法分享
錯(cuò)誤15105,從網(wǎng)上找了一些解決方案,一般都是說(shuō)文件的權(quán)限不足的問(wèn)題,
當(dāng)然附加的時(shí)候必須是有數(shù)據(jù)庫(kù)附加權(quán)限才可以操作的。
解決辦法1:給相應(yīng)的MDF文件給Full Control的權(quán)限,如果不知道是什么用戶可以去Sql Server的配置中心去找
但是我遇到這個(gè)用上述方法就不可以。
解決方法2:換個(gè)用戶試試,我原數(shù)據(jù)庫(kù)是用sa登陸的,我試著用sa登陸一下,附加成功了!~
如果反復(fù)的用sa登陸卻登陸失敗,可能是沒(méi)有開(kāi)權(quán)限。
權(quán)限可以在登陸用戶的選項(xiàng)中設(shè)置,允許登陸即可。
驗(yàn)證模式則可以在服務(wù)器處設(shè)置,要選擇混合登陸模式。
另外對(duì)高版本數(shù)據(jù)附加低版本數(shù)據(jù)庫(kù)也可以試試上面的方法。
其實(shí)我個(gè)人更喜歡用生成腳本的方式導(dǎo)結(jié)構(gòu)和數(shù)據(jù)。
在QA里執(zhí)行sp_attach_db或者sp_attach_single_file_db,出現(xiàn)提示:錯(cuò)誤1813:未能打開(kāi)新數(shù)據(jù)庫(kù)'dbname',create database 將終止。設(shè)備激活錯(cuò)誤。物理文件名'd:\sql server\mssql\data\dbname _log.ldf'可能有誤!
按下面的步驟處理:
1.新建一個(gè)同名的數(shù)據(jù)庫(kù)
2.再停掉sqlserver服務(wù)(注意不要分離數(shù)據(jù)庫(kù))
3.用原數(shù)據(jù)庫(kù)的數(shù)據(jù)文件覆蓋掉這個(gè)新建的數(shù)據(jù)庫(kù)
4.再重啟sqlserver服務(wù)
5.此時(shí)打開(kāi)企業(yè)管理器時(shí)會(huì)出現(xiàn)置疑,先不管,執(zhí)行下面的語(yǔ)句(注意修改其中的數(shù)據(jù)庫(kù)名)
6.完成后一般就可以訪問(wèn)數(shù)據(jù)庫(kù)中的數(shù)據(jù)了。這時(shí),數(shù)據(jù)庫(kù)本身一般還有問(wèn)題,解決辦法是:利用數(shù)據(jù)庫(kù)的腳本創(chuàng)建一個(gè)新的數(shù)據(jù)庫(kù),然后通過(guò)DTS將數(shù)據(jù)導(dǎo)進(jìn)去就行了
use master go sp_configure 'allow updates',1 reconfigure with override go update sysdatabases set status =32768 where name='置疑的數(shù)據(jù)庫(kù)名' go sp_dboption '置疑的數(shù)據(jù)庫(kù)名', 'single user', 'true' go dbcc checkdb('置疑的數(shù)據(jù)庫(kù)名') go update sysdatabases set status =28 where name='置疑的數(shù)據(jù)庫(kù)名' go sp_configure 'allow updates', 0 reconfigure with override go sp_dboption '置疑的數(shù)據(jù)庫(kù)名', 'single user', 'false' go
Sql Server 2000附加數(shù)據(jù)庫(kù)出現(xiàn)1813錯(cuò)誤的解決方法
今天進(jìn)行了一錯(cuò)誤操作。
數(shù)據(jù)庫(kù)xxzx_discuz,因生成大量日志使日志文件'xxzx_discuz_Log.LDF' 占滿了磁盤(pán)所有空間,使網(wǎng)站無(wú)法正常使用數(shù)據(jù)庫(kù)。
自己圖省事分離數(shù)據(jù)庫(kù)xxzx_discuz后,直接刪除'xxzx_discuz_Log.LDF' (因?yàn)槲募?,無(wú)法存放到回收站),重新附件到SQL Server時(shí)出現(xiàn)兩個(gè)提示:
------------------------------------------------------------------------------------------------------------------------------
SQL Server 企業(yè)管理器
---------------------------
為日志文件指定的文件名不正確。
將創(chuàng)建新的日志文件。
要繼續(xù)嗎?
---------------------------
是(Y) 否(N)
------------------------------------------------------------------------------------------------------------------------------
Microsoft SQL-DMO (ODBC SQLState: 42000)
---------------------------
錯(cuò)誤 1813: 未能打開(kāi)新數(shù)據(jù)庫(kù) 'xxzx_discuz'。CREATE DATABASE 將終止。
設(shè)備激活錯(cuò)誤。物理文件名 'S:\Program Files\Microsoft SQL Server\MSSQL\data\xxzx_discuz_Log.LDF' 可能有誤。
---------------------------
確定
------------------------------------------------------------------------------------------------------------------------------
從而無(wú)法將數(shù)據(jù)庫(kù)正常附加到SQL Server 2000,正常情況下這樣操作是沒(méi)有問(wèn)題的,SQL Server會(huì)重新生成日志文件,但是因?yàn)橹俺霈F(xiàn)了磁盤(pán)空間不足,日志文件不完整,從而造成了無(wú)法正常附加。
解決辦法如下(從網(wǎng)上找來(lái)的):
0.備份數(shù)據(jù)文件'xxzx_discuz_Log.MDF'
1.新建一個(gè)同名的數(shù)據(jù)庫(kù)'xxzx_discuz'
2.再停掉sqlserver服務(wù)(注意不要分離數(shù)據(jù)庫(kù))
3.用原數(shù)據(jù)庫(kù)的數(shù)據(jù)文件'xxzx_discuz_Log.MDF' 覆蓋掉新建的數(shù)據(jù)庫(kù)
4.再重啟sqlserver服務(wù)
5.此時(shí)打開(kāi)企業(yè)管理器時(shí)會(huì)出現(xiàn)置疑,先不管,執(zhí)行下面的語(yǔ)句(注意修改其中的數(shù)據(jù)庫(kù)名) 6.完成后一般就可以訪問(wèn)數(shù)據(jù)庫(kù)中的數(shù)據(jù)了。這時(shí),數(shù)據(jù)庫(kù)本身一般還有問(wèn)題,解決辦法是:利用數(shù)據(jù)庫(kù)的腳本創(chuàng)建一個(gè)新的數(shù)據(jù)庫(kù),然后通過(guò)DTS將數(shù)據(jù)導(dǎo)進(jìn)去就行了. SQL代碼
use master
go
sp_configure 'allow updates',1 reconfigure with override
go
update sysdatabases set status =32768 where name='置疑的數(shù)據(jù)庫(kù)名'
go
sp_dboption '置疑的數(shù)據(jù)庫(kù)名', 'single user', 'true'
go
dbcc checkdb('置疑的數(shù)據(jù)庫(kù)名')
go
update sysdatabases set status =28 where name='置疑的數(shù)據(jù)庫(kù)名'
go
sp_configure 'allow updates', 0 reconfigure with override
go
sp_dboption '置疑的數(shù)據(jù)庫(kù)名', 'single user', 'false'
go
特別注意最后一步中的說(shuō)明“這時(shí),數(shù)據(jù)庫(kù)本身一般還有問(wèn)題,解決辦法是:利用數(shù)據(jù)庫(kù)的腳本創(chuàng)建一個(gè)新的數(shù)據(jù)庫(kù),然后通過(guò)DTS將數(shù)據(jù)導(dǎo)進(jìn)去就行了” 參考文章:Sql Server附加數(shù)據(jù)庫(kù)出現(xiàn)1813錯(cuò)誤的解決方法
- sql server2005實(shí)現(xiàn)數(shù)據(jù)庫(kù)讀寫(xiě)分離介紹
- SQL Server 2005附加數(shù)據(jù)庫(kù)時(shí)Read-Only錯(cuò)誤的解決方案
- sql server2012附加數(shù)據(jù)庫(kù)問(wèn)題解決方法
- Sqlserver 2005附加數(shù)據(jù)庫(kù)時(shí)出錯(cuò)提示操作系統(tǒng)錯(cuò)誤5(拒絕訪問(wèn))錯(cuò)誤5120的解決辦法
- sqlserver附加.mdf權(quán)限問(wèn)題解決
- MSSQL2005在networkservice權(quán)限運(yùn)行附加數(shù)據(jù)庫(kù)報(bào)(Microsoft SQL Server,錯(cuò)誤: 5120)
- SQL SERVER 2008 無(wú)法附加數(shù)據(jù)庫(kù)的解決方法
- SQLServer 附加數(shù)據(jù)庫(kù)后出現(xiàn)只讀或失敗的解決方法
- mssql server .ldf和.mdf的文件附加數(shù)據(jù)庫(kù)的sql語(yǔ)句
- SQL Server 數(shù)據(jù)庫(kù)分離與附加 就這么簡(jiǎn)單!
相關(guān)文章
使用FORFILES命令來(lái)刪除SQLServer備份的批處理
利用這些參數(shù)可以構(gòu)造下面的例子來(lái)解決你刪除備份腳本文件的難題。你可以基于更改時(shí)間/日期或者備份類型來(lái)創(chuàng)建腳本。你甚至可以構(gòu)造能夠同時(shí)參照兩種標(biāo)準(zhǔn)的腳本2012-05-05SQL Server提示"選定的用戶擁有對(duì)象,所以無(wú)法除去該用戶”
今天在幫朋友弄一臺(tái)服務(wù)器的時(shí)候當(dāng)我需要?jiǎng)h除一個(gè)數(shù)據(jù)庫(kù)里的用戶時(shí),提示如下錯(cuò)誤信息: "選定的用戶擁有對(duì)象,所以無(wú)法除去該用戶" 如何解決呢?2009-04-04sql server利用不同語(yǔ)種語(yǔ)言顯示報(bào)錯(cuò)錯(cuò)誤消息的方法示例
這篇文章主要給大家介紹了關(guān)于sql server利用不同語(yǔ)種語(yǔ)言顯示報(bào)錯(cuò)錯(cuò)誤消息的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用sql server具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05SQLServer數(shù)據(jù)庫(kù)密碼短時(shí)間強(qiáng)制過(guò)期的解決
本文主要介紹了SQLServer數(shù)據(jù)庫(kù)密碼短時(shí)間強(qiáng)制過(guò)期的解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04通過(guò)SQL Server的位運(yùn)算功能巧妙解決多選查詢方法
項(xiàng)目中很多業(yè)務(wù)對(duì)象的數(shù)據(jù)表中都具有Status字段,有人使用int型保存Status,有人使用varchar型2012-01-01sql 游標(biāo)的使用—游標(biāo)FOR循環(huán)小例子
游標(biāo)for循環(huán)是在pl/sql塊中使用游標(biāo)最簡(jiǎn)單的方式,它簡(jiǎn)化了對(duì)游標(biāo)的處理。當(dāng)使用游標(biāo)for循環(huán)時(shí),oracle會(huì)隱含的打開(kāi)游標(biāo),提取游標(biāo)數(shù)據(jù)并關(guān)閉游標(biāo)。2013-05-05sql 判斷函數(shù)、存儲(chǔ)過(guò)程是否存在的代碼整理
本文主要為大家介紹了sql下用來(lái)判斷各種資源是否存在的代碼,希望對(duì)大家學(xué)習(xí)sql的函數(shù)及數(shù)據(jù)庫(kù)能夠有所幫助2014-07-07SQLSERVER數(shù)據(jù)庫(kù)升級(jí)腳本圖文步驟
公司的系統(tǒng)需要從1.0升級(jí)到1.1,包括所有正在使用我們公司產(chǎn)品的客戶,因?yàn)楣镜目蛻舯椴既珖?guó),就寫(xiě)了一個(gè)SQLSERVER數(shù)據(jù)庫(kù)遠(yuǎn)程升級(jí)腳本圖文步驟,大家參考使用吧2013-11-11SQL Server修改標(biāo)識(shí)列方法 如自增列的批量化修改
最近在運(yùn)行系統(tǒng)時(shí)需要對(duì)所有服務(wù)器上數(shù)據(jù)結(jié)構(gòu)進(jìn)行批量修改某個(gè)字段的自增屬性改成非自增2012-05-05