حسین احمدی
بنیانگذار توسینسو و برنامه نویس و توسعه دهنده ارشد وب

آموزش بکاپ گیری از SQL Server در شبکه به زبان ساده

تهیه پشتیبان از بانک های اطلاعاتی یکی از کارهای بسیار مهم در سازمان ها است که باعث می شود در صورت بروز مشکل در بانک های اطلاعاتی بتوان از نسخه های پشتیبان موجود اطلاعات را بازیابی کرد. تهیه پشتیبان بر روی سیستم های Local کار مشکلی نیست.

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

اما اگر بخواهیم در یکی از پوشه های Share شده در محیط شبکه عملیات پشتیبان گیری را انجام دهیم کمی موضوع تفاوت دارد. در این مطلب قصد داریم تا نحوه تهیه پشتیبان در محیط شبکه را خدمت دوستان آموزش دهم. بکاپ گیری از دیتابیس یکی از مهمترین نکات در آموزش SQL Server است که همیشه باید آن را به خاطر داشته باشیم.

برای این آموزش فرض شده یک سیستم با نام BackupClient در شبکه وجود دارد که پوشه ای با نام SqlBackups در آن به اشتراک گذاشته شده و بوسیله کاربری با نام backupuser و با کلمه عبور 123 می توان به آن پوشه دسترسی داشت. در حالت عادی پوشه مورد نظر در محیط SQL Server در دسترس نیست و باید این پوشه به عنوان یک Drive در محیط SQL Server تعریف شود.

حتماً با دستور net use آشنا هستید که یک مسیر شبکه را به عنوان یک Drive در سیستم شما اضافه می کند. در SQL Server می توان از XP_CMDSHELL برای اجرای دستورات محیط Command استفاده کرد. اما قبل از هر کاری باید قابلیت این دستور را در SQL Server فعال کنیم. برای اینکار پنجره Query Editor را باز کرده و دستورات زیر را به ترتیب اجرا می کنیم:

exec sp_configure 'show advanced options',1;
go
reconfigure;
go
exec sp_configure 'xp_cmdshell',1;
go

با اجرای دستورات بالا امکان اجرای دستورات محیط Command در SQL Server فراهم می شود، در قدم بعدی باید دستور net user را در پنجره Query Editor به صورت زیر اجرا کنید:

exec xp_cmdshell 'net use z: \\BackupClient\SqlBackups /user:backupuser 123'

با اجرای دستور بالا مسیر مشخص شده با نام کاربری و کلمه عبور تعیین شده در SQL Server اضافه می شود. حال اگر پنجره Backup یا Restore را باز کنید مسیر تعریف شده یعنی درایو z به لیست درایو ها اضافه شده است. همچنین می توان بوسیله دستور backup database عملیات پشتیبان گیری را به صورت زیر انجام داد:

backup database [dbname]
to disk='z:\dbbackup.bal'
with
name='backup name'

امیدوارم این نکته مورد استفاده دوستان قرار بگیرد.


حسین احمدی
حسین احمدی

بنیانگذار توسینسو و برنامه نویس و توسعه دهنده ارشد وب

حسین احمدی ، بنیانگذار TOSINSO ، توسعه دهنده وب و برنامه نویس ، بیش از 12 سال سابقه فعالیت حرفه ای در سطح کلان ، مشاور ، مدیر پروژه و مدرس نهادهای مالی و اعتباری ، تخصص در پلتفرم دات نت و زبان سی شارپ ، طراحی و توسعه وب ، امنیت نرم افزار ، تحلیل سیستم های اطلاعاتی و داده کاوی ...

نظرات