❶ sql server2000 創建用戶時有個默認資料庫是什麼意思
就是SQL server2000自動為你創建的資料庫,不然的話你連接不了,一般連接資料庫伺服器,都需要指明連接到哪個資料庫的,所以幾乎所有的資料庫伺服器軟體都是在安裝的時候會自動創建一個默認的資料庫的
❷ 怎麼設置SQL資料庫默認值(sql如何設置默認值)
//第一種寫法:
MM_conn_STRING="Driver={SQLServer};server=(local);uid=sa;pwd=;database=infs;"
Setconn=Server.("ADODB.Connection")
conn.openMM_conn_STRING
SETRS=SERVER.("ADOBD.recordset")
SQL="SELECT*FROMTABLEORDERBYIDDESC"
RS.openSQL,CONN,3,3
//第二種寫法:(DSN連接)
MM_conn_STRING="DSN=BBS;UID=SA;PWD=12345"
Setconn=Server.("ADODB.Connection")
conn.openMM_conn_STRING
SETRS=SERVER.("ADOBD.recordset")
SQL="SELECT*FROMTABLEORDERBYIDDESC"
RS.openSQL,CONN,3,3//3,3是修改握芹、局帶刪除、增加開桐皮蘆關!
//第三種寫法:
MM_conn_STRING_own="Driver={SQLServer};server=(local);uid=sa;pwd=11111;database=infs;"
Setconn=Server.("ADODB.Connection")
conn.openMM_conn_STRING_own
//第四種-這種方法用在ACCESS中
strconn="DRIVER=MicrosoftAessDriver(*.mdb);DBQ="_
&Server.MapPath("asp.mdb")
setconn=server.("adodb.connection")
conn.openstrconn
❸ 在SQL Server中出現 「無法打開用戶默認資料庫,登錄失敗」 是什麼原因
無法打開用戶默認資料庫,登錄失敗,這也是SQL Server使用者常見的問題之一。在使用企業管
理器、查詢分析器、各類工具畢蔽和應用軟體的時候,只要關繫到連接SQL Server資料庫的時候,都有
可能會碰到此問題。
一、原因
登錄帳戶的默認資料庫被刪除。
二、解決方法:
(一)、使用管理員帳戶修改此帳戶的默認資料庫
1、打開企業管理器,展開伺服器組,然後展開伺服器
2. 展開"安全性",展開登錄仔差,右擊相應的登錄帳戶,從彈出的菜單中選擇,屬性
3、重新選擇此登錄帳戶的默認資料庫
(二)、若沒有其他管理員登錄帳戶,無法在企業管理器里修改,使用isql命令行工手戚州具
isql /U"sa" /P"sa的密碼" /d"master" /Q"exec sp_defaultdb N'sa', N'master'"
如果使用Windows驗證方式,使用如下命令行,將默認資料庫改成非丟失的資料庫:
isql /E /d"master" /Q"exec sp_defaultdb N'BUILTINAdministrators', N'master'"
❹ 如何設置SQL Server登錄的默認資料庫和許可權。
sql server2005安全管理之用戶、角色、架構 與 許可權
2008-12-04 16:47
--打開資料庫
Use databaseName
--創建角色
create role ProgramerRole
--用於創建表 存儲過程 視圖
grant create table,create procere,create view to ProgramerRole
--execute用以執行存儲過程,alter用以創建、修改存儲過程和視圖,
--並可以新建立表,但不能修改表,但也可以刪除表和對表改名了
grant select,insert,execute,alter on schema::dbo to ProgramerRole
--用於允許用戶查看 顯示估計的執行計劃(081205)
grant showplan to ProgramerRole
--創建登錄賬號
--create login username with password='password'
--創建資料庫用戶
create user username for login username
--將用戶TestUser添加到TestRole角色中
exec sp_addrolemember 'ProgramerRole','username '
--執行Sql Server Profiler是伺服器級許可權,所以在master庫中授權
USE master;grant alter trace to auto;
註:據庫引擎優化顧問必須由具有系統管理員許可權的用戶進行初始化。在具有系統管理員許可權的用戶對資料庫引擎優化顧問進行初始化之後,任何是 db_owner 固定資料庫角色成員的用戶,都可以使用資料庫引擎優化顧問來優化他們擁有的資料庫上的表。
詳優化物理資料庫設計http://msdn.microsoft.com/zh-cn/library/ms191531(SQL.90).aspx
參考資料:
用戶架構分離:http://msdn.microsoft.com/zh-cn/library/ms190387(SQL.90).aspx
資料庫架構是一個獨立於資料庫用戶的非重復命名空間。您可以將架構視為對象的容器
主體:http://msdn.microsoft.com/zh-cn/library/ms181127(SQL.90).aspx
是可以請求 SQL Server 資源的實體
Windows 級別的主體
Windows 域登錄名
Windows 本地登錄名
SQL Server 級的主體
SQL Server 登錄名
資料庫級的主體
資料庫用戶
資料庫角色
應用程序角色
安全對象:http://msdn.microsoft.com/zh-cn/library/ms190401(SQL.90).aspx
安全對象是 SQL Server 資料庫引擎 授權系統控制對其進行訪問的資源
安全對象范圍有伺服器、資料庫和架構
安全對象范圍:伺服器包含以下安全對象:
端點
登錄帳戶
資料庫
安全對象范圍:資料庫包含以下安全對象:
用戶
角色
應用程序角色
程序集
消息類型
路由
服務
遠程服務綁定
全文目錄
證書
非對稱密鑰
對稱密鑰
約定
架構
安全對象范圍:架構包含以下安全對象:
類型
XML 架構集合
對象
對象 下面是對象類的成員:
聚合
約束
函數
過程
隊列
統計信息
同義詞
表
視圖
架構:http://msdn.microsoft.com/zh-cn/library/ms365789(SQL.90).aspx
架構是指包含表、視圖、過程等的容器。它位於資料庫內部,而資料庫位於伺服器內部
特定架構中的每個安全對象都必須有唯一的名稱。架構中安全對象的完全指定名稱包括此安全對象所在的架構的名稱。因此,架構也是命名空間
許可權:http://msdn.microsoft.com/zh-cn/library/ms190387(SQL.90).aspx
每個 SQL Server 2005 安全對象都有可以授予主體的關聯許可權
資料庫級別的角色:http://msdn.microsoft.com/zh-cn/library/ms189121(SQL.90).aspx
固定資料庫角色是在資料庫級別定義的,並且存在於每個資料庫中。db_owner 和 db_securityadmin 資料庫角色的成員可以管理固定資料庫角色成員身份;但是,只有 db_owner 資料庫的成員可以向 db_owner 固定資料庫角色中添加成員。
每個資料庫用戶都屬於 public 資料庫角色。當尚未對某個用戶授予或拒絕對安全對象的特定許可權時,則該用戶將繼承授予該安全對象的 public 角色的許可權
伺服器級別角色:http://msdn.microsoft.com/zh-cn/library/ms188659(SQL.90).aspx
固定伺服器角色在其作用域內屬於伺服器范圍。固定伺服器角色的每個成員都可以向其所屬角色添加其他登錄名。
GRANT 架構許可權:http://msdn.microsoft.com/zh-cn/library/ms187940(SQL.90).aspx
如何配置用戶以創建和管理 SQL Server 代理作業 http://msdn.microsoft.com/zh-cn/library/ms187901.aspx
若要配置用戶以創建或執行 Microsoft SQL Server 代理作業,必須先將某個現有 SQL Server 登錄名或 msdb 角色添加到 msdb 資料庫中的下列 SQL Server 代理固定資料庫角色之一:SQLAgentUserRole、SQLAgentReaderRole 或 SQLAgentOperatorRole。
默認情況下,這些資料庫角色的成員可以創建各自的作業步驟,這些作業步驟不執行其他作業步驟。如果這些非管理用戶要運行那些執行其他作業步驟類型(例如,SSIS 包)的作業,它們需要對代理帳戶具有訪問許可權。sysadmin 固定伺服器角色的所有成員都有創建、修改和刪除代理帳戶的許可權
為具體的用戶設置具體的訪問許可權 收藏
use 你的庫名
go
--新增用戶
exec sp_addlogin 'test' --添加登錄
exec sp_grantdbaccess N'test' --使其成為當前資料庫的合法用戶
exec sp_addrolemember N'db_owner', N'test' --授予對自己資料庫的所有許可權
--這樣創建的用戶就只能訪問自己的資料庫,及資料庫中包含了guest用戶的公共表
go
--刪除測試用戶
exec sp_revokedbaccess N'test' --移除對資料庫的訪問許可權
exec sp_droplogin N'test' --刪除登錄
如果在企業管理器中創建的話,就用:
企業管理器--安全性--右鍵登錄--新建登錄
常規項
--名稱中輸入用戶名
--身份驗證方式根據你的需要選擇(如果是使用windows身份驗證,則要先在操作系統的用戶中新建用戶)
--默認設置中,選擇你新建的用戶要訪問的資料庫名
伺服器角色項
這個裡面不要選擇任何東西
資料庫訪問項
勾選你創建的用戶需要訪問的資料庫名
資料庫角色中允許,勾選"public","db_ownew"
確定,這樣建好的用戶與上面語句建立的用戶一樣
---------------------------------------------------------------------------
最後一步,為具體的用戶設置具體的訪問許可權,這個可以參考下面的最簡示例:
--添加只允許訪問指定表的用戶:
exec sp_addlogin '用戶名','密碼','默認資料庫名'
--添加到資料庫
exec sp_grantdbaccess '用戶名'
--分配整表許可權
GRANT SELECT , INSERT , UPDATE , DELETE ON table1 TO [用戶名]
--分配許可權到具體的列
GRANT SELECT , UPDATE ON table1(id,AA) TO [用戶名]
❺ sql默認資料庫被刪除,不能登入怎麼辦
原困是未設置SQL SERVER登錄認證模式為混合認證模式,因為SQL SERVER默認安裝後認證模式為WINDOWS認證模式,從而導致出錯。解決方法很簡單:二."無法連接到伺服器,用戶xxx登陸失敗" 該錯誤產生的原因是由於SQL Server使用了"僅 Windows"的身份驗證方式, 因此用戶無法使用SQL Server的登錄帳戶(如 sa )進行連接.解決方法如下所示: 1.在伺服器端使用企業管理器,並且選擇"使用 Windows 身份驗證"連接上 SQL Server 操作步驟: 在企業管理器中 --右鍵你的伺服器實例(就是那個有綠色圖標的) --編輯SQL Server注冊屬性 --選擇"使用windows身份驗證" --選擇"使用SQL Server身份驗證" --登錄名輸入:sa,密碼輸入sa的密碼 --確定 2.設置允許SQL Server身份登錄 操作步驟: 在企業管理器中 --展開"SQL Server組",滑鼠右鍵點擊SQL Server伺服器的名稱 --選擇"屬性" --再選擇"安全性"選項卡 --在"身份驗證"下,選擇"SQL Server和 Windows ". --確定,並重新啟動SQL Server服務. 在以上解決方法中,如果在第 1 步中使用"使用 Windows 身份驗證"連接 SQL Server 失敗, 那就通過修改注冊表來解決此問題: 1.點擊"開始"-"運行",輸入regedit,回車進入注冊表編輯器 2.依次展開注冊表項,瀏覽到以下注冊表鍵: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer] 3.在屏幕右方找到名稱"LoginMode",雙擊編輯雙位元組值 4.將原值從1改為2,點擊"確定" 5.關閉注冊表編輯器 6.重新啟動SQL Server服務. 此時,用戶可以成功地使用sa在企業管理器中新建SQL Server注冊, 但是仍然無法使用Windows身份驗證模式來連接SQL Server. 這是因為在 SQL Server 中有兩個預設的登錄帳戶: BUILTIN\Administrators <機器名>\Administrator 被刪除. 要恢復這兩個帳戶,可以使用以下的方法: 1.打開企業管理器,展開伺服器組,然後展開伺服器 2.展開"安全性",右擊"登錄",然後單擊"新建登錄" 3.在"名稱"框中,輸入 BUILTIN\Administrators 4.在"伺服器角色"選項卡中,選擇"System Administrators" 5.點擊"確定"退出 6.使用同樣方法添加 <機器名>\Administrator 登錄. 說明: 以下注冊表鍵: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\LoginMode 的值決定了SQL Server將採取何種身份驗證模式. 1.表示使用"Windows 身份驗證"模式 2.表示使用混合模式(Windows 身份驗證和 SQL Server 身份驗證).
希望這些信息對你有所幫助!
0
❻ 」sql 無法打開默認資料庫,登錄失敗「
Master資料庫記錄了Sqlserver所有的伺服器級系統信息,所有的注冊帳戶和密碼,以及所有的系統設置信息,還記錄了所有用戶定義資料庫的存儲位置和初始化信息。
可以試試
用SQLServer安裝目錄下binn目錄中地rebuildm.exe;重建系統資料庫。
❼ 如何修改sql server默認資料庫路徑
1、首先打開sql server管理工具,使用賬號和密碼進行登錄,如圖,
❽ SQLServer中登錄名的默認資料庫有什麼作用
dbo就是原配鑰匙, 其他再建的用戶名就是後來 配 的鑰匙。
這樣理解不知道是不是對的,反正都是可以用的。
「登錄」允許用戶訪問伺服器並擁有伺服器級許可權。
「用戶」是在資料庫級,並擁有訪問單獨的對象的許可權。
登錄名是登錄系統的賬號,用戶名是登錄資料庫的賬號,登錄名可以執行資料庫中所有操作,用戶名只能根據許可權操作,不知這樣理解對不對呵呵~~
Sql Server用戶名和登錄名的關系總結
以前經常被Sql Server中的用戶名和登錄名搞迷糊,因為用sa(登錄名)就搞定一切東西了,當然這會存在一些安全隱患。網上的文章也貌似講得很好,但還是不明白。今天決心把這個問題弄明白。mashallah, 看了N多文章加實驗後終於弄明白了(學東西最重要的還是要親自動手試試),現將學到的分享一下,看是否對你有幫助。
登錄名:伺服器方的一個實體,使用一個登錄名只能進入伺服器,但是不能讓用戶訪問伺服器中的資料庫資源。每個登錄名的定義存放在master資料庫的syslogins表中。
用戶名:一個或多個登錄對象在資料庫中的映射,可以對用戶對象進行授權,以便為登錄對象提供對資料庫的訪問許可權。用戶定義信息存放在每個資料庫的sysusers表中。
SQLSERVER把登錄名與用戶名的關系稱為映射。用登錄名登錄SQLSERVER後,在訪問各個資料庫時,SQLSERVER會自動查詢此資料庫中是否存在與此登錄名關聯的用戶名,若存在就使用此用戶的許可權訪問此資料庫,若不存在就是用guest用戶訪問此資料庫(guest是一個特殊的用戶名,後面會講到)。
一個登錄名可以被授權訪問多個資料庫,但一個登錄名在每個資料庫中只能映射一次。即一個登錄可對應多個用戶,一個用戶也可以被多個登錄使用。好比SQLSERVER就象一棟大樓,裡面的每個房間都是一個資料庫.登錄名只是進入大樓的鑰匙,而用戶名則是進入房間的鑰匙.一個登錄名可以有多個房間的鑰匙,但一個登錄名在一個房間只能擁有此房間的一把鑰匙。
鏈接或登錄Sql Server伺服器時是用的登錄名而非用戶名登錄的,程序裡面的鏈接字元串中的用戶名也是指登錄名。