در این مقاله به بررسی اقدامات مورد نیاز برای مهاجرت Power bi report server از سرور قبلی به سرور جدید می پردازیم. طی این مراحل گزارشات موجود در سرور قدیمی نیز در سرور جدید بازیابی می شوند.

مقدمه

برای اشتراک گذاری گزارشات ساخته شده در Power bi desktop می توانیم از دو روش استفاده کنیم. یک روش به اشتراک گذاری گزارشات از طریق Power bi service است. در این روش در واقع گزارش ما بر روی سرورهای مایکروسافت بارگذاری می شود. برای اشتراک گزارشات در Power bi service نیاز به تهیه یوزر به ازای کاربران مد نظر با پرداخت هزینه است.

روش دوم استفاده از Power bi report server است.  برخلاف روش اول، Power bi report server بر روی سرورهای سازمان نصب می شود و به صورت ابری نیست  و اصلاحا on premise گفته می شود. مزیت این روش در این است که ما کنترل کاملی بر روی گزارشات سازمان داریم و اطلاعات بر روی سرورهای مایکروسافت بارگذاری نمی شود. برای یادگیری روش نصب و تنظیمات Power bi report server، می توانید به این مقاله مراجعه کنید.

در سازمانها مواقعی پیش می آید که سرورهای موجود را بنا به دلایل امنیتی، قدیمی بودن نرم افزارها و یا سایر دلایل کنار میگذارند و از سرورهای جدیدی برای مقاصد سازمان استفاده می شود. این مورد ممکن است برای سروری که Power bi report server بر روی آن نصب شده نیز رخ دهد. بنابراین نیاز است Power bi report server بر روی سرور جدید راه اندازی شود و نیز گزارشاتی که بر روی آن به اشتراک گذاشته شده نیز به سرور جدید انتقال یابند. به این عمل در اصطلاح مهاجرت یا Migration به سرور جدید می گویند.

برای انجام Migration به سرور جدید بدون از دست رفتن گزارشات نیاز به برخی اقدامات از جمله بکاپ گرفتن دیتابیس ReportServer در سرور قدیمی و نیز بکاپ گیری Encryption Keys در سرور قدیمی است. در صورتی که با مورد بکاپ گیری از دیتابیس آشنایی ندارید می توانید به این مقاله مراجعه کنید.

بکاپ گیری

همانطور که گفتیم برای مهاجرت به سرور جدید نیاز است تا در سرور فعلی از دیتابیس ReportServer و نیز Encryption Keys بکاپ بگیریم. بکاپ گیری از ReportServer به این دلیل است که اطلاعات ریپورت ها و داشبورد های منتشر شده فعلی در این دیتابیس نگهداری می شود. بکاپ گیری از Encryption Keys نیز به این دلیل است که Power bi report server برای ذخیره Connection String گزارشات آنها را رمز گذاری می کند و برای بازیابی آنها به Encryption Keys نیاز دارد.

گام اول بکاپ گیری دیتابیس ReportServer است. ابتدا بر روی دیتابیس راست کلیک کرده و از منوی Tasks گزینه Backup را انتخاب می کنیم.  در پنجره باز شده از قسمت Database، دیتابیس ReportServer را انتخاب می کنیم. از قسمت Backup Type گزینه Full را انتخاب می کنیم. و در قسمت Backup to با زدن گزینه Add می توانیم مسیر دیگری برای ذخیره فایل بکاپ انتخاب کنیم. دقت کنید که سرویس اکانت SQL باید به این محل دسترسی داشته باشد.برای آشنایی بیشتر با بکاپ و بازیابی در SQL Server می توانید به این مقاله مراجعه کنید.


 در سربرگ Media options در قسمت Overwrite Media نیز گزینه Overwrite all existing backups را انتخاب می کنیم تا بکاپ های قبلی با بکاپ فعلی جایگزین شوند.


برای بکاپ گیری Encryption Keys  باید وارد Report server configuration manager بشویم. بر روی Connect  کلیک می کنیم. از ریبون سمت چپ وارد قسمت Encryption Keys می شویم. بر روی Backup کلیک کرده و در قسمت File Location  مسیر ذخیره سازی فایل را انتخاب میکنیم. در Password , Confirm Password نیزز باید یک پسورد را وارد نماییم. این پسورد را ذخیره نمایید زیرا برای بازیابی به این پسورد نیاز است. 


بازیابی (Restore) در سرور جدید

پس از انجام بکاپ گیری در سرور قبلی، نیاز است بکاپ ها در سرور جدید بازیابی (Restore) شوند. برای بازیابی دیتابیس، پس از نصب SQL Server در سرور جدید،  با باز کردن SSMS بر روی پوشه Databases کلیک کرده و Restore Databases را انتخاب کنید. برای آموزش نصب SQL Server می توانید به این مقاله مراجعه کنید. همچنین برای بررسی جزییات بکاپ و بازیابی دیتابیس می توانید به این مقاله مراجعه کنید.


پس از باز شدن پنجره Restore Databases از قسمت Source، گزینه Device را انتخاب می کنیم و با کلیک بر روی علامت سه نقطه، محل ذخیره سازی فایل بکاپ را انتخاب می کنیم و در نهایت در پنجره Restore Databases بر روی OK کلیک میکنیم تا دیتابیس بازیابی شود.

پس از بازیابی دیتابیس جدید نیاز است تا Power bi report server در سرور جدید نصب شود. برای نصب و تنظیمات  Power bi report server می توانید به این مقاله مراجعه کنید. پس از نصب Power bi report server و هنگام انجام تنطیمات در قسمت تنطیم دیتابیس، دیتابیس جدید ایجاد نکنید و دیتابیس بازیابی شده را به عنوان دیتابیس معرفی کنید. برای اینکار در پنجره تنظیمات ریپورت سرور گزینه Choose an existing report server database را انتخاب کنید و باز کلیک Next و در مراحل بعدی به ترتیب سرور و دیتابیس مورد نظر که همون دیتابیس بازیابی شده است را انتخاب کنید. 


در آخر با ورد یه تنظیمات ریپورت سرور و در قسمت Encryption Keys از قسمت Restore فایل کلید را که در سرور قبلی بکاپ گرفته بودیم بازیابی می کنیم.


پس از انجام این مراحل و با ورود به آدرس ریپورت سرور در مرورگر باید گزارشات موجود در سرور قبلی خود را ببینید.


پایان