Ⅰ sql server的一個關於角色和架構的、以及用戶的問題。幾個概念性的,謝謝
先看問題二
問題二:架構是形成單個命名空間的資料庫實體集合,是資料庫級的。
資料庫角色同樣是資料庫級別的主體,也是資料庫用戶的集合。
應該都是資料庫級別的不存在資料庫角色與架構的所屬關系 因此出現資料庫角ault_schema_name 為NULL
問題一:至於架構和角色的名字可以隨意創建,沒有什麼關系。只是為了系統好表示其意義而已
問題三:
sa是登錄名 可以在sqlserver管理器的伺服器級別下的安全性-> 登錄名中查看
或者在目錄視圖中sys.server_principals 和 sys.sql_logins
(select *
from sys.sql_logins
go
select *
from sys.server_principals)中查看
默認情況下,sa登錄名在各資料庫中對應的用戶是dbo用戶,
dbo是資料庫的默認用戶。sql Server 安裝之後,dbo用戶就自動
存在了。dbo用戶擁有在資料庫中操作的所有許可權。SQL_USER與 WINDOWS_USER
在你剛進入sqlserver管理器的時候有身份驗證選項有Windows身份驗證和sql server身份驗證
本地機器上當然可以選擇Windows身份驗證,遠程就只有sql server身份驗證
以上僅是個人理解有誤之處還請告知
Ⅱ SQLSERVER怎麼搭建伺服器集群實現負載均衡
很多組織機構慢慢的在不同的伺服器和地點部署SQL Server資料庫——為各種應用和目的——開始考慮通過SQL Server集群的方式來合並。
將SQL Server實例和資料庫合並到一個中心的地點可以減低成本,尤其是維護和軟硬體許可證。此外,在合並之後,可以減低所需機器的數量,這些機器就可以用於備用。
當尋找一個備用,比如高可用性的環境,企業常常決定部署Microsoft的集群架構。我常常被問到小的集群(由較少的節點組成)SQL Server實例和作為中心解決方案的大的集群哪一種更好。在我們比較了這兩個集群架構之後,我讓你們自己做決定。
什麼是Microsoft集群伺服器
MSCS是一個Windows Server企業版中的內建功能。這個軟體支持兩個或者更多伺服器節點連接起來形成一個「集群」,來獲得更高的可用性和對數據和應用更簡便的管理。MSCS可以自動的檢查到伺服器或者應用的失效,並從中恢復。你也可以使用它來(手動)移動伺服器之間的負載來平衡利用率以及無需停機時間來調度計劃中的維護任務。
這種集群設計使用軟體「心跳」來檢測應用或者伺服器的失效。在伺服器失效的事件中,它會自動將資源(比如磁碟和IP地址)的所有權從失效的伺服器轉移到活動的伺服器。注意還有方法可以保持心跳連接的更高的可用性,比如站點全面失效的情況下。
MSCS不要求在客戶計算機上安裝任何特殊軟體,因此用戶在災難恢復的經歷依賴於客戶-伺服器應用中客戶一方的本質。客戶的重新連接常常是透明的,因為MSCS在相同的IP地址上重啟應用、文件共享等等。進一步,為了災難恢復,集群的節點可以處於分離的、遙遠的地點。
在集群伺服器上的SQL Server
SQL Server 2000可以配置為最多4個節點的集群,而SQL Server 2005可以配置為最多8個節點的集群。當一個SQL Server實例被配置為集群之後,它的磁碟資源、IP地址和服務就形成了集群組來實現災難恢復。
SQL Server 2000允許在一個集群上安裝16個實例。根據在線幫助,「SQL Server 2005在一個伺服器或者處理器上可以支持最多50個SQL Server實例,」但是,「只能使用25個硬碟驅動器符,因此如果你需要更多的實例,那麼需要預先規劃。」
注意SQL Server實例的災難恢復階段是指SQL Server服務開始所需要的時間,這可能從幾秒鍾到幾分鍾。如果你需要更高的可用性,考慮使用其他的方法,比如log shipping和資料庫鏡像。
單個的大的SQL Server集群還是小的集群
下面是大的、由更多的節點組成的集群的優點:
◆更高的可用新(更多的節點來災難恢復)。
◆更多的負載均衡選擇(更多的節點)。
◆更低廉的維護成本。
◆增長的敏捷性。多達4個或者8個節點,依賴於SQL版本。
◆增強的管理性和簡化環境(需要管理的少了)。
◆更少的停機時間(災難恢復更多的選擇)。
◆災難恢復性能不受集群中的節點數目影響。
下面是單個大的集群的缺點:
◆集群節點數目有限(如果需要第9個節點怎麼辦)。
◆在集群中SQL實例數目有限。
◆沒有對失效的防護——如果磁碟陣列失效了,就不會發生災難恢復。
◆使用災難恢復集群,無法在資料庫級別或者資料庫對象級別,比如表,創建災難恢復集群。
虛擬化和集群
虛擬機也可以參與到集群中,虛擬和物理機器可以集群在一起,不會發生問題。SQL Server實例可以在虛擬機上,但是性能可能會受用影響,這依賴於實例所消耗的資源。在虛擬機上安裝SQL Server實例之前,你需要進行壓力測試來驗證它是否可以承受必要的負載。
在這種靈活的架構中,如果虛擬機和物理機器集群在一起,你可以在虛擬機和物理機器之間對SQL Server進行負載均衡。比如,使用虛擬機上的SQL Server實例開發應用。然後在你需要對開發實例進行壓力測試的時候,將它災難恢復到集群中更強的物理機器上。
集群伺服器可以用於SQL Server的高可用性、災難恢復、可擴展性和負載均衡。單個更大的、由更多的節點組成的集群往往比小的、只有少數節點的集群更好。大個集群允許更靈活環境,為了負載均衡和維護,實例可以從一個節點移動到另外的節點。
Ⅲ sql server 中創建架構,架構是干什麼用的,為什麼要創建架構,有什麼好處
SQL Server 中的 架構 ( schema )
與 軟體構架 與 架構師 的不是同一個概念
schema 是用於 在一個 大項目中的 各個 小項目
每個 小項目的表, 放在 各自的 schema 下面.
這樣, 遇到 小項目裡面. 有 相同名字的 表的話, 不會發生沖突.
例如一個 公司的 系統.
裡面分2個 子系統, 分別為 財務系統 和 人力資源系統.
這2個 子系統, 共用一個資料庫
.
那麼 財務系統的表, 可以放在 財務的 schema.
人力資源系統的表,放在 人力資源系統的模式裡面。
這2個 子系統, 能夠 互相訪問 對方的表
但是又不因為 表重名 的問題,影響對方。
體系結構是下面這個樣子的
[伺服器名稱].[資料庫名稱].[構架名稱].[表名]
create database --> 創建一個資料庫
create schema --> 創建一個構架
當你在 SQL Server 裡面, 使用 create database 創建一個資料庫以後。
你可以不必額外的去創建 schema
因為 SQL Server 會 自動的創建一個 名字叫 dbo 的 schema
Ⅳ sqlserver2008創建新用戶時的架構和角色怎麼選
sa是登錄名 可以在sqlserver管理器的伺服器級別下的安全性-> 登錄名中查看
或者在目錄視圖中sys.server_principals 和 sys.sql_logins
(select *
from sys.sql_logins
go
select *
from sys.server_principals)中查看
默認情況下,sa登錄名在各資料庫中對應的用戶是dbo用戶,
dbo是資料庫的默認用戶。sql Server 安裝之後,dbo用戶就自動
存在了。dbo用戶擁有在資料庫中操作的所有許可權。SQL_USER與 WINDOWS_USER
在你剛進入sqlserver管理器的時候有身份驗證選項有Windows身份驗證和sql server身份驗證
本地機器上當然可以選擇Windows身份驗證,遠程就只有sql server身份驗證
以上僅是個人理解有誤之處還請告知
Ⅳ sql server中的架構是什麼意思
在sqlserver 2005中,可能大家在工作或學習的時候會經常發現這樣一些問題,你使用一個賬戶在資料庫中創建了一張表,卻發現你自己創建的表卻沒有修改和查詢的許可權,這是一件很郁悶的事情,在sqlserver2000中卻不存在這樣的問題,那為什麼在2005中會出現這樣的事情,這樣的設置可以帶來哪些好處?其實導致這一問題的原因主要在於2005中多了一個新的概念—架構。
首先我們來看一下msdn中對架構的定義:架構(Schema)是形成單個命名空間的資料庫實體的集合。命名空間是一個集合,其中每個元素的名稱都是唯一的。在這里,我們可以將架構看成一個存放資料庫中對象的一個容器。
架構實際上在sqlserver2000中就已經存在,當我們使用查詢分析器去查詢一個表的時候,一個完整的表的名稱應該包括伺服器名.資料庫名.用戶名.對象名,而在sqlserver2005中一個表的完全限定名稱應該為伺服器名.資料庫名.架構名.對象名
在2000中,假如有一個賬戶tt在test資料庫中創建了一張表table1的時候,在伺服器上對查詢的語句應為select * from test.tt.table1,也就是說,在sqlserver 2000中一張表所屬的架構默認就是表的創建者的登錄名稱,用戶可以和修改他所創建的所有資料庫對象。但在2005中已經將用戶和其創建對象所屬架構的關聯取消了,而加入了一個全新的架構體系,這樣做的優點主要在於下面幾個方面:
1. 多個用戶可以通過角色(role)或組(Windows groups)成員關系擁有同一個架構。
2. 刪除資料庫用戶變得極為簡單。
3. 共享預設架構使得開發人員可以為特定的應用程序創建特定的架構來存放對象,這比僅使用管理員架構(DBO schema)要好。
4. 在架構和架構所包含的對象上設置許可權(permissions)比以前的版本擁有更高的可管理性。
5. 區分不同業務處理需要的對象,例如,我們可以把公共的表設置成pub的架構,把銷售相關的設置為sales,這樣管理和訪問起來更容易.
Ⅵ sqlserver 視圖創建索引為什麼要先綁定架構
打開sql server management studio,依次展開到視圖
右鍵點擊,選擇新建視圖
選中建立圖片需要的表,然後點擊添加(可以添加多個)
添加完後,點擊關閉
點擊表中的復選框,來添加一些列,在最下面的框中會自動生成相應
也可以在下面的代碼框中直接輸入一些代碼
點擊空白處,並使用快捷鍵Ctrl+S進行保存
創建視圖成功
Ⅶ sqlserver 如何建架構
在對象資源管理器張開你要新建架構的資料庫在-安全性-架構-右擊新建
Ⅷ 請問sqlserver 如何修改dbo架默認架構名字
結果名字是不能修改的,但是你可以新建一個建構,再重新創建基於此架構的對象,當然也可以將原DBO下的對象全部拷貝過來。
Ⅸ 什麼是架構,SQL中的架構有哪些
架構(Schema)是一組資料庫對象的集合,它被單個負責人(可以是用戶或角色)所擁有並構成唯一命名空間。你可以將架構看成是對象的容器。
在 SQL Server 2000 中,用戶(User)和架構是隱含關聯的,即每個用戶擁有與其同名的架構。因此要刪除一個用戶,必須先刪除或修改這個用戶所擁有的所有資料庫對象。
在 SQL Server 2005 中,架構和創建它的資料庫用戶不再關聯,完全限定名(fully-qualified name)現在包含4個部分:server.database.schema.object
1. 體系結構(Architecture)
體系結構亦可稱為架構,所謂軟體架構,根據Perry 和Wolfe之定義:Software Architecture = {Elements,Forms, Rationale / Constraint },也就是軟體主架構 = {組件元素,元素互助合作之模式,基礎要求與限制}。Philippe Kruchten採用上面的定義,並說明主架構之設計就是:將各組件元素以某些理想的合作模式組織起來,以達成系統的基本功能和限制。體系結構又分為多種樣式,如Pipes and Filters等。
2. 框架(Framework)
框架亦可稱為應用架構,框架的一般定義就是:在特定領域基於體系結構的可重用的設計。也可以認為框架是體系結構在特定領域下的應用。框架比較出名的例子就是MVC。
3. 庫(Library)
庫應該是可重用的、相互協作的資源的集合,供開發人員進行重復調用。它與框架的主要區別在於運行時與程序的調用關系。庫是被程序調用,而框架則調用程序。比較好的庫有JDK。
4. 設計模式(Design Pattern)
設計模式大家應該很熟悉,尤其四人幫所寫的書更是家喻戶曉。「四人幫」將模式描述為「在一定的環境中解決某一問題的方案」。這三個事物 — 問題、解決方案和環境 — 是模式的基本要素。給模式一個名稱,考慮使用模式將產生的結果和提供一個或多個示例,對於說明模式也都是有用的。
5. 平台(PlatForm)
由多種系統構成,其中也可以包含硬體部分。
對於以上的概念有一個比較清楚的認識之後,就可以在軟體的開發過程中進行應用。理論和實踐是缺一不可的,相輔相成的。沒有理論的指導,實踐就缺乏基礎;沒有實踐的證明,理論就缺乏依據,因此我一直認為:對於當代的程序員,在有一定的實踐基礎後,必須學習更深的理論知識。無論你是從那方面先開始學習的。
在軟體的開發過程中,從許多過程實踐和方法中,大致可以提煉出五大步驟:需求、分析、設計、編碼、測試。而體系結構是軟體的骨架,是最重要的基礎。體系結構是涉及到每一步驟中。一般在獲取需要的同時,就應該開始分析軟體的體系結構。體系結構現在一般是各個大的功能模塊組合成,然後描述各個部分的關系。
我一般認為框架是體系結構中每個模塊中更細小的結構。如需要表示web技術,就會用到MVC框架,而web功能只是整個軟體體系中的一個功能模塊。每個框架可以有許多個實例,如用java實現的MVC框架structs。
而在框架之下就是設計模式,設計模式一般是應用中框架之中的,也可以說是對框架的補充。因為框架只是提供了一個環境,需要我們我裡面填入更多的東西。無論是否應用了設計模式,你都可以實現軟體的功能,而正確應用了設計模式,是我們對前人軟體的設計或實現方法的一種繼承,從而讓你的軟體更軟。
體系結構是可以從不同視角來進行分析的,所以軟體體系結構的設計可以按照不同的視角來進行的。按4+1 views的論述,那是四種views:邏輯、開發、過程、物理和場景。因此體系結構是逐漸細化的,你不可能開始就拿出一個完美的體系結構,而只能根據開發過程逐漸對體系結構進行細化。
打個比方:如果我們准備建一個房子,那房子如果按功能來分:牆壁、地板、照明等,它是按那種樣式來組成的,房子是四方的還是圓形的等,這樣就組成了房子的體系結構。在體系結構之下,我們可以把框架應用在每個模塊中,例如牆壁,我們准備應用什麼框架。牆壁可以包括:窗戶、門等。窗戶和門的組成的就是一種框架。而窗戶是什麼形狀的或者是大還是小,是要為了實現屋內的亮度的,因此挑選什麼樣的窗戶就是設計模式。
Ⅹ 誰能介紹一下sql server 2000的一些架構
架構(Schema)是一組資料庫對象的集合,它被單個負責人(可以是用戶或角色)所擁有並構成唯一命名空間。你可以將架構看成是對象的容器。
在 SQL Server 2000 中,用戶(User)和架構是隱含關聯的,即每個用戶擁有與其同名的架構。因此要刪除一個用戶,必須先刪除或修改這個用戶所擁有的所有資料庫對象。
在 SQL Server 2005 中,架構和創建它的資料庫用戶不再關聯,完全限定名(fully-qualified name)現在包含4個部分:server.database.schema.object
1. 體系結構(Architecture)
體系結構亦可稱為架構,所謂軟體架構,根據Perry 和Wolfe之定義:Software Architecture = {Elements,Forms, Rationale / Constraint },也就是軟體主架構 = {組件元素,元素互助合作之模式,基礎要求與限制}。Philippe Kruchten採用上面的定義,並說明主架構之設計就是:將各組件元素以某些理想的合作模式組織起來,以達成系統的基本功能和限制。體系結構又分為多種樣式,如Pipes and Filters等。
2. 框架(Framework)
框架亦可稱為應用架構,框架的一般定義就是:在特定領域基於體系結構的可重用的設計。也可以認為框架是體系結構在特定領域下的應用。框架比較出名的例子就是MVC。
3. 庫(Library)
庫應該是可重用的、相互協作的資源的集合,供開發人員進行重復調用。它與框架的主要區別在於運行時與程序的調用關系。庫是被程序調用,而框架則調用程序。比較好的庫有JDK。
4. 設計模式(Design Pattern)
設計模式大家應該很熟悉,尤其四人幫所寫的書更是家喻戶曉。「四人幫」將模式描述為「在一定的環境中解決某一問題的方案」。這三個事物 — 問題、解決方案和環境 — 是模式的基本要素。給模式一個名稱,考慮使用模式將產生的結果和提供一個或多個示例,對於說明模式也都是有用的。
5. 平台(PlatForm)
由多種系統構成,其中也可以包含硬體部分。
對於以上的概念有一個比較清楚的認識之後,就可以在軟體的開發過程中進行應用。理論和實踐是缺一不可的,相輔相成的。沒有理論的指導,實踐就缺乏基礎;沒有實踐的證明,理論就缺乏依據,因此我一直認為:對於當代的程序員,在有一定的實踐基礎後,必須學習更深的理論知識。無論你是從那方面先開始學習的。
在軟體的開發過程中,從許多過程實踐和方法中,大致可以提煉出五大步驟:需求、分析、設計、編碼、測試。而體系結構是軟體的骨架,是最重要的基礎。體系結構是涉及到每一步驟中。一般在獲取需要的同時,就應該開始分析軟體的體系結構。體系結構現在一般是各個大的功能模塊組合成,然後描述各個部分的關系。
我一般認為框架是體系結構中每個模塊中更細小的結構。如需要表示web技術,就會用到MVC框架,而web功能只是整個軟體體系中的一個功能模塊。每個框架可以有許多個實例,如用java實現的MVC框架structs。
而在框架之下就是設計模式,設計模式一般是應用中框架之中的,也可以說是對框架的補充。因為框架只是提供了一個環境,需要我們我裡面填入更多的東西。無論是否應用了設計模式,你都可以實現軟體的功能,而正確應用了設計模式,是我們對前人軟體的設計或實現方法的一種繼承,從而讓你的軟體更軟。
體系結構是可以從不同視角來進行分析的,所以軟體體系結構的設計可以按照不同的視角來進行的。按4+1 views的論述,那是四種views:邏輯、開發、過程、物理和場景。因此體系結構是逐漸細化的,你不可能開始就拿出一個完美的體系結構,而只能根據開發過程逐漸對體系結構進行細化。
打個比方:如果我們准備建一個房子,那房子如果按功能來分:牆壁、地板、照明等,它是按那種樣式來組成的,房子是四方的還是圓形的等,這樣就組成了房子的體系結構。在體系結構之下,我們可以把框架應用在每個模塊中,例如牆壁,我們准備應用什麼框架。牆壁可以包括:窗戶、門等。窗戶和門的組成的就是一種框架。而窗戶是什麼形狀的或者是大還是小,是要為了實現屋內的亮度的,因此挑選什麼樣的窗戶就是設計模式。