成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SQL Server移動系統數據庫開發詳解

數據庫 SQL Server 數據庫運維
本文將討論的是基于SQL Server 2005或2008平臺進行的移動系統數據庫開發,希望對大家有所幫助。

移動數據庫***的問題在于性能,因為受制于移動平臺的計算能力。本文將為大家講的是基于SQL Server 2005或2008平臺進行的移動系統數據庫開發。

說到這個問題,基本上有人就會想到三個問題:

1,什么是系統數據?

2,為什么要移動系統數據庫?

3,移動系統數據庫我們可以用附加和分離,為什么還要單獨拿出來說呢?

對于這三個問題我一個一個講吧,也算是自己做個筆記。

1,什么是系統數據?

所謂系統數據庫就是我們在裝SQL Server之后,系統自帶的數據庫(這樣的回答是不是很白癡^_^).

如果你裝SQL Server2005或2008在打開一個SQL實例后,就會看到一個數據庫--->系統數據庫文件夾,里邊就是系統自帶的數據庫,如圖:

system-database-pic

對于每一個系統數據庫,這里我先用簡單的語言說一下:

1)master:

這個數據庫是全局數據庫,它包含一些系統表,權限分配,用戶帳號設置,當前數據庫配置信息以及關于磁盤空間,文件分配等信息。所以在執行諸如用戶帳號設置,權限分配和改變系統配置信息后都要備份此數據。所以在這里強烈建議,不僅要經常備份自己的數據庫,還有備份此數據庫,雖然不像備份自己數據庫那樣那么頻繁。至少半個月或一個月備份一次此數據庫。

在這里還有專門的一個數據庫大牛討論過是否應該備份此數據庫:SQL SERVER – Backup master Database Interval – master Database Best Practices

2)model:

這個數據庫只是一個模板數據庫,我們在創建任意的一個數據庫的時候,都是復制此數據庫為新數據庫的基礎,如果希望每一個新的數據庫都含有某些對象或者權限,可以把這個對象或權限放在此數據庫中,新創建的新數據庫都會繼承此數據的新對象或權限,并且擁有這些對象或權限。

3)msdb:

作者原話:SQL Server代理服務器會使用該數據庫,它會執行一些列如備份和復制任務的計劃好的活動。Service Borker也會用到該數據庫,他為SQL Sever提供隊列和可靠消息傳遞。當我們不在該數據庫執行備份或維護任務時,通??梢院雎栽摂祿?。在SQL Server2005之前,實際上是可以刪除該數據庫的,只后SQL Server仍然可用,但不能在維護任何備份歷史了,并且不能夠在定義任務,警告,工作或者建立復制,不過因為默認的msdb數據庫非常小,建議即使用不到也不要刪除它。

4)tempdb:

該數據庫說白了,就是一個中轉站或數據寄存站,用戶顯示創建的臨時表,在查詢處理和排序時內部所產生的中間結果的工作表,維護用的快照等,都會用到此數據庫,與其他數據庫所不同的是,在每次SQL Server實例重啟之后,都會重建而不是恢復. 所以我們在其中創建的所有對象和權限在下次重啟SQL Server時都會全部丟失。

但是我們也不能忽略此數據庫,因為tempdb的大小和配置,對優化SQL Server的功能和性能來說很重要。

對tempdb數據庫,還要多說幾句,雖然在tempdb每次被重建時,它會從model數據庫繼承大多數的數據庫選項,但是tempdb卻不會從modeldb數據庫中復制其恢復模式,因為它總是使用簡單恢復模式。另外,tempdb是無法刪除的,也不用備份。

2,為什么要移動系統數據庫?

我們在安裝SQL Server后默認的這些系統數據庫都會放在C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA此文件夾下,一般的都不很大,為什么我們還有移動他們呢?

在沒有實踐管理服務器之前,我也沒有這個想法,但是我發現我的服務器C盤一直都在增加,或者萬一重裝系統,我設置的數據庫選項,以及用戶賬戶設置都要重新設置,所以就有了這個想法。

還有一點就是作為重新布置計劃或安排好的維護操作的一部分,我們也許需要移動系統數據庫。

3,用附加和分離就可以,為什么還要單獨說呢?

回答這個問題之前,我們在看一張圖

move-system-database-pic

注意到了嗎,在我選中master系統數據庫右擊,選中任務后,并沒有出現“分離”這個選項。那就說明移動這些系統數據庫是和用戶自定義的數據庫是不同的。

移動tempdb,model和msdb的步驟和移動master數據庫步驟稍微有點不同。

1),移動tempdb,model和msdb數據庫

i),移動一個沒有損壞的系統數據庫

首先讓我們用查詢命令看一下SQL Server默認存儲這些系統數據庫的路徑;查詢命令:

  1. SELECT name,physical_name AS CurrentLocation,state_desc   
  2. FROM sys.master_files  

F5執行,顯示如圖:

move-system-database-pic-1

之后開始我們的移動之旅吧!

a),對數據庫中每個要移動的文件使用帶有MODIFY FILE選項的ALTER DATABASE命令來指定新的文件夾選項。如:

  1. --Movetempdb
  2. ALTERDATABASEtempdbMODIFYFILE(NAME='tempdev',FILENAME='D:\Database\tempdb.mdf');
  3. ALTERDATABASEtempdbMODIFYFILE(NAME='templog',FILENAME='D:\Database\templog.ldf');
  4. --Movemodel
  5. ALTERDATABASEmodelMODIFYFILE(NAME='modeldev',FILENAME='D:\Database\model.mdf');
  6. ALTERDATABASEmodelMODIFYFILE(NAME='modellog',FILENAME='D:\Database\modellog.ldf');
  7. --Movemsdb
  8. ALTERDATABASEmsdbMODIFYFILE(NAME='MSDBData',FILENAME='D:\Database\msdbdata.mdf');
  9. ALTERDATABASEmsdbMODIFYFILE(NAME='MSDBLog',FILENAME='D:\Database\msdb_log.ldf');

b),在命令提示行下用NET STOP MSSQLSERVER命令停止SQL Server實例;

c),物理移動文件到我們定義的文件夾,比如上面所述D:\Database文件夾;

d),重啟SQL Server實例;

大功告成,然后在用上面的查詢來驗證更改,F5執行,顯示如圖:

move-system-database-pic-2

ii)由于硬件故障而需要移動系統數據庫

對于由于硬件故障而需要移動系統數據庫,上面的方法就不行了,因為我們可能無法訪問服務器來運行ALTER DATABASE命令。那我們就另外換一種解決方案!

a)如果SQL Server實例已經啟動,那么停止該實例;

b)在命令提示行下,輸入下面的命令把SQL Server實例啟動到master-only恢復模式

NET START MSSQLSERVER /f /T3608

c)之后我們就能鏈接到服務器了,接下來就和上面”移動一個沒有損壞的系統數據庫 ”的步驟就一樣了。

注:如果直接用NET START MSSSQL SERVER命令來啟動SQL Server實例,會收到1814的錯誤提示。我們可以到“控制面板”-》“管理工具”-》“事件查看器”中看一下具體的錯誤日志。

2)移動master數據庫

移動master數據庫的位置和其他的系統數據庫不同是,只能用SQL Server 配置管理器來更改master的位置。

首先打開SQL Server配置管理器,右擊目標SQL Server實例,選擇屬性,然后點擊高級標簽,如圖所示:

move-system-database-pic-3

在啟動參數中編輯各個參數的值來指向新的master數據庫數據文件和日志文件的目錄位置,如下:

-dD:\Database\master.mdf;

-eC:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\Log\ERRORLOG;

-lD:\Database\mastlog.ldf

然后停止SQL Server實例,把物理文件移動到新的文件夾下,比如我移動到D:\Database\目錄下;

***啟動SQL Server實例,就大功告成了!如果要檢驗一下,就用上面所提到的檢驗語句,F5執行,如圖所示:

move-system-database-pic-4

原文標題:SQL Server:移動系統數據庫

鏈接:http://www.cnblogs.com/xbf321/archive/2010/03/12/sqlserver-move-system-database.html

【編輯推薦】

  1. 圖解SQL Server 2008 R2主數據服務安裝
  2. 理解SQL Server 2008索引的存儲結構
  3. SQL Server 2008 R2十大新特性解析
  4. SQL Server分析服務性能優化淺析
  5. 圖解SQL Server 2008安裝和配置過程
責任編輯:彭凡 來源: 博客園
相關推薦

2021-03-18 08:20:19

SQLServer數據庫SQL

2017-05-17 10:05:30

SQL Server鏡像數據庫

2010-07-15 17:28:50

SQL Server

2011-08-25 13:41:50

SQL Server 變更跟蹤

2011-08-11 09:12:31

SQL Server nolock

2011-03-08 08:59:01

SQL Server數數據移動

2011-08-22 11:39:53

SQL Server數PIVOT

2011-08-30 11:04:30

鏈接查詢內連接外連接

2011-04-02 11:02:54

SQL Server數文件恢復

2011-08-24 12:49:56

SQL Server托管代碼

2011-08-19 14:53:02

SQL ServerDataRelatio

2011-08-15 14:29:52

SQL Server數事務

2021-05-17 06:57:34

SQLServer數據庫

2010-07-08 11:05:14

SQL Server數

2009-04-30 09:28:05

SynonymOpenquerySQL Server

2011-08-15 13:48:47

SQL ServerROW_NUMBER(

2011-01-20 08:35:23

SQL Server

2011-08-22 13:28:56

FOR XMLSQL Server

2019-11-27 10:46:06

sqlserver數據庫sql

2011-08-15 15:40:57

SQL Server 系統數據庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日本久久视频 | 久久久久一区二区 | 偷拍亚洲色图 | 午夜影院免费体验区 | 9久久| 久久999 | 手机av网| 免费在线观看av网址 | 精品国产99 | 久草青青草 | 国产成人精品久久二区二区91 | 成人免费淫片aa视频免费 | 国产精品一区在线观看 | 国产91九色 | 91中文视频 | 亚洲综合国产精品 | 性xxxxx | 欧美日韩一区在线观看 | 欧美1—12sexvideos | 欧美日韩综合一区 | 国产精品久久久久久久三级 | 午夜影院在线免费观看视频 | 日本中文字幕视频 | 黄片毛片在线观看 | 久久精品亚洲国产奇米99 | 国产成人在线视频免费观看 | 97超碰中文网| 欧美日韩91 | 伊人婷婷| 成人欧美一区二区 | 日韩另类 | 成人三级av| 9191在线播放 | 午夜影院普通用户体验区 | av免费网址| av播播| 国产成人高清成人av片在线看 | 欧美极品在线视频 | 国产在线第一页 | 狠狠干美女 | 久久久国产精品视频 |