PDA

View Full Version : قرار دادن دیتابیس بر روی اینترنت ...



sh_microsoft
چهارشنبه 10 مرداد 1386, 12:06 عصر
سلام.
بیشتر برنامه هایی که تا به حال نوشتم به این صورت بود که دیتابیس در قسمتی از حافظه سیستم قرار می گرفت.
حال قصد دارم برنامه ای بنویسم که دیتابیسم بر روی اینترنت باشد یعنی یک فضای اینترنتی داشته باشم و دیتابیسم را انجا قرار بدم و کاربر بعد از انلاین شدن می تواند از اطلاعات موجود بهره مند شود.
خب برای این کار و کارهای مشابه از چه روشی باید استفاده کنم؟
اگر کتابی نیز سراغ دارید که در این مورد توضیح داده باشد ممنون می شم معرفی کنید...

once4ever
چهارشنبه 10 مرداد 1386, 12:14 عصر
برنامه win application یا web application هست؟
در هردو مورد میتونی دیتابیس روی اینترنت داشته باشی

hmm
پنج شنبه 11 مرداد 1386, 19:22 عصر
کتاب یا منبع خاصی لازم نیست . جواب پست شماره شماره 2 رو بده یکی کمکت میکنه

sh_microsoft
پنج شنبه 11 مرداد 1386, 21:36 عصر
برنامه win application یا web application هست؟
در هردو مورد میتونی دیتابیس روی اینترنت داشته باشی
برنامه win application است...

once4ever
پنج شنبه 11 مرداد 1386, 22:42 عصر
برنامه win application است...
پس فقط کافیه که کانکشن استرینگت عوض بشه. همین

niksoft
پنج شنبه 11 مرداد 1386, 23:14 عصر
البته تا جایی که بنده میدونم باید یه Valid Ip داشته باشید که آدرس Ip که در Connectionstring مینویسی همواره درست عمل کنه

sh_microsoft
پنج شنبه 11 مرداد 1386, 23:34 عصر
البته تا جایی که بنده میدونم باید یه Valid Ip داشته باشید که آدرس Ip که در Connectionstring مینویسی همواره درست عمل کنه
ممنون...
امکان داره بیشتر توضیح بدید ؟

niksoft
پنج شنبه 11 مرداد 1386, 23:40 عصر
اگه Ip شما Static باشه هر بار که به Inrternet متصل میشید Ip شما با دفعه قبلی فرق میکنه
با این حساب نمیتونید یه Connectionstring ثابت داشته باشید
ولی با داشتن یه Valid Ip میتونید یه Ip ثابت داشته باشید

sh_microsoft
پنج شنبه 11 مرداد 1386, 23:48 عصر
اگه Ip شما Static باشه هر بار که به Inrternet متصل میشید Ip شما با دفعه قبلی فرق میکنه
با این حساب نمیتونید یه Connectionstring ثابت داشته باشید
ولی با داشتن یه Valid Ip میتونید یه Ip ثابت داشته باشید
خب برای این کار باید چکار کنم ؟
فقط این را هم در نظر بگیرید که برنامه باید بر روی تمام سیستم ها کار کند و فقط مختص یک کامپیوتر نباشد...

M * M * A
جمعه 12 مرداد 1386, 18:40 عصر
یک سوال مهم :
اگر من پایگاه دادم که با sql server داخل یک سایت قرار بدم آیا می تونم با برنامه نویسی win application به اون دسترسی داشته باشم؟
یا اگر من از طریق اینترنت 2 تا سیستم داشته باشم یکی در مشهد و دیگری در تهران می تونم اینها رو از طریقی به هم وصل کنم؟ که از پایگاه داده یکی استفاده کنند؟

once4ever
جمعه 12 مرداد 1386, 19:17 عصر
اگر من پایگاه دادم که با sql server داخل یک سایت قرار بدم آیا می تونم با برنامه نویسی win application به اون دسترسی داشته باشم؟بله . اگر از یک webhosting استفاده کنید، چون اکثرا ip ثابت برای بانک به شما میدهند میتونید وصل بشیدو فقط آدرس بانک در کانکشن استرینگ عوض میشه

یا اگر من از طریق اینترنت 2 تا سیستم داشته باشم یکی در مشهد و دیگری در تهران می تونم اینها رو از طریقی به هم وصل کنم؟ که از پایگاه داده یکی استفاده کنند؟
همون مشکل ip دارید و به این راحتی نیست مگه اینکه ip ولید داشته باشید

M * M * A
جمعه 12 مرداد 1386, 20:27 عصر
میشه کانکشن مربوطه را بگذارید؟

niksoft
جمعه 12 مرداد 1386, 20:32 عصر
در مورد اول بستگی به هاستتون داره ولی خیلی از هاستا این مجوز رو به کاربر میدن
در مورد دوم
بله فقط باید هر دو سیستم به اینترنت دسترسی داشته باشند و
کافیه که Ip سرور رو به برنامه هاتون بدید

sh_microsoft
جمعه 12 مرداد 1386, 21:12 عصر
ببینید دوست عزیز من می خوام یه برنامه ای بسازم که دیتابیسش مثلا فایل اکسس داخل اینترنت باشد و چندین نفر به واسته همین فایل با یکدیگر در ارتباط باشند مکانشون هم فرقی نمی کنه چون برنامه باید جوری کدبندی بشه که همه جا کار کنه!
از گفته های شما چنین چیزی فهمیدم که باید آدرس ای پی سایتی که فایلم را گذاشتم به برنامه بدم. ببینید من فایل را داخل پرشین گیگ گذاشتم حال در آدرس دهی به آن آدرس سایت را دادم ولی قبول نکرد! برای نوشتن ای پی باید به چه شکلی عمل کرد؟

اَرژنگ
شنبه 13 مرداد 1386, 05:15 صبح
ببینید دوست عزیز من می خوام یه برنامه ای بسازم که دیتابیسش مثلا فایل اکسس داخل اینترنت باشد و چندین نفر به واسته همین فایل با یکدیگر در ارتباط باشند مکانشون هم فرقی نمی کنه چون برنامه باید جوری کدبندی بشه که همه جا کار کنه!
از گفته های شما چنین چیزی فهمیدم که باید آدرس ای پی سایتی که فایلم را گذاشتم به برنامه بدم. ببینید من فایل را داخل پرشین گیگ گذاشتم حال در آدرس دهی به آن آدرس سایت را دادم ولی قبول نکرد! برای نوشتن ای پی باید به چه شکلی عمل کرد؟
اگر با ویندوز فرم کار میکنید:
۱ـیک لایه داتبیس بسازید
۲ـیک لایه بیزینس لجیک بسازید که با لایه داتبیس کار کند.
۳-یک وب سرویس بسازید که با لایه بیزینس کار کند.
۴-برنامه ویندوز فرم به وب سرویسوصل میشه و داتا را رد و بدل میکنه

دسترسی همینطوری به داتبیس از رویه اینترنت به مشکلات بیشتری خواهد انجامید.

در ضمن همینطوری که نمیشه یک فایل اکسس ذاشت بر رویه هاست و بهش متصل شد.

اَرژنگ
شنبه 13 مرداد 1386, 05:23 صبح
یک سوال مهم :
اگر من پایگاه دادم که با sql server داخل یک سایت قرار بدم آیا می تونم با برنامه نویسی win application به اون دسترسی داشته باشم؟
یا اگر من از طریق اینترنت 2 تا سیستم داشته باشم یکی در مشهد و دیگری در تهران می تونم اینها رو از طریقی به هم وصل کنم؟ که از پایگاه داده یکی استفاده کنند؟

برنامه نویسی چند لایه را مطالعه کنید، این که بشه از هر جا به یک داتابیس وصل شد واقعا روش اشتباهیست .
برایه شروع به بست بالام نگاه بندازید.

sh_microsoft
چهارشنبه 17 مرداد 1386, 01:28 صبح
سلام...
ممنون از راهنمایی هاتون...
ولی دوستان عزیز بدلیل اینکه این موضوع گسترده است و نمی توان آن را در چند خط توضیح داد پس لطف کنند منابعی جهت آشنایی با آن معرفی کنند.
منابعی در مورد اشتراک یک دیتابیس بین چند سیستم (از طریق اینترنت و...).
موفق باشید.

اَرژنگ
چهارشنبه 17 مرداد 1386, 07:51 صبح
سلام...
ممنون از راهنمایی هاتون...
ولی دوستان عزیز بدلیل اینکه این موضوع گسترده است و نمی توان آن را در چند خط توضیح داد پس لطف کنند منابعی جهت آشنایی با آن معرفی کنند.
منابعی در مورد اشتراک یک دیتابیس بین چند سیستم (از طریق اینترنت و...).
موفق باشید.
http://barnamenevis.org/forum/showpost.php?p=374500&postcount=15
http://barnamenevis.org/forum/showpost.php?p=374500&postcount=16 (http://barnamenevis.org/forum/showpost.php?p=374500&postcount=17)

حامد مصافی
چهارشنبه 17 مرداد 1386, 12:13 عصر
...ببینید من فایل را داخل پرشین گیگ گذاشتم حال در آدرس دهی به آن آدرس سایت را دادم ولی قبول نکرد! برای نوشتن ای پی باید به چه شکلی عمل کرد؟
با پرشین گیگ موفق به این کار نخواهید شد.
باید یک فضای اینترنتی مجهز به یک سرویس دهنده سیستم پایگاه داده مجتمع (SQL Server یک انتخاب عالی) با امکان دید در همه جای اینترنت (دارای Valid IP) در اختیار داشته باشید.
در مرحله بعد کافیست تا به جای نام سرویس دهنده در Connetion String که معمولاً localhost است آدرس در صورت ثبت در dns یا IP فضای موبوطه رو قرار دهید.



اگر با ویندوز فرم کار میکنید:
۱ـیک لایه داتبیس بسازید
۲ـیک لایه بیزینس لجیک بسازید که با لایه داتبیس کار کند.
۳-یک وب سرویس بسازید که با لایه بیزینس کار کند.
۴-برنامه ویندوز فرم به وب سرویسوصل میشه و داتا را رد و بدل میکنه
در تایید فرمایش، بنده هم استفاده از سرویس های وب رو به جای پایگاه داده با دسترسی مستقیم توصیه می کنم.

mhddns
پنج شنبه 21 دی 1391, 12:09 عصر
بابا چرا اینقدر می پیچونید؟ یه کانکشن استرینگ با آ پی ولید بزارید

samadblaj
پنج شنبه 21 دی 1391, 13:25 عصر
من وصل شدم خلی ساده بود...
یه هاست وندوز برای دیتابیس SQL Server تون میگیرید بعد دیتابیس رو روش آپلود میکنید بعد سایت سرویس دهنده بهتون یه کانکشن میده که اونو توی برنامه تون جایگزین میکنید و از دیتا ها استفاده میکنید...
برای تست رایگان هم میتونید از سایت somee.com استفاده کنید

==================== این سوال منم لطفا دوستان اگه اطلاعاتی لینکی دارن کمکم کنن خیلی وقته این سوال رو دارم اما کسی پاسخی نداشت ====================

برنامه ویندوز من اطلاعات رو ری هاست ثبت میکنه و کاربر باید مدام با دیتابیس و اینترنت متصل باشه این روش به دلایل امنیتی مناسب نیست... و همینطور ترافیک بالا میره...و یا قطع شدن اتصال اینترنت....

الان میخوام از روش دیگه استفاده کنم که وقتی کاربر اطلاعات رو وارد کرد و دکمه بروز رسانی رو زد اطلاعات ثبت شود...

یکی از دوستان قبلا به web servise اشاره کرد ...

rezaei_y
پنج شنبه 21 دی 1391, 22:03 عصر
یک وب سرویس ایجاد میکنید و تمام کارهایی رو میخواید انجام بدید داخل وب سرویس تعریف می کنید مثلا تابع ورود-تابع ثبت اطلاعات-تابع خواندن اطلاعات از یک جدول و...

وب سرویس رو داخل سایت آپلود میکنید و داخل برنامه تون اضافه اش میکنید به این طریق برنامه تون به توابعی که داخل وب سرویس هست دسترسی خواهد داشت

خود وب سرویس هم از کانکشن استرینگ خود هاست استفاده میکنه وامنیت بالا میرود

فقط تحت هیچ شرایطی از کانکشن استرینگ داخل اپلیکیشنتون استفاده نکنید

samadblaj
پنج شنبه 21 دی 1391, 22:37 عصر
فقط تحت هیچ شرایطی از کانکشن استرینگ داخل اپلیکیشنتون استفاده نکنید
سلام ببخشید این توضیحات در پاسخ سوال من بود ؟ اصلا کامل نبود میشه بفرمایید لدترین دلیل استفاده از کانکشن استرینگ در برنامه چیه... :ناراحت:

rezaei_y
پنج شنبه 21 دی 1391, 23:34 عصر
خوب اگه درست متوجه شده باشم بانک اطلاعاتی توی سرور قرار داره درست؟ حالا اگه کانکشن استرینگ که شامل نام کاربری و کلمه عبور هست داخل برنامه استفاده بشه خوب بدون شک امنیت زیادی نخواهد داشت؟

چون اگه توسط شگردهای مختلف سورس برنامه تون برگشت بخورده اطلاعات بانک اطلاعاتی بدست میاد و هکر به راحتی به کل بانک دسترسی خواهد داشت.

ولی اگه کانکشن استرینگ تو سرور باشه و فقط توسط متدهای وب سرویس اطلاعات رد و بدل بشه به جز بحث اینترنت که اون هم روش های خاص خودش رو داره بعید میدونم مشکلی پیش بیاد

samadblaj
جمعه 22 دی 1391, 01:18 صبح
آره کاملا درست میگید استفاده از web service باعث میشه از برنامه عمل یا اتصالی به صورت مستقیم روی کانکشن نداشته باشم....

ولی میشکلی که باهاش مواجه شدمارسال اطلاعات به دیتابیس هست...کاربر بعد از وارد کردن اطلاعات وسیع به برنامه و موقع دکمه ثبت ممکن هست به شکلی اتصال به شبکه رو از دست بده باید برای این مشکل چه کار کنم؟
استفاده از دیتابیس افلاین.... یا روش دیگه ای هست که یعد از ثبت تمامی اطلاعات دکمه بروز رسانی رو بزنیم؟