国产欧美日韩第一页|日本一二三不卡视频|在线精品小视频,亚洲第一免费播放区,metcn人体亚洲一区,亚洲精品午夜视频

幫助中心 >  技術(shù)知識庫 >  數據庫 >  相關(guān)技術(shù)支持 >  SQL 2005解決你遷移數據庫后以前用的帳戶(hù)不能使用 錯誤15023:當前數據庫中已存在用戶(hù)或角色

SQL 2005解決你遷移數據庫后以前用的帳戶(hù)不能使用 錯誤15023:當前數據庫中已存在用戶(hù)或角色

2009-11-03 14:18:52 7343

在使用SQL Server 2005時(shí),我們經(jīng)常會(huì )遇到一個(gè)情況:需要把一臺服務(wù)器上的數據庫轉移到另外一臺服務(wù)器上。而轉移完成后,需要給一個(gè)"登錄"關(guān)聯(lián)一個(gè)"用戶(hù)"時(shí),往往會(huì )發(fā)生錯誤:

“錯誤15023:當前數據庫中已存在用戶(hù)或角色”

這個(gè)問(wèn)題非常棘手,幾經(jīng)排常找到了原因與解決方法,因為這個(gè)問(wèn)題與解決方法均比較復雜,所以把這個(gè)過(guò)程中的一些經(jīng)驗紀錄下來(lái)與大家分享,希望能對大家以后的類(lèi)似操作有所幫助。

原因及解決辦法如下:

首先介紹一下sql server中“登錄”與“用戶(hù)”的區別,“登錄”用于用戶(hù)身份驗證,而數據庫“用戶(hù)”帳戶(hù)用于數據庫訪(fǎng)問(wèn)和權限驗證。登錄通過(guò)安全識別符 (SID) 與用戶(hù)關(guān)聯(lián)。將數據庫恢復到其他服務(wù)器時(shí),數據庫中包含一組用戶(hù)和權限,但可能沒(méi)有相應的登錄或者登錄所關(guān)聯(lián)的用戶(hù)可能不是相同的用戶(hù)。這種情況被稱(chēng)為存在“孤立用戶(hù)”。此時(shí)是不能通過(guò)新建登錄或者是對同名登錄授予對應數據庫的“用戶(hù)”權限來(lái)解決登錄問(wèn)題,因為SQL Server會(huì )報出“錯誤15023:當前數據庫中已存在用戶(hù)或角色”,為了解決這個(gè)問(wèn)題,需要調用系統存儲過(guò)程sp_change_users_login,具體用法如下:

Use netzs

go

sp_change_users_login update_one, yjsy312, yjsy312

其中netzs為存在孤立用戶(hù)的數據庫,update_one是存儲過(guò)程的參數,表示只處理一個(gè)用戶(hù),前一個(gè)yjsy312是“用戶(hù)”,后一個(gè)yjsy312是“登錄”,以上這個(gè)SQL表示將服務(wù)器登錄“yjsy312”與 netzs 數據庫用戶(hù)“yjsy312”重新連接起來(lái)。這樣就可以正常使用數據庫了

提交成功!非常感謝您的反饋,我們會(huì )繼續努力做到更好!

這條文檔是否有幫助解決問(wèn)題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問(wèn)題:
-->