Danh mục

Attach cơ sở dữ liệu trong Microsoft SQL Server 2008

Số trang: 8      Loại file: pdf      Dung lượng: 203.03 KB      Lượt xem: 7      Lượt tải: 0    
tailieu_vip

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Trong SQL Server 7.0, Microsoft đã giới thiệu hai thủ tục lưu trữ hệ thống là sp_attach_db và sp_attach_single_file_db, giúp các nhà quản trị cơ sở dữ liệu thuận tiện hơn khi thực hiện các tác vụ sau:•Attach trực tiếp các file .MDF và .LDF vào máy chủ bằng cách sử dụng thủ tục lưu trữ hệ thống sp_attach_db.•Chỉ Attach các file .MDF bằng cách sử dụng thủ tục lưu trữ hệ thống sp_attach_single_file_db.•Detach cơ sở dữ liệu khỏi máy chủ bằng cách sử dụng sp_detach_db. Copy các file .MDF tới máy chủ khác rồi sau đó attach lại vào...
Nội dung trích xuất từ tài liệu:
Attach cơ sở dữ liệu trong Microsoft SQL Server 2008Attachco cơ sở dữ liệu Microsoft SQL Server 2008Nguồn : 3c.com.vn Attach cơ sở dữ liệu trong Microsoft SQL Server 2008 Bài viết này sẽ minh họa các phương pháp sử dụng khác nhau của mệnh đề “For Attach” nhằm vượt qua những điểm hạn chế gặp phải khi sử dụng sp_attach_db và sp_attach_single_file_db. Trong SQL Server 7.0, Microsoft đã giới thiệu hai thủ tục lưu trữ hệ thống là sp_attach_db và sp_attach_single_file_db, giúp các nhà quản trị cơ sở dữ liệu thuận tiện hơn khi thực hiện các tác vụ sau: Attach trực tiếp các file .MDF và .LDF vào máy chủ bằng cách sử • dụng thủ tục lưu trữ hệ thống sp_attach_db. Chỉ Attach các file .MDF bằng cách sử dụng thủ tục lưu trữ hệ thống • sp_attach_single_file_db. Detach cơ sở dữ liệu khỏi máy chủ bằng cách sử dụng • sp_detach_db. Copy các file .MDF tới máy chủ khác rồi sau đó attach lại vào cả hai máy chủ bằng cách sử dụng thủ tục lưu trữ hệ thống sp_attach_db.Mặc dù cả hai thủ tục này đều hữu ích với các chuyên viên quản trị cơ sởdữ liệu, thế nhưng vẫn có những hạn chế nhất định, đó là: Bạn không thể attach nhiều file log • Bạn không thể attach nhiều hơn 16 file •Trong phiên bản SQL Server 2008, Microsoft công bố rằng các thủ tục lưutrữ hệ thống trên sẽ bị “bỏ xó”. Thay vào đó, Microsoft bổ sung mệnh đề“For Attach” trong câu lệnh “Create Database” của SQL.Bài viết này sẽ minh họa các phương pháp sử dụng khác nhau của mệnhđề “For Attach” nhằm vượt qua những điểm hạn chế gặp phải khi sử dụngsp_attach_db và sp_attach_single_file_db.Giả dụ chúng ta có cơ sở dữ liệu “MyDB1” với một file .MDF và một file.LDF t ại vị trí C:Program FilesMicrosoft SQLServerMSSQL10.SQL2008MSSQLDATASummary Database DataData File forMonthly ArchiveMicrosoft SQL Server 2008 Data File. Khởi tạo cơ sở dữliệu bằng cách sử dụng đoạn mã Transact SQL sau đây.Use MastergoCREATE DATABASE MyDB1ON( NAME = MyDB1_dat, FILENAME = C:Program Files Microsoft SQL ServerMSSQL10.SQL2008MSSQLDATA Summary Database DataData File for Monthly Archive Microsoft SQL Server 2008 Data FileMyDB1.mdf, SIZE = 10, MAXSIZE = 50, FILEGROWTH = 5 )LOG ON( NAME = MyDB1_log, FILENAME = C:Program Files Microsoft SQL ServerMSSQL10.SQL2008MSSQLDATA Summary Database DataData File for Monthly Archive Microsoft SQL Server 2008 Data FileMyDB1.ldf, SIZE = 5MB, MAXSIZE = 25MB, FILEGROWTH = 5MB )GOBây giờ hãy thử detach cơ sở dữ liệu này và attach lại bằng cách sử dụngsp_detach_db và sp_attach_db. Chạy đoạn mã T-SQL sau đây:use mastergosp_detach_db MyDB1gosp_attach_db MyDb1,C:Program FilesMicrosoft SQLServerMSSQL10.SQL2008MSSQLDATASummary Database Data Data File for Monthly ArchiveMicrosoft SQL Server 2008 DataFileMyDB1.mdf,C:Program FilesMicrosoft SQLServerMSSQL10.SQL2008MSSQLDATASummary Database Data Data File for Monthly ArchiveMicrosoft SQL Server 2008 DataFileMyDB1.ldfGOBạn có thể attach cơ sở dữ liệu trên bằng cách sử dụng lệnh “Createdatabase” với mệnh đề “For Attach” như sau:use mastergosp_detach_db MyDB1goCREATE DATABASE MyDB1ON(FILENAME = C:Program FilesMicrosoft SQLServerMSSQL10.SQL2008MSSQLDATASummary Database Data Data File for Monthly ArchiveMicrosoft SQL Server 2008 DataFileMyDB1.mdf),(FILENAME = C:Program FilesMicrosoft SQLServerMSSQL10.SQL2008MSSQLDATASummary Database Data Data File for Monthly ArchiveMicrosoft SQL Server 2008 DataFileMyDB1.ldf) for AttachgoBây giờ hãy detach cơ sở dữ liệu MyDB1 sau đó xóa file .LDF, tiếp theoattach lại sử dụng thủ tục lưu trữ hệ thống sp_attach_single_file_db bằngcách thực thi đoạn mã T-SQL sau:use mastergosp_detach_db MyDB1goexec master..xp_cmdshell del C:Program FilesMicrosoft SQLServerMSSQL10.SQL2008MSSQLDATASummary Database Data Data File for Monthly ArchiveMicrosoft SQL Server 2008 DataFileMyDB1.ldfgoLưu ý: Trong đoạn mã trên tôi sử dụng xp_cmdshell để xóa file .LDF. Bạnsẽ nhận thông báo lỗi sau đây nếu xp_cmdshell chưa được kích hoạt:Msg 15281, Level 16, State 1, Procedure xp_cmdshell, Line 1SQL Server blocked access to procedure ...

Tài liệu được xem nhiều: