تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 3 123 آخرآخر
نمايش نتايج 1 به 10 از 22

نام تاپيک: بدست آوردن محل نصب نرم افزار و طریقه Restore کردن دیتابیس

  1. #1
    اگه نباشه جاش خالی می مونه M-B-M's Avatar
    تاريخ عضويت
    Mar 2006
    محل سكونت
    ایران - مشهد
    پست ها
    371

    14 بدست آوردن محل نصب نرم افزار و طریقه Restore کردن دیتابیس

    سلام
    من از این دستورات برای پشتیبان گیری از دیتابیس استفاده می کنم:
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    اولا: چگونه باید آدرس جایی که نرم افزار نصب شده را بدست بیاورم که در آنجا این نسخه پشتیبان را بریزم(مثلا در آدرس “E:\Soft\progeram\DBBackup\”)؟
    ثانیا: اگر که بخواهم که این نسخه پشتیبان را روی سرور بریزم چگونه باید این کار را انجام بدهم(اگر به آدرس مورد نظر روی سرور این کامپیوتر Permission (اجازه نوشتن) نداشته باشد چکار باید بکنم)؟
    ثالثا: معادل همین دستورات را برای Restore دیتابیس استفاده می کنم و با این خطا روبرو می شوم
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    چطور Connection را Close کنم؟
    رابعا: چگونه برای این backup پسورد بذارم تا قابل دسترسی برای همگان نباشد؟

  2. #2
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    1) دستور زیر مسیر جاری برنامه را به شما میدهد:
    System.Windows.Forms.Application.StartupPath

    2) مطمئن نیستم! یک راه در ذهنم است ولی باید تست کنم و بعداً جواب دهم.
    ولی راه مشخص آن است که برنامه ای در سرور داشته باشید که با ارتباطات سوکتی و یا به نوعی با یک وبسرویس فرمان را گرفته و در سرور اجرا کند.

    3) شما تعدادی Connection باز دربرنامه دارید که جلوی SQLServer را برای بازیابی میگیرد.
    البته احتمال دارد که connection هایی را قبلاً open و close کرده باشید و لی همچنان این خطا را مشاهده کنید.
    در این حالت خطا ناشی از کش داخلی ado.net میشود که برای سرعت بیشتر connection های به ظاهر close شده توسط شما را در اصل باز نگاه میدارد ولی آنها را به کشی اضافه میکند تا در درخواستهای open بعدی استفاده شوند.
    (به همین علت است که اولین open در برنامه بسیار کند است، ولی open های بعدی سریع است!)
    برای تخلیه کش داخلی ado.net دستور زیر را اجرا کنید:
    System.Data.SqlClient.SqlConnection.ClearAllPools

    4) شی پایه ای BackupRestoreBase که Backup و Restore وراثتی از آن هستند، متدی به نام SetPassword دارد که میتواند پسورد را از شما برای backup و restore تحویل بگیرد. (در SMO)

    در نهایت بهتر است به جای dmo از smo در اسمبلی Microsoft.SqlServer.Smo استفاده کنید.
    موفق باشید.

  3. #3
    اگه نباشه جاش خالی می مونه M-B-M's Avatar
    تاريخ عضويت
    Mar 2006
    محل سكونت
    ایران - مشهد
    پست ها
    371

    پيش فرض

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

    فقط اگر لطف کنید و در مورد طریقه کارکردن با Smo در اسمبلی Microsoft.SqlServer.Smo بیشتر توضیح بفرمایید ممنون می شوم!

  4. #4
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    خیلی ساده و شبیه dmo است.
    ضمن اینکه اسمبلی Microsoft.SqlServer.Smo منحصراً با دات نت و برای دات نت طراحی شده و نتیجتاً بسیار هماهنگ و منطبق است.
    کافی است add reference کنید و مثلاً یک کد bacup میتواند چنین باشد ...
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  5. #5
    اگه نباشه جاش خالی می مونه M-B-M's Avatar
    تاريخ عضويت
    Mar 2006
    محل سكونت
    ایران - مشهد
    پست ها
    371

    14

    سلام
    من Microsoft.SqlServer.Smo را به Refrence ها Add کردم و وقتی دستورات بالا را می نویسم به تمام Smo ها گیر می دهد
    نمیدانم کجای کار مشکل دارد!
    درضمن تمام Smo ها را باMicrosoft.SqlServer.Management.Smo جایگزین کردم اما نتیجه ساز نبود!

  6. #6
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    اگر نام Microsoft.SqlServer.Management.Smo.Backup را کامل تایپ کرده اید و باز ایراد میگیرد دو حالت دارد ...
    - یکی را بسیار بعید میدانم که انجام داده باشید! (نام پروژه تان Microsoft باشد!)
    - میماند همان Add Refrence

    به لیست refrence ها مراجعه کنید:
    Solution Explorer->ProjectName->References
    و مطمئن شوید Microsoft.SqlServer.Smo با مسیری مشابه این را در پروژه دارید:
    X:\Program Files\Microsoft SQL Server\XX\SDK\Assemblies\Microsoft.SqlServer.Smo.d ll

    میتوانید یک بار راست کلیک کرده و Delete اش کنید و مجدداً اضافه کنید.
    در کل، Refrence را مجدداً و کامل بررسی کنید.

    راستی خدایی ناکرده دستور using که نوشته بودم را که در وسط کدها درج نکرده اید؟
    کدها را هم که وسط بدنه یک رویه نشوته اید؟

  7. #7
    اگه نباشه جاش خالی می مونه M-B-M's Avatar
    تاريخ عضويت
    Mar 2006
    محل سكونت
    ایران - مشهد
    پست ها
    371

    پيش فرض

    سلام

    راستی خدایی ناکرده دستور using که نوشته بودم را که در وسط کدها درج نکرده اید؟
    کدها را هم که وسط بدنه یک رویه نشوته اید؟
    ببخشید منظورتان را متوجه نشدم؟
    من کد ها را در رویداد دکمه نوشته ام!
    دستور using را هم در بالای فرم در کنار دیگر using ها نوشتم!
    بقیه را باید چک کنم
    باز هم ممنون

  8. #8
    اگه نباشه جاش خالی می مونه M-B-M's Avatar
    تاريخ عضويت
    Mar 2006
    محل سكونت
    ایران - مشهد
    پست ها
    371

    14

    سلام
    اصلا Microsoft.SqlServer.Management.Smo رویدادی به نام Backup ندارد!
    نام پروژه هم Microsoft نیست!
    به Refrence هم مراجعه کردم، در آنجا وجود داشت!
    در مسیر X:\Program... هم وحود داشت!

  9. #9
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    bakup یک کلاس است نه یک رویداد.
    لطفاً کد نمونه تان را آپلود کنید.

  10. #10
    اگه نباشه جاش خالی می مونه M-B-M's Avatar
    تاريخ عضويت
    Mar 2006
    محل سكونت
    ایران - مشهد
    پست ها
    371

    پيش فرض

    سلام
    بفرما
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    ممنون

صفحه 1 از 3 123 آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

برچسب های این موضوع

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •