سلام دوستان
تو این آموزش می خوایم کاری کنیم که اگه بانکمون دزدیده شد کسی نتونه attach ش کنه:
راستی حالا که تاپیک مخصوص sql درست کردین چرا تگ برای سینکسش نمی ذارن؟
اول از هرجی میام یه شاه کلید می سازیم و یه پسورد بهش اختصاص میدیم:
کد:
use master
go
create master key
encryption by password='mymasterkeypassword'
بعد از اون میایم یه جواز می سازیم:
کد:
go
create certificate tde_server_certificate
with subject ='server_lever cert for tde'
حالا فرض کنید دیتا بیسی که میخوایم عملیات حفاظت رو روش انجام بدیم اسمش ali هست، میایم داخلی این دیتابیس و یه کلید رمزنگاری پایگاه داده ایجاد می کنیم:
کد:
use ali
go
create database encryption key
with algorithm = triple_des_3key
encryption by server certificate tde_server_certificate
بعد از این مرحلهsql server پیغام میده که از کلید خصوصی و جواز پشتیبان باید گرفته بشه وگرنه این دیتابیس هیچ جای دیگه ای نمی تونه باز بشه، پس ما هم میایم از این دوتا مورد به شکل زیر پشتیبان می گیریم(توجه کنید که دوباره به دیتابیس master برمیگردیم):
کد:
use master
backup certificate tde_server_certificate
to file='c:\cert.bak'
with private key(file='c:\certpk.bak',
encryption by password='myprivatekeypassword')
تا اینجای کار مربوط به انجام کار حفاظت بود، حالا فرض کنید این دیتابیس رو سیستم دیگه ایم می خواد attach بشه، باید به شکل زیر استفاده کنیم:
برای تست هم می تونید از vmware استفاده کنید:
اول سعی کنید دیتابیستونو توی اون سیستم attach کنید:
کد:
use master;
go
exec sp_attach_db 'ali','c:\ali.mdf'
پیغام میده که شما جواز انجام این کار رو ندارید:
حالا بیاید جوازی رو که با کلید خصوصی ازشون پشتیبان گرفتیم رو restore کنیم:
کد:
use master;
go
create certificate tde_server_certificate
from file='c:\cert.bak'
with private key(file='c:\certpk.bak',
decryption by password='myprivatekeypassword')
بعد از این مرحله می تونید دیتابیستونو attach کنید:
کد:
exec sp_attach_db 'ali','c:\ali.mdf'
اگه کدها خوب معلوم نبود(به علت نبود تگ sql) می تونید به اینجا سر بزنید:
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.
دوستان اگه خیلی سربسته گفتم عذر می خوام، ولی خوب چندان چیزی هم برای گفتن نداشت
برگرفته از کتاب "آموزش گام به گام microsoft sql server 2008" از آقای اسلام احمدزاده