在SQL2005中新增了一些SQL2000沒有的功能,這些新增的功能可使咱們的SQL server服務器的數據更加的安全。
在2005中新增了架構,架構的特色:
一、 與用戶管理沒有從屬關係
二、 建立用戶的時候能夠直接指定默認架構
三、 不知定默認屬於dbo(權限最大)
四、 若是存在架構名.對象名,訪問對象時在制定架構中找若是沒有則查找dbo
那架構有什麼用呢?
好比有好多用戶的權限是相同的能夠直接加入同一個架構中不用再挨個分配權限。
咱們來建立一個用戶直接爲這個用戶指定架構,如圖:
咱們以hlj用戶登錄
登錄上去了,查看沒有問題,看看插入怎麼樣。
是不讓插入的由於權限不夠,若是想插入那麼就給這個架構更高的權限吧。
角色的做用至關於windows中的組權限相同用戶的集合。
角色分爲三種:一、服務器角色
二、數據庫角色
三、用戶自定義數據庫角色
這個比較簡單如圖:
下面咱們來看數據庫存儲的安全性。
包括:硬件設備,比較好的是光纖通道存儲中樞,可是比較貴。
備份的方式(主要包括:徹底備份、差別備份、事務日誌備份)
恢復方式:一、徹底模式(full,備份全部日誌)
二、大容量日誌(bulk_logged,大量日誌不能備份)
三、簡單模式(simple,全部日誌都不保存,不支持即時還原)
恢復方式是制約備份方法的,徹底模式能夠進行徹底/差別以及事務日誌備份,而下面兩種不能徹底支持這幾種備份方法。
查看數據庫的恢復模式是:
select * from sys.databases
Db1這個數據庫的恢復模式是full咱們來修改成簡單simple
命令爲select * from sys.databases
在備份的時候咱們能夠備份到一個備份設備或備份到一個文件。
先來建立一個備份設備, 在C盤建一個名爲bak的文件夾
sp_addumpdevice ‘disk’,’db1bak’,’c:\bak\db1bak.bak’
例:對db1進行徹底備份,備份到備份設備中
backup database db1 to db1bak
咱們來刪除db1這個庫,而後再來回復這個庫
drop database db1
restore database db1 from db1bak
咱們來插入一條記錄,而後再作一下差別備份命令以下,
利用命令來查看一下備份方式,1(徹底備份)、5(差別備份)、2(事務日誌備份)
好了,開始刪除db1這個數據庫並還原這個數據庫
在還原的時候咱們必須得先還原第一次備份的,而後再還原第二次備份的才能夠哦,如圖:
restore database db1 from db1bak with file=1,norecovery(未封口)
restore database db1 from db1bak with file=2,recovery(封口)
還原好了看咱們剛纔插入的那條記錄是否存在呢?
沒有問題是存在的,事務日誌的備份與這兩種相似,咱們就不舉例了。
咱們這都是備份咱們本身建立的數據庫,那系統的數據庫是否是也和這同樣呢?答案是否,接下來若是把系統數據庫master刪除了,看怎麼恢復啊。
大體步驟是:
一、 備份master數據庫
二、 刪除master數據庫
三、 生成臨時master(須要安裝光盤)
四、 用單用戶進入SQL中
五、 正常啓用SQL
先來第一步備份master,這步與剛纔備份的同樣。
可是刪除就與剛纔的有點區別了,用命令是不讓刪除的,由於它是系統庫。
要刪除系統數據庫咱們必須先把此服務給中止了,利用什麼方法都行。
中止了服務之後咱們找到存放數據庫的目錄在C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data,而後找到master數據庫的有關文件點擊右鍵刪除
生成臨時master,放進安裝光盤
在dos中輸入
D:\> start /wait d:\setup.exe /qn INSTANCENAME=mssqlserver REINSTALL=SQL_Engine REBUILDDATABASE=1 sapwd=Ccjsj1200 (密碼)
在這步咱們在上面那個目錄中看到咱們刪除的master數據庫又會來了,這就對了。咱們就能夠下一步了。
進入單用戶模式後,咱們來啓用SSMS,進入後斷開鏈接——新建查詢——進行還原
還原成功後看看是否能用
能用一切正常,還原成功!!!
下篇我將介紹數據在傳輸中的安全!!!!敬請期待!!!!