PDA

View Full Version : دسترسی به پایگاه داد در یه کامپیوتر لوکال از طریق برنامه ای که روی هاست در حال اجرا است



sarapepors
یک شنبه 24 مهر 1390, 17:15 عصر
سلام دوستان .
دوستان امکان دسترسی به یک پایگاه داده در یه کامپیوتر لوکال از طربق وب سایت وجود داره یا خیر
بزارید کمی توضیح بدم من باید بتونم از طریق سایت به پایگاه داده موجود در یک کامپیوتر شخصی دسترسی داشته باشم برخی از رکوردهای برخی از جداولش رو بخونم و پس از بررسی شرایطی اونها رو در جداول مختلفی در پایگاه موجود در هاست که برای سایتم هست اد کنم چطور میتونم این کار رو انجام بدم ؟ رشته اتصال به چه صورت خواهد بود. دوستان اگر میشه راهنماییم کنید راستش در این مورد هیچ ذهنیتی ندارم و فکرم به جایی نمی رسه .
دوستان توجه کنید از تو سایت باید از روی لوکال بخونم نه این که از طریق لوکال بانک لوکال رو بخونم و به هاست منتقل کنم در ضمن این کار باید در فواصل مختلف زمانی انجام بشه هر وقت که مشتری می خواد این کار رو انجام بده نه فقط برای یک بار.مرسی

حمیدرضاصادقیان
دوشنبه 25 مهر 1390, 08:56 صبح
سلام.
برای اینکار باید برای سیستم Localیک IP Valid بگیرید و به اون متصل شوید در غیر اینصورت نمیتونید به SQL Server Local خودتون وصل بشید.

sarapepors
یک شنبه 20 آذر 1390, 09:53 صبح
سلام. درسته که از ایجاد این تایپیک مدت طولانی میگذره اما من تازه به صورت عملی با این مسئله مواجه شدم . همون طور که گفتید برای اون کامپیوتر خاص که می خوام به پایگاه داده اش دسترسی داشته باشم یه valid ip گرفتم و connectionstring رو هم به این صورت نوشتم :
Data Source=valid ip;Initial Catalog=Az_Khak;Integrated Security=True
به جای valid ip هم شماره های مربوط به ip و نوشتم اما فعلا نمیتونم دسترسی داشته باشم واین ارور رو دریافت میکنم:
A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
البته میدونم که باید تنظیماتی رو در sql server 2000 که قراره بهش دسترسی داشته باشم انجام بدم
اگه میشه راجع به این تنظیمات راهنماییم کنید و این که کاری که من انجام میدم یعنی از طریق این ip به اون کامپیوتر خاص دسترسی دارم آیه به لحاظ امنیتی مشکلی ایجاد نمیکنه؟ ممنونم.

AMIBCT
یک شنبه 20 آذر 1390, 11:51 صبح
کارهای مختلفی باید انجام بدید
بانک اطلاعاتی باید به درخواست‌های خارجی پاسخ بده
فایروال باید اجازه‌ی ارتباط از خارج رو بده
مودم شما باید درخواست‌های خارجی رو به سیستم بفرسته
ISP شما باید IP رو فقط به شما اختصاص داده باشه
روی هاست شما باید امکان اتصال به سرور راه دور باز باشه

از نظر امنیتی هم باید بانک اطلاعاتی و فایروال شما به درستی تنظیم باشه
تا افراد غیرمجاز نتوانند به سیستم و اطلاعات شما دسترسی پیدا کنند

هر کدام از موارد بالا مطالب زیادی دارد
که با جستجو در اینترنت می‌توانید روش انجام آن را پیدا کنید

sarapepors
دوشنبه 21 آذر 1390, 19:48 عصر
سلام میشه بگید که باید چه تنظیماتی رو در sqlserver 2000 انجام بدم که امکان پاسخ دادن به درخواس های خارجی رو داشته باشه ؟ ممنونم

AMIBCT
سه شنبه 22 آذر 1390, 09:32 صبح
http://www.sqlservercentral.com/Forums/Topic441949-5-1.aspx

sarapepors
دوشنبه 03 بهمن 1390, 10:17 صبح
سلام.
مدت طولانی از ایجاد این تایپیک میگذد و متاسفانه من هنوز موفق نشدم remote connectio انجام بدهم . اجازه مبخوام از دوستان که یک بار به صورت کامل برنامه ای رو که باید بنویسم توضیح بدم و البته اقداماتی که انجام دادم ولی نتیجه نگرفتم . مشتری من یک برنامه تحت ویندوز برای مدیریت فروشگاهش داره که بر روی یه کامپیوتر سرور در یک شبکه lAN قرار داره و درخواست مشتری هم اینه که ویزیتور هاش وقتی به فروشگاههای مختلف میرن بتوانند به گونه ای به این کامپیوتر دسترسی داشته باشند و فاکتور فروش که یکی از امکانات این برنامه هست صادر کنند ابتدا قرار شد این کار توسط برنامه TEAM VIEWER انجام بشه اما مشکل در استفاده هم زمان چند ویزیتور با هم بوده به طوری که یک ویزیتور باید منتظر انجام کار یک ویزیتور دیگر میبود تا بعد خودش کار مربوطه را انجام دهد. اجازه بدید این سوال رو مطرح کنم که آیا راهی به جز TEAM VIEWER برای دسترسی به برنامه قابل اجرا روی یک کامپیوتر محلی وجود دارد یا خیر؟ وظیفه من این است که یک برنامه WebApplication بنویسم که در آن به پایگاه داده موجود در کامپیوتر فروشگاه دسترسی داشته باشم اگر راهی بغیر از نوشتن web application وجود دارد لطفا راهنمایی کنید البته از طرح این پرسش عذرخواهی میکنم چون باید در تالار شبکه مظرح شود. حال اگر راهی به جز طراحی webApplicatio وجود ندارد من باید بتوانم به پایگاه داده موجود در لوکال از طریق هاست دسترسی داشته باشم برای انجام این کار مراحل زیر را با توجه به راهنمایی های جناب آقای صادقیان و همچین Ambict انجام دادم:
فایروال کامپیوتر لوکال فعلا خاموش است.
با سرویس دهنده میزبانی تماس گرفتم از من خواستند که یک رول جهت تنظیمات فایر وال به آنها بدهم :
source ip:62.193.15.59
source port:any
Destination ip:valid ip
Destination port:1433
و با توجه با این درخواست هاست پورت 1433 را روی سرور باز کرد
با isp هم تماس گرفتم و انها نیز پورت 1433 را برای خط adsl که ولید ای پی را برای ان تهیه کردیم باز کردند.
خودم هم این کانکشن استیرنگ ها را برای دسترسی نوشتم
Data Source=valid ip;Initial Catalog=Az_Babol86;Integrated Security=True
ntegrated Security=SSPI;Persist Security Info=False;Initial Catalog=Az_Babol86;Data Source=valid ip
و این خطا را دریفت میکنم:
A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)

تنظیمات remote مربوط به sql 2000 را نیز انجام دادم به این صورت کلیک راست رو سرور , تب general , network cofiguration و فعال نمودنnamed pipe ,tcp ip
امیدوارم ببخشید که این پست خیلی طولانی شده و البته برخی مسائل مطرح شده مرتبط با این تالار نبوده.

AMIBCT
دوشنبه 03 بهمن 1390, 16:54 عصر
با توضیحاتی که نوشتید فکر می‌کنم مشکل از تنظیمات مودم شما باشد

مودم‌های ADSL و WiMax یک روتر درون خود دارند
که اگر قصد داشته باشید از بیرون به داخل متصل بشوید لازم است که روتر داخلی مودم درخواست‌های خروجی را به IP داخلی شما منتقل کند

بهتر بخواهم توضیح بدهم اینکه
بین مودم و کامپیوتر شما یک شبکه با IP شماره ۱۹۲ برقرار است
و بین مودم و اینترنت یک شبکه‌ی دیگر با IP اینترنتی

در تنظیمات مودم باید مشخص کنید که اگر درخواستی از خارج با هدف IP اینترنتی شما را دریافت کرد
آن را رد نکند و به IP داخلی پایگاه داده که با 192 شروع می‌شود منتقل کند

یک ابزار رایگان هست که ممکن است بتواند تنظیمات مودم را به صورت خودکار انجام دهد
Simple Port Forwarding
اگر با این برنامه نتوانستید مودم را تنظیم کنید راهی نمی‌ماند جز اینکه در مرورگر IP مودم را وارد کنید و از تنظیمات داخلی آن این کار را انجام دهید

اگر متوجه نمی‌شوید که مطالب بالا چه معنایی می‌دهد
بهتر است از یک نفر آشنا با اصول شبکه کمک بگیرید

alonemm
چهارشنبه 05 بهمن 1390, 09:36 صبح
باسلام:
من این کارو در یک برنامه انجام دادم اما نسخه پایگاه داده 2008 بود به شرح زیر:
در SQLServer 2008 پوشه Configuration Tools و SQL Server Configuration Manager اجرا کنید.
از پنل سمت چپ در قسمت SQL Server Network Configuration انتخاب کنید و از پنل سمت راست سرویس مورد نظر خود را انتخاب کنید(دابل کلیک کنید)
از قسمت TCP/IP تب Portocol قسمت Enabled رو Yes کنید و از تب IP Addresses گزینه Active رو Yes و قسمت IP Address رو هم IP Valid که دریافت کردید ست کنید.

عکس ها ضمیمه شده.
موفق باشید.

jebco2000
پنج شنبه 23 آذر 1402, 23:02 عصر
دوستان سلام
یک راهنمایی مخواستم
من یک vpsراه دور دارم در آن sql serverنصب کرده ام و یک دیتابیس در آن ایجاد کرده ام .
توسط VMWare یک سرور مجازی در کامپیوتر خودم ایجاد کرده ام و sql server را هم نصب کرده ام و عینا همان دیتا بیس در vps راه دور را برای این سرور local هم attach کرده ام .
هدف من merge replication بین این دو سرور و دیتابیس در محیط sql server است .
لطفا راهنمایی بفرمایید چطور تنظیمات سرور محلی و ماشین مجازی حاوی آن را انجام بدهم تا سرور vps راه دور بتواند با سرور مجازی محلی replicate کند .
سرویس browser فعال است و از طرف شبکه لوکال به سرور vps میشود ping زد اما بلد نیستم چگونه تنظیمات را انجام بدهم که sql server در vps راه دور سرور local را که با VMWare ایجاد کرده ام بشناسد و با هم replicate کنند.
الان یک ماه هست گیر کرده ام . لطفا بخندید به من ولی کمکم کنید . ممنون