ورود

View Full Version : خطای Login failed for user



hamid93
پنج شنبه 23 بهمن 1393, 13:17 عصر
سلام و خسته نباشید.

در ابتدا بگم که سه روزه کل این تالار رو زیر و رو کردم و نتیجه نگرفتم. پس لطفا نگین جستجو میکردی به نتیجه میرسیدی. چون تاپیک ها یا مربوط به SQL2000 بود یا خطای من فرق میکرد و یا تاپیک بی جواب مونده بود و کلی از تاریخ ایجادش گذشته بود.

حالا مشکل من :
*** من با SQL Server 2008 و Delphi 2006 کار میکنم.
*** برنامه من قراره در یک سیستم بصورت سرور و در چند سیستم بصورت کلاینت نصب بشه و بانک اطلاعاتیش فقط در سرور قرار بگیره (اشتراکی)
*** SQL Server رو در حال حاضر در سیستم خودم برای تست برنامه نسخه کامل R2 2008 نصب کردم اما میخوام در سیستم سرور مشتری Express رو نصب کنم که کم حجمه (اگه راه حل دیگه ای هست بگین البته این مشکل اصلی من نیست). به هر جهت SQL در حالت Mixed و با نام کاربری sa و پسورد 123 روی سرور نصب شده.
*** حالا برنامه در سرور براحتی کانکت میشه و اطلاعات رو هم نمایش میده و مشکلی در کانکشن استرینگ نیست :



with ADOConnection do
begin
ConnectionString:='Provider=SQLOLEDB.1;Password=12 3;Integrated Security=SSPI;User ID=sa;Persist Security Info=True;Initial Catalog='
+'MyDB'
+';Data Source='
+'MyComputer';
Connected:=True;
Open;
end;


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

*** سیستم ها توسط مودم ADSL چهار پورت شبکه شدن و آی پی هر کدام در دیگری Ping میشود.
*** ویندوز سون است و Firewall حالت Work/Home خاموش است و آنتی ویروس هم فایر وال آن غیر فعال میباشد.
*** انتقال فایل در شبکه انجام میشود.
*** ضمنا برنامه جداگانه ای دارم که لیست اسامی تمام سیستم های موجود در شبکه را به من نشان میدهد. و از دریافت نام سیستم ها مطمئنم.
*** در سرور سرویس SQL Server با Instant Name : MSSQLSERVER در حالت Running و بصورت NetworkService است. همین وضعیت را برای سرویس SQL Server Browser هم داریم.

حال در ارتباط کلاینت با سرور با کانکشن استرینگ فوق خطای زیر رو دریافت میکنم :
Login failed for user : MyComputer\Guest

ممنون میشم کمکم کنید.

تشکر فراوان

hadisalahi2
شنبه 25 بهمن 1393, 11:32 صبح
ما میخوام در سیستم سرور مشتری Express رو نصب کنم که کم حجمه (اگه راه حل دیگه ای هست بگین البته این مشکل اصلی من نیست).

اگه برنامه تحت شبکه هستش ، نیازی به این کار نیست
همون که روی سرور نصب باشه کافیه.



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


روی سرور بدون این موارد هم جواب میده.




حال در ارتباط کلاینت با سرور با کانکشن استرینگ فوق خطای زیر رو دریافت میکنم :


توی ویندوز 7 یک سیستم امنیتی جدید قرار داده شده که اتصال به یک سیستم رو یک کم مثلا امنیتی کرده
شما این گزینه رو Off کن شاید مشکلت رفع بشه
برای من همین طور بود :
128452

hamid93
شنبه 25 بهمن 1393, 14:09 عصر
ممنون از پاسختون.




اگه برنامه تحت شبکه هستش ، نیازی به این کار نیست
همون که روی سرور نصب باشه کافیه.


در این مورد همونطور که گفتم بله Sql Server Express رو فقط در سرور شبکه مقصد نصب خواهم کرد.




توی ویندوز 7 یک سیستم امنیتی جدید قرار داده شده که اتصال به یک سیستم رو یک کم مثلا امنیتی کرده
شما این گزینه رو Off کن شاید مشکلت رفع بشه


از ابتدا که شبکه رو راه اندازی کردم هم در Home/Work و هم در Public این گزینه رو Off کردم و مشکل با وجود این پابرجاست.

hadisalahi2
شنبه 25 بهمن 1393, 18:13 عصر
یه سری به این آدرس بزن
https://www.connectionstrings.com/sql-server/

hamid93
سه شنبه 28 بهمن 1393, 19:01 عصر
من سوالم رو در انجمن serverfault.com مطرح کردم و جواب گرفتم. لازم دونستم برای باقی دوستانی که ممکنه به مشکل من برخورد کنن جواب رو بزارم.

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



Integrated Security=SSPI;
Persist Security Info=True;


با آرزوی موفقیت برای همه برنامه نویسان ایرانی.