SQLServer 2008에서 실행되는 제품을 사용하고 있습니다. 당연히이 제품을 제공하는 회사는 SQLServer 지원을 제공하지 않습니다. 제품을 설치할 때 데이터베이스를 암호화하기 위해 비밀번호를 지정했습니다. 다른 서버에서 테스트하기 위해 제품의 다른 사본을 실행하고 싶습니다. 데이터베이스를 다른 서버로 복원하고 해당 다른 서버에 제품을 설치했습니다. 설치시 동일한 암호를 입력 한 후 기본 서버에서 백업을 복원했습니다. 그러나 오류 메시지가 나타납니다.
System.Data.SqlClient.SqlException: An error occurred during decryption.
제품에서. SQLServer Management Studio를 사용하여 테이블에 액세스 할 수 있습니다.
나는 이것을 시도했다 :
첫 번째 서버에서 :
CREATE CERTIFICATE cert1 WITH SUBJECT = 'Certificate for my stuff'
BACKUP CERTIFICATE cert1 TO FILE = 'd:\backup\cert1.dat'
WITH PRIVATE KEY
(
ENCRYPTION BY PASSWORD = 'mypassword',
FILE = 'd:\backup\cert1_privatekey.dat'
)
두 번째 서버에서 :
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'mypassword'
CREATE CERTIFICATE cert1 FROM FILE = 'd:\cert1.dat'
WITH PRIVATE KEY
(
FILE = 'd:\cert1_privatekey.dat',
DECRYPTION BY PASSWORD = 'mypassword'
)
나는 또한 두 번째 서버에서 이것을 시도했다 :
alter MASTER KEY regenerate with enCRYPTION BY PASSWORD='password'
그러나 그것은 비대칭 키에 대한 오류 메시지를 주었다.
첫 번째 서버에서 두 번째 서버로 백업을 어떻게 복원 할 수 있습니까?
최신 정보:
데이터베이스에는 비대칭 및 대칭 키도 있습니다. 비대칭 키를 사용하여 대칭 키를 열면 동일한 오류가 발생하므로 작동하지 않는 이유가 있습니다. 어떻게 든 키를 사용할 수있는 방식으로 전송되지 않습니다.