PDA

View Full Version : سوال: آیا با ورژن Express می شه از طریق شبکه وصل شد



samprp
سه شنبه 12 شهریور 1387, 14:21 عصر
سلام
می خوام با برنامه دلفیم به اسکوئل به صورت شبکه ای وصل شم . مشکلات زیادی دارم .
ولی یه دفعه به ذهنم رسید ممکنه چون ورژن اسکوئل Express هست شاید این مشکلات به خاطر اینه و به خاطر اینه که از طریق شبکه نمی شه وصل شد .

سوالم اینه آیا با ورژن Express اسکوئل می شه از طریق شبکه هم اتصال داشت
ممنون می شم راهنماییم کنید
با تشکر.

__H2__
سه شنبه 12 شهریور 1387, 18:16 عصر
سلام
نه، فکر نکنم مشکل از SQLServer-Express باشد.
اگر خطا میگیرد؟ متن خطا چیست؟
حتماً در دلفی هم چیزی شبیه ConnectionString دارید؟ ConnectionString تان چه بوده؟

AminSobati
سه شنبه 12 شهریور 1387, 22:07 عصر
Express Edition برای استفاده Local هستش دوست عزیزم. از سایر Editionها استفاده کنین

__H2__
چهارشنبه 13 شهریور 1387, 00:12 صبح
سلام

برای استفاده Local هستش دوست عزیزم
خیلی بعید میدانم، نه اینکه تست کرده باشم ولی فکر کنم در شبکه هم کار کند.
نه اینکه حتماً بگویم express برای شبکه خوب و کافی است.
البته برای رفع ابهام و اینکه خودم هم مطمئن شوم میتوانم فردا صبح تست کنم.
==============
فعلاً علی الحساب یک روند دستوری کلی را که در سایت دیگری مشکل یک دوست را حل کرده بود، اینجا هم کپی میکنم.
حتماً دقت کنید که دیتابیستان Attach شده باشد و login و user و pass برایش ساخته باشید.
برای اطلاعات بیشتر در این خصوص سری به تاپیک زیر بزنید.
barnamenevis.org/forum/showthread.php?t=115957&page=2

بعد از attach ساخت login و user و pass فرامین زیر را پیگیری کنید تا sqlserver بتواند به راحتی تحت شبکه کار کند.


Start->Programs->Microsoft SQL Server 2005->Configuration->SQL Server Surface Area Configuration->SQL Server 2005 Surface Area Configuration
{
->Database Engine->Remote Connections->Using both TCP/IP and named pipes->Apply


->Database Engine->Stop->Start


->Database Engine->Start


->SQL Server Browser->StartupType->Automatic


->SQL Server Browser->Start
}


سپس برای فایروال هم دستورات زیر را پیگیری کنید:
فرامین زیر را دنبال کنید و مقدار Instance ID را ببینید، احتمالاً مقدارش MSSQL.1 است.
ولی امکان دارد با نصب نسخه های مختلف، مقدارش چیز دیگری باشد، پس:



Start->Programs->Microsoft SQL Server 2005->Configuration->SQL Server Surface Area Configuration->SQL Server Configuration Manager->SQL Server 2005 Services-> SQL Server Browser->RightClick->Property->Advanced->Instance ID


سپس


Start->Run->firewall.cpl->(Only Vista-Allow a program through Windows Firewall)->Exceptions
{


->Add program->Browse
{
C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\sqlservr.exe
->Open
}


->Add program->Browse
{
C:\Program Files\Microsoft SQL Server\90\Shared\sqlbrowser.exe
->Open
}


->OK
}

samprp
چهارشنبه 13 شهریور 1387, 02:20 صبح
ممنون بابت وقتی که صرف کردید .

اینا رو همشو چک کردم .
باید بگم در مورد فایروال و sql server browser رفتم و instance id رو دیدم بود : mssql.2
که همچین پوشه ای اصلا وجود نداشت !
برای تست یه بار هم رو سرویس sqlserver express که همون جاست هم راست کلیک کردم و همون مسیر رو رفتم اونجا instanseid=MSSQL.1 بود .

و چون شما گفتین اون پوشه به نام sql server browser باید وجو داشته باشه من پوشش رو ساختم و از mssql.1 اونجا کپی کردم و تو فایروال هم ادد کردم .

در ضمن من یه فایل با پسوند udl ایجاد کردم و روش دابل کلیک کردن اونجا تمام محتویات درست رو دادم و یوزر رو هم دادم بعد تست رو زدم برا خودم درست کار می کرد . حالا برا تست دادم به دوستم که تو یه شبکه هستیم . اون که تست کرد خطا داد : خطا هم تو ضمیمه هستش (همونی که تم ویستا داره خطای سیسیتم دوستم هست) .
(در ضمن تو شبکه با یه نرم افزار چت می تونیم با هم چت کنیم ) .

عکس اطلاعات کانکشن رو هم ضمیمه کردم
در مورد یوزر هم اول اومد تو پوشه security یه لاگین ایجاد کردم . بعد رفتم رو پایپاه دادم راست کلیک و پروپرتیس رو آوردم . اونجا تو permission ادد رو زدم و یوررز رو ادد کردم . بعد اونجا یه سری چک باکس پایین بود تمام alter ها رو تیک زدم .

ببیند اگه از پورتا استفاده کنیم به نظرتون چه طوره . شنیدم که اسکوئل بروز برا اینه که از پورتا استفاده نشه . ولی پورتا هم ممکنه یکی باز باشه یکی نه که اینم درده سره ..

در آخر یه سوال دیگه هم داشتم . این sql native client چیه ؟ ممکنه به کار من ربطی داشته باشه ؟

پیشاپیش ممنون .

__H2__
چهارشنبه 13 شهریور 1387, 16:27 عصر
سلام
من تا حال همینطوری میدانستم که با نسخه express هم میتوان شبکه کرد ولی تست نکرده بودم.
برای اطمینان بیشتر خودم که در شک نباشم و نیز دوستان، همین الآن تست کردم.
کلاً 2 یا 3 دقیقه وقت گرفت. خیلی سریع همانطور که انتظار داشتم.

- در Management به نسخه express وصل شدم و حالت mixed را فعال کردم.
- سرویس را ریست کردم.
- دیتابیس خالی درست کردم.
- یک login و user و pass با اجازه نامه های معتبر هم درست کردم.
- مراحل روند دستوری فوق الذکر در پست قبلی ام را هم انجام دادم.

(اگر مراحل فوق را به دقت و صحیح انجام دهید، باید حل شود. فقط چند دقیقه ...)

سرور Vista بود و کلاینت هم XP .

بعد به راحتی در رایانه دیگری در شبکه به دیتابیس express وصل شدم.
پس نتیجتاً نسخه express مشکل ندارد و میتواند و اگر ایرادی باشد از تنظیمات است.




باید بگم در مورد فایروال و sql server browser رفتم و instance id رو دیدم بود : mssql.2
که همچین پوشه ای اصلا وجود نداشت

!!!!!!!!!!!!!!!
آقا جمله از عجیب تر گیر نیاوردید؟
حالا ولش کن، این browser چندان مهم نیست، یعنی مهم هست ولی چندان مهم نیست!!!!!!



و چون شما گفتین اون پوشه به نام sql server browser باید وجو داشته باشه من پوشش رو ساختم و از mssql.1 اونجا کپی کردم

فکر نکنم فایده داشته باشه.


ممکنه به کار من ربطی داشته باشه ؟
نه.

فعلاً سه سوال:
1- سرور ویستا است یا XP؟
2 - نرم افزار SQL Server Management Studio را دارید؟
3- شبکتون چطوریه؟ میتونی IP سرور را فیکس کنی؟ تو Local area Connection? یک چیز ثابت، مثلاٌ 192.168.1.10

__H2__
چهارشنبه 13 شهریور 1387, 16:58 عصر
سلام
فکر کنم یک اشتباهی رخ داده!
من دستورات پست 4 را از پستی مشابه از خودم در سایت p30 یک راست کپی کردم.
موقعی که اون روند دستوری را نوشتم برای express نبود.
الآن یک دفعه یادم امد شما با express میخواهید وصل شوید، در حالی دستور فوق را من برای کاربر سایت ...

پس باید پروتکلهای شبکه را برای express فعال کنید.

میبخشید.
یعنی بدین شکل:


Start->Programs->Microsoft SQL Server 2005->Configuration->SQL Server Surface Area Configuration->SQL Server 2005 Surface Area Configuration
{
->SQLEXPRESS->Remote Connections->Using both TCP/IP and named pipes->Apply


->SQLEXPRESS->Stop->Start


->SQLEXPRESS->Start


->SQL Server Browser->StartupType->Automatic


->SQL Server Browser->Start
}

این را انجام دهید، انشا ا... مشکلتان حل میشود.

رضا عربلو
چهارشنبه 13 شهریور 1387, 19:30 عصر
SQL Server Management Studio Service Pack 2 را می توانی است مایکروسافت دانلود کنی.
http://www.microsoft.com/downloads/details.aspx?familyid=6053C6F8-82C8-479C-B25B-9ACA13141C9E&displaylang=en

samprp
پنج شنبه 14 شهریور 1387, 00:53 صبح
سلام. خواهش می کنم .
اون تنظیماتی که گفتین رو برا همه فعال کرده بودم .

مشکل رفع شد مشکل از فایرواله . وقتی اونو به طور کامل غیر فعال کردم دوستم تونست وصل بشه و پیغام ساکسسفول داد . ولی وقتی دوباره فعالش کردم دوباره اکسس دیناید داد . ببنید این مسیر فایل اکسپرس هست :
G:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\sqlservr.exe
تو اسکوئل بروز هم تب ادونسد انستنس آی دی بود : MSSQL.1

پس مشکل الان فایرواله.
پیشاپیش ممنون.

__H2__
پنج شنبه 14 شهریور 1387, 03:00 صبح
سلام

ببنید این مسیر فایل اکسپرس هست :
G:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn\sqlservr.exe
تو اسکوئل بروز هم تب ادونسد انستنس آی دی بود : MSSQL.1

پس مشکل الان فایرواله.

مسیر درایو C نبوده!
اگر مسیر جدید را طبق پست 4 به فایروال بدهید، باید درست شود، منظورم بدون خاموش کردن کلی فایروال است.

موفق باشید.

Xcalivorse
پنج شنبه 14 شهریور 1387, 07:14 صبح
Sql Express برای استفاده Local به همراه Visual Studio ارئه شده و علاوه بر اینکه قابلیت کار در شبکه را ندارد، نمیتوان بیش از 4 میلیون رکورد در آن ذخیره کرد.

samprp
پنج شنبه 14 شهریور 1387, 13:00 عصر
نه پروگرم فایل همون جاست
فایده نداره
به غیر از خاموش کردن فایروال به طریق دیگه ای کار نمی کنه