Hướng dẫn chuyển Database từ máy này sang máy khác SQL Server
Hướng dẫn thực hiện chuyển 1 Database từ máy tính này sang máy tính khác và dữ liệu, các bảng,.. vẫn được giữ nguyên trong SQL Server.
Mình có 1 Database tên: TruongGiangIT trong này có Table Users có dữ liệu đã Insert sẵn, giờ mình muốn gửi Database này cho một người khác sử dụng hoặc mình muốn sao chép sang 1 máy tính khác sử dụng SQL Server.
Cách 1: Sử dụng Detach CSDL
Backup dữ liệu
Bước 1: Chuột phải Database > Tasks > Detach…
Bước 2: Thực hiện Copy 2 file Database
*Thường là 2 file này trong thư mục Data các bạn truy cập đường dẫn sau: C:\Program Files\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\DATA
*Copy xong, bạn chỉ cần gửi 2 file này cho người khác là có thể khôi phục dữ liệu trên máy khác.
Khôi phục trên máy khác
Sau khi nhận được 2 file này, bạn dán 2 file này vào đường dẫn lúc này nhé
Đường dẫn: C:\Program Files\Microsoft SQL Server\MSSQL11.SQLEXPRESS\MSSQL\DATA
Thực hiện dán xong các bạn Attach… lại Database
Thực hiện: Chuột phải Database > Attach.. > Add > Chọn TruongGiangIT.mdf > OK > OK
Database TruongGiangIT đã chuyển thành công.
Sau đó sẽ thấy Database đã thêm thành công! Nếu chưa có thì các bạn Refresh lại để thấy Database đã có trong SQL Server chưa nhé!
Cách 2: Xuất file .sql
Cách này chúng ta sẽ xuất file định dạng .sql từ máy này và chạy file .sql này trên máy khác để có được CSDL cần khôi phục.
Backup dữ liệu
Bước 1: Nhấn chuột phải vào Database chọn Tasks > Generate Scripts…
Bước 2: Nhấn Next để tiếp tục
Bước 3: Các bạn có thể chọn 1 số Table hoặc có thể lấy tất cả (Trong ảnh mình sẽ lấy hết tất cả)
Chọn Select specific database objects > check Tables
Bước 4: Để xuất file .sql kèm dữ liệu thì cần cấu hình như sau: Advanced > Tại: Types of data to script chọn “Schema and data (Có cả dữ liệu trong file xuất ra) > OK > Next
Bước 5: Nhấn Next để tiếp tục
Bước 6: Kiểm tra trạng thái xuất file và nhấn Finish để hoàn tất quá trình xuất file script.sql
Như vậy chúng ta đã xuất thành công file script.sql nằm trong đường dẫn: C:\Users\vip\Documents\script.sql bây giờ chúng ta sẽ tiến hành chạy file script.sql này.
Khôi phục dữ liệu
Bước 1: Mở SQL Server chọn File > Open > File…
Bước 2: Chọn file script.sql để mở trong SQL Server
Bước 3: Chúng ta cần tạo 1 Database giống với tên của Database cũ để chứa dữ liệu sắp nhập vào.
VD: Trong trường hợp này chúng ta phải tạo Database tên TruongGiangIT
Bước 4: Chọn tất cả câu lệnh và nhấn Execute. Kết quả thành công sẽ hiện thông báo: Command(s) completed successfully. Mở Datbase TruongGiangIT ra sẽ thấy tất cả các bảng và dữ liệu chúng ta cần.
OK như vậy thì mình đã hướng dẫn các bạn mà lấy dữ liệu trong SQL Server từ máy này sang máy khác thành công qua 2 các trên. Nếu thao tác có lỗi xảy ra, vui lòng để lại bình luận để mình hỗ trợ.
Chúc các bạn thành công!
Cảm ơn, mình đa làm đc
Mình lỗi không chuyen dc ad ơi
Mình đã thực hiện như trên, nhưng khi chạy thì báo lỗi này: “update statement conflicted with the foreign key constraint”. bạn giúp mình nhé
Chào bạn.
Nếu bạn thực hiện như vậy bị lỗi thì có thể Backup Database theo cách sau:
– Chọn phải Database -> Tasks -> Generate Scripts…-> Nhận được file scripts.sql
– Tạo Database mới -> mở file đó lên và chọn Query
Xem thêm bài hướng dẫn: https://docs.microsoft.com/en-us/sql/relational-databases/backup-restore/create-a-full-database-backup-sql-server
Bạn ơi cho mình hỏi. Mình muốn khi mang đến máy khác attach được rồi nhưng khi vào sql phải có mật khẩu thì làm thế nào
Mật khẩu của tài khoản “sa” hay là mật khẩu của gì bạn nói rõ hơn để mình giúp ạ!
minh muon chuyen data tu sql 2012 sang sql 2008 thi sao anh
Làm giống cách 2 trên đó là OK bạn ơi