Đặt mã hóa mã hóa được kích hoạt trên mạng thành FALSE, điều gì có thể xảy ra?


7

Tôi đang di chuyển một cơ sở dữ liệu từ SQL Server 2012đến SQL Server 2014trên cùng một máy chủ.

Tôi đang định cấu hình LOG VẬN CHUYỂN trên cơ sở dữ liệu được mã hóa rõ ràng:

nhập mô tả hình ảnh ở đây

Khi thiết lập vận chuyển nhật ký, tôi nhận được thông báo này (khi nó bắt đầu khôi phục cơ sở dữ liệu từ bản sao lưu):

nhập mô tả hình ảnh ở đây

Tôi là DBA mới ở đây và không có báo cáo về khóa chính, khóa được mã hóa, v.v.

Tôi đang thiết lập vận chuyển nhật ký từ SQL2012 sang SQL2014 (với norecovery). Điều gì có thể sai nếu tôi đặt cơ sở dữ liệu này Encryption enabled - falsevà cố gắng khôi phục cơ sở dữ liệu bằng trình hướng dẫn vận chuyển nhật ký?

Có một số câu hỏi về vấn đề này, như Cái này , nhưng tất cả chúng đều nói tôi cần mật khẩu.

Tôi vừa tìm thấy chứng chỉ này trên master > security > certificatesmáy chủ chính (2012):

nhập mô tả hình ảnh ở đây

Và có một số mẫu mã trên Interet nhưng tôi thực sự không thể tin chúng (tôi không nghĩ nó quá đơn giản):

`USE MASTER
GO
ALTER DATABASE DatabaseName
SET ENCRYPTION OFF
GO
USE DatabaseName
GO
DROP DATABASE ENCRYPTION KEY
GO`

Chỉnh sửa1:

Trong câu hỏi này, Dylon nói:

Nếu bạn nhận được lỗi vân tay, chứng chỉ không được tạo đúng từ bản sao lưu Chứng chỉ / Khóa của Máy chủ Nguồn.

Tôi bối rối về chủ đề này và tất cả những gì tôi muốn là vô hiệu hóa mã hóa, khôi phục cơ sở dữ liệu trên máy chủ khác để đăng nhập vận chuyển và một ngày nào đó, kích hoạt mã hóa.


Chỉnh sửa2:

Trên Database > tasks > manage database encryptionđó cũng có một số tùy chọn:

nhập mô tả hình ảnh ở đây

Vô hiệu hóa điều này, tôi sẽ có thể sao lưu cơ sở dữ liệu một lần nữa và khôi phục nó trên trường hợp mới?

Câu trả lời:


7

Không được tắt TDE. Bên cạnh đó là một hoạt động kích thước dữ liệu dài, nó được thành lập ban đầu vì một lý do và bạn có thể phá vỡ bất kỳ lý do tuân thủ / hoạt động nào tồn tại cho TDE.

Thay vì thiết lập vận chuyển nhật ký đúng cách với sự hiện diện của TDE. Làm theo các bước được mô tả trong Di chuyển cơ sở dữ liệu được bảo vệ TDE sang máy chủ SQL khác . Bạn sẽ xuất chứng chỉ TDE từ máy chủ gốc và sau đó nhập nó trên máy chủ dự phòng, đảm bảo rằng nó được mã hóa bằng masterkhóa chính cơ sở dữ liệu và khóa chính của cơ sở dữ liệu masterlần lượt được mã hóa bằng khóa chính của dịch vụ. Sau đó, nếu được thực hiện chính xác, các hoạt động khôi phục sẽ thành công khi có chứng chỉ TDE cần thiết.

Để sao chép chứng chỉ: Chứng chỉ nằm trong mastercơ sở dữ liệu của phiên bản chính. Bạn cần chạy:

BACKUP CERTIFICATE TDE_CERT 
 TO FILE <where to save cert> 
 WITH PRIVATE KEY (FILE = <where to save private key>, 
  ENCRYPTION BY PASSWORD = <password for the private key file>);

Sau đó sao chép cả hai tệp cert và private vào tệp phụ và khôi phục nó masterbằng cách sử dụng:

 CREATE CERTIFICATE TDE_CERT 
  FROM FILE = <your copied cert file> 
  WITH PRIVATE KEY (FILE = <your copied private key file>,
   DECRYPTION BY PASSWORD = <password that protects private key file>);

TDE_CERTtrong masternhu cầu thứ cấp cần được mã hóa bằng masterkhóa chính cơ sở dữ liệu, có thể sẽ cần phải được tạo.


@Resmus, cảm ơn bạn rất nhiều vì câu trả lời của bạn. Tôi đã nói chuyện với người quản lý và chúng tôi thực sự không cần mã hóa này. Nó đã được tạo ra từ lâu bởi một DBA và chúng tôi thực sự không cần nó bây giờ. Nhưng tôi sẽ đọc blog của bạn và xem những gì tôi có thể làm. Cảm ơn bạn rất nhiều và tôi sẽ đăng kết quả sau. Và vâng, cơ sở dữ liệu của chúng tôi là 1,5tb. Sẽ mất một thời gian để vô hiệu hóa mã hóa, phải không?
Racer SQL

2
Đúng, tỷ lệ phần trăm cho thấy sự tiến bộ. Bạn có thể chạy DROP DATABASE ENCRYPTION KEYsau khi giải mã hoàn tất.
Remus Rusanu

1
Ngoài ra, bạn sẽ cần đảm bảo không có bản ghi nhật ký nào trùng lặp với bất kỳ kỷ nguyên được mã hóa nào của cơ sở dữ liệu trước khi thử khôi phục trên thứ cấp. Bắt đầu với một bản sao lưu đầy đủ mới được thực hiện sau DROP DATABASE ENCRYPTION KEY.
Remus Rusanu

1
Cảm ơn đã đăng bài theo dõi. Bây giờ chúng ta có thể chỉ ra ở đây những người khác hỏi "việc xóa TDE 1.4Tb sẽ kéo dài bao lâu?" ;)
Remus Rusanu

1
Ngoài ra, bây giờ bạn có thể kích hoạt tính năng nén sao lưu msdn.microsoft.com/en-us/l Library / bb934049.aspx : Dữ liệu được mã hóa nén ít hơn đáng kể so với dữ liệu không được mã hóa tương đương. Nếu TDE được sử dụng để mã hóa cơ sở dữ liệu, nén sao lưu sẽ không thể nén đáng kể bộ lưu trữ sao lưu. Do đó, không nên sử dụng TDE và nén sao lưu cùng nhau. .
Remus Rusanu
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.