熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> MySQL >> 正文

SQL Sever 2008 R2 數據庫管理

2022-06-13   來源: MySQL 

  一預備知識提要:

   創建數據庫需要的權限

  至少要擁有:

  ()create database;

  ()create any database;

  ()alter any database

   數據庫的上限

  在同一實例中最多可以創建個數據庫超過則會失敗!

   數據庫文件和文件組

  每個SQL Server 數據庫至少包括個文件:

  ()數據文件 : 包含的是 數據庫的數據和對象它分為主要數據文件和次

  要數據文件擴展名分別為 mdf和ndf

  ()日志文件 : 包含的是 用於恢復數據庫時所需要的信息它分為主要日志

  文件和次要日志文件擴展名都為ldf

  技巧:

  在默認情況下數據庫的數據文件和日志文件都保存在同一目錄下但這並

  不是最佳方案為了提高存儲速度

  強烈建議:

  將數據文件和日志文件保存在不同的驅動器上!

  文件組

  為了方便對數據庫文件進行管理可以將數據庫文件集中起來放在文件組中

  每個數據庫都有一個主要文件組該組包括主要數據文件和未放入其他文件組的

  所有次要文件當然用戶也可自行定義不同的文件組

   數據庫狀態

  SQL Server 數據庫永遠處於特定的狀態中包括種狀態:

  ()online : 可以對數據進行訪問(在線)

  ()offline: 數據庫無法使用(離線)

  ()restoring : 表示正在還原主文件組的一個或多個文件或正在離線還原一個

  或多個輔助文件此時數據庫不可用(還原)

  ()recovering : 表示正在恢復數據庫該狀態是個暫時性的狀態恢復成功

  後數據庫會自動回到在線狀態(恢復)

  ()recovering pending : 此時數據庫並未損壞但很有可能缺少文件此時

  數據庫不可用並等待用戶執行操作來完成恢復工作(恢復等待)

  ()suspect : 表示數據庫裡的文件組(至少是主文件組)可疑或已經損壞SQL

  Server 啟動過程無法恢復數據庫此時數據不能使用(可疑)

  ()emergency : 一般用於故障排除此時數據庫處於單用戶模式可以修復

  或還原數據庫標記為只讀並禁用日志記錄只有具備sysadmin服務

  器角色的成員才能訪問(緊急)

  二 舉例說明

  例一: 創建一個數據庫所有的設置采用默認值

  create database 測試數據庫

  例二: 創建一個數據庫指定數據庫的數據文件所在位置

  create database 例二數據庫

  on

  (

  name=例二數據庫

  filename=d:DBtest例二數據庫mdf

  )

  例三:創建一個數據庫指定數據庫的數據文件所在位置初始容量最大容量

  和文件增長的數量

  create database 例三數據庫

  on

  (

  name=例三數據庫

  filename=d:DBtest例三數據庫mdf

  size=MB

  maxsize=MB

  filegrowth=%

  )

  例四: 創建一個數據庫指定數據庫的數據文件和日志文件所在位置

  create database 例四數據庫

  on

  (

  name=例四數據庫數據文件

  filename=D:DBtest例四數據庫數據文件mdf

  size=MB

  maxsize=MB

  filegrowth=%

  )

  log on

  (

  name=例四數據庫日志文件’

  filename=D:DBtest例四數據庫日志文件ldf

  )

  例五創建一個數據庫它總共包含五個數據文件和兩個自定義的文件組

  create database 例五數據庫

  on

  (

  name=例五數據庫數據文件

  filename=d:DBtest例五數據庫數據文件mdf

  size=MB

  maxsize=MB

  filegrowth=%

  )(

  name=例五數據庫數據文件

  filename=d:DBtest例五數據庫數據文件ndf

  size=MB

  maxsize=MB

  filegrowth=%

  )

  filegroup 例五數據庫數據文件組

  (

  name=例五數據庫數據文件組的數據文件

  filename=d:DBtest例五數據庫數據文件組的數據文件ndf

  size=MB

  maxsize=MB

  filegrowth=%

  )

  filegroup 例五數據庫數據文件組

  (

  name=例五數據庫數據文件組的數據文件

  filename=d:DBtest例五數據庫數據文件組的數據文件ndf

  size=MB

  maxsize=MB

  filegrowth=%

  )(

  name=例五數據庫數據文件組的數據文件

  filename=d:DBtest例五數據庫數據文件組的數據文件ndf

  size=MB

  maxsize=MB

  filegrowth=%

  )

  log on

  (

  name=例五數據庫日志

  filename=d:DBtest例五數據庫日志文件ldf

  )

  例六: 創建一個數據庫並指定排序規則

  create database 例六數據庫

  on

  (

  name=例六數據庫

  filename=d:DBtest例六數據庫mdf

  )

  collate Chinese_PRC_CI_AS

  在使用collate指定排序規則之前一定要先知道排序規則名

  為何才能知道排序規則名呢?請用下面的SQL語句查詢

  select * from ::fn_helpcollations ()

  三修改數據庫設置

   使用SQL Server Management Studio修改數據庫設置

  ) 查看數據庫的基本信息

  【數據庫屬性】【 基本】選項頁裡可以看到數據庫的基本信息

  ) 增加刪除與修改數據庫文件

  【數據庫屬性】【文件】選項頁裡

image

  重點 典型案例

  例七: 將名為"例二數據庫"的數據庫改名為"例七數據庫"

  方法一:

  alter database 例二數據庫

  modify name = 例七數據庫

  方法二:

  exec sp_renamedb 例二數據庫例七數據庫

  

  例八為“例六數據庫”增加一個數據文件

  alter database 例六數據庫

  add file (name=增加的數據文件

  filename=d:DBtest例六數據庫增加的數據文件ndf)

  

  例九為“例六數據庫”增加一個日志文件

  alter database 例六數據庫

  add log file (name=例九增加的日志文件

  filename=d:DBtest例九增加的日志文件ldf

  size=MB

  maxsize=MB

  filegrowth=% )

  

  例十將“例六數據庫”中名為“增加的數據文件”的數據文件改名

  alter database 例六數據庫

  modify file(name=增加的數據文件

  newname = 例十數據文件

  filename = d:DBtest例十數據文件ndf)

  例十一: 修改’例六數據庫’的排序規則

  alter database 例六數據庫

  collate Chinese_PRC_CI_AS_KS

  例十二: 在’例六數據庫’裡刪除一個數據文件

  alter database 例六數據庫

  remove file 例十數據文件

  例十三: 在’例六數據庫’裡添加一個文件組

  alter database 例六數據庫

  add filegroup 例十三文件組

  例十四: 在’例六數據庫’裡為一個文件組改名

  alter database 例六數據庫

  modify filegroup 例十三文件組

  name=例十四文件組

  例十五: 在’例六數據庫’裡添加一個數據文件(如例十五數據文件)到一個文件組(如例十四文件組)並將該文件組設置為默認文件組因alter database一次只能修改數據庫的一個屬性故下例中使用了個alter database語句

  alter database 例六數據庫

  add file (name=例十五數據文件

  filename=’d:DBtest例十五數據文件ndf’)

  to filegroup 例十四文件組

  go

  alter database 例六數據庫

  modify filegroup 例十四文件組 default

  例十六: 在“例六數據庫”裡刪除“例十四文件組”由於“例十四文件組”是默認文件組其中又包含了一個文件(例十五數據文件)要從“例六數據庫”中刪除“例十四文件組”必須先進行以下操作

  ()將其他文件組設置為默認文件組如本例中將PRIMARY文件組設置為默認文件組

  由於PRIMARY是保留字故在使用它的時候要用方括號括起來

  alter database 例六數據庫

  modify filegroup [PRIMARY] default

  ()刪除“例十四文件組”中包含的“例十五數據文件”

  alter database 例六數據庫

  remove file 例十五數據文件

  ()刪除“例十四文件組”

  alter database 例六數據庫

  remove filegroup 例十四文件組

  例十七將“例六數據庫”裡的一個文件組設置為只讀

  ()由於primary文件組是不能設置為只讀的故先添加一個文件組(如例十七文件組)

  alter database 例六數據庫

  add filegroup 例十七文件組

  ()由於空文件組(如例十七文件組)是不能設置為只讀的所以要再添加一個文件(如例十七數據文件)到該文件組中

  alter database 例六數據庫

  add file (name=例十七數據文件

  filegroup=’d:Dbtest例十七數據文件ndf’)

  to filegroup 例十七文件組

  ()將文件組(例十七文件組)

  alter database 例六數據庫

  modify filegroup 例十七文件組 read_only

  例十八將“例六數據庫”設置為只有一個用戶可訪問

  alter database 例六數據庫

  set single_user

  例十九設置“例六數據庫”可自動收縮

  alter database 例六數據庫

  set auto_shrink on


From:http://tw.wingwit.com/Article/program/MySQL/201311/29524.html
  • 上一篇文章:

  • 下一篇文章:
  • 推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.