PDA

View Full Version : مشکل در برقراری ارتباط کامپیوترها به سرور



slashslash2009
سه شنبه 09 تیر 1388, 09:16 صبح
سلام
من یه برنامه با دیتا بیسsqlserver نوشتم Remote هم در server فعال سازی کردم.
کانکشن استرینگمم اینه :
con.ConnectionString = "data source=slash-a6ab617d;Initial catalog=tolid1;Integrated Security=true";
یا
con.ConnectionString = "data source=127.0.0.1,1433;Initial catalog=tolid1;Integrated Security=true";
البته بر روی سرور کار میکنه ولی کامپیوترهای دیگه خطا میدن. یه جا دیدم که باید consol application استفاده کرد و کد نوشت.

لطفا راهنماییم کنید کارم بدجوری گیر کرده

Mohsen_Fotouhi
سه شنبه 09 تیر 1388, 11:56 صبح
دوست عزیر شما از کانکشن سترینگی استفاده کردی که برای برقراری ارتباط به صورت محلی می باشد برای ارتباط با سرور باید از کانکشن سترینگ زیر و با استفاده از لاگینی که در Sqlserver سرور تعریف شده وارد شوید مانند زیر:
"data source=ServerName;initial catalog=DataBaseName;user id=Login;password=1"
موفق باشید

slashslash2009
چهارشنبه 10 تیر 1388, 11:30 صبح
ip address server=192.168.0.1

"data source=192.168.0.1,1433;Initial catalog=tolid1;Integrated Security=true";
یا
"data source=192.168.0.1;Initial catalog=tolid1;Integrated Security=true"
بازم کار نکرد تنظیمات Remote رو هم مثل زیر انجام دادم
1- از قسمت windows firewall : سر برگ exception : دكمه add program : كليك كرده و sqlserver خود را اضافه نماييد.

2- در sql server configuration manager : قسمت sql server 2005 network configuration : سپس protocols : سپس enabled را yes كنيد : سپس در سمت راست TCP/IP دو بار كليك كنيد : سربرگ IP Address قسمت TCP Dynamic Ports : شماره پورت جهت remote مورد نظر خود را وارد نماييد.

3-در sql server surface area configuration : در قسمت service area configuration for services and connections : سپس قسمت database engine : در قسمت local and remote connections : گزينه using TCP/IP only را فعال نماييد.

slashslash2009
چهارشنبه 10 تیر 1388, 11:33 صبح
اینم پیغامیه که میده :
An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)

slashslash2009
پنج شنبه 11 تیر 1388, 09:01 صبح
یعنی کسی نمیدونه باید چیکار کنم میشه یه توضیح کامل برام بزارین ممنون

seniamail
پنج شنبه 11 تیر 1388, 09:27 صبح
سلام
ابتدا باید سرویسهای sql در قسمت Administrator Tools\Service در کنترل پنل را فعال کنی
دوم: از این کانکشن استفاده کنی. من با این جواب گرفتم
مثال

Application Name=.Net SqlClient Data Provider;Data Source=192.168.50.1;Initial Catalog=DataBase;Persist Security Info=True;User ID=sa;password=PASS

newgoldenman
پنج شنبه 11 تیر 1388, 09:34 صبح
کانکشن استرینگمم اینه :
con.ConnectionString = "data source=slash-a6ab617d;Initial catalog=tolid1;Integrated Security=true";
یا
con.ConnectionString = "data source=127.0.0.1,1433;Initial catalog=tolid1;Integrated Security=true";
البته بر روی سرور کار میکنه ولی کامپیوترهای دیگه خطا میدن.

سلام.
توی اولی:
slash-a6ab617d اسم كامپیوتر سرور شما هست.
tolid1 هم اسم دیتابیس شما كه باز روی سرور هست.

دومی هم كه اصلاً نمیتونه شما رو از كلاینت ها به سرور وصل كنه، مگر اینكه IP سرور رو بدین.

این پیام خطا هم كه میبینید میده بهتون، یعنی اینكه نمیتونه ارتباط رو برقرار كنه بین دو تا كامپیوتر، چه برسه به اینكه بخواد به دیتابیس هم وصل بشه.
برای رفع این مشكل، اول مطمئن بشید كه ارتباط دو كامپیوتر دقیقاً برقرار هست یا خیر. file sharing باید داشته باشید مثلاً ! Ping باید بشید حتماً ! و بعد از اون، سعی كنید در برقراری ارتباط.
پبشنهاد: IP Range كلاینت ها و سرورتون باید توی یك Range باشن. وگرنه به هیچوجه امكان اتصال نیست.

seniamail
پنج شنبه 11 تیر 1388, 09:37 صبح
یه نکته هم یادم رفت اینکه حتما باید فایروال خاموش باشه
با اضافه کردن sql به exception تا اونجایی که من امتحان کردم جواب نداده

newgoldenman
پنج شنبه 11 تیر 1388, 09:59 صبح
یه نکته هم یادم رفت اینکه حتما باید فایروال خاموش باشه
با اضافه کردن sql به exception تا اونجایی که من امتحان کردم جواب نداده

این درسته، ولی نه در همه ی حالات.
در این صورت اصل امنیت شبكه نقض میشه كه!
فایروال باید روشن باشه، ولی باید برای اون ارتباط یك روال تعریف كرد، یا همون exception. البته اگر از فایروالی به جز فایروال ویندوز استفاده كنید، همه چیز اوكیه!

slashslash2009
پنج شنبه 11 تیر 1388, 12:28 عصر
سلام
ابتدا باید سرویسهای sql در قسمت Administrator Tools\Service در کنترل پنل را فعال کنی
دوم: از این کانکشن استفاده کنی. من با این جواب گرفتم
مثال

Application Name=.Net SqlClient Data Provider;Data Source=192.168.50.1;Initial Catalog=DataBase;Persist Security Info=True;User ID=sa;password=PASS



میشه قسمت Administrator Tools\Service بیشتر توضیح بدین

seniamail
جمعه 12 تیر 1388, 21:38 عصر
میشه قسمت Administrator Tools\Service بیشتر توضیح بدین

شما باید در قسمت Control Panel \ Administrative Tools \ Services سرویسهایSQL Server (...) را Startکنی