PDA

View Full Version : آپلود ASPNETDB



programmable
چهارشنبه 25 مهر 1386, 00:51 صبح
سلام
من یه سایت رو با استفاده از روش AUthentication sql server ساختم . حالا نمیدونم چجوری می تونم دیتابیس ASPNETDB رو آپلود کنم؟در واقع همون دیتابیسی که تنظیمات امنیتی توش هست.
وقتی از SQLSERVER ENTERPRISE MANAGER استفاد ه می کنم همش خطا میده که نمیتونه به وصل بشه . خود Enterprise manager کنترل پنل هاست هم امکان آپلود دیتیابیس رو نداره .

با استفاده از File Manager هاست هم که نمیشه دیتابیس رو آپلود کرد ! پس من چی کار کنم؟ :گریه:

راستی وقتی پروژه رو توی ویژوال استودیو باز میکنیم دیتا بیس تو پوشه App_Data هست رو هاست کجا باید باشه؟

mp2009
چهارشنبه 25 مهر 1386, 10:21 صبح
salam
manam hamin moshkelo daram age mishe modiran mohrtaram komak konan
bebakhshid ke finglish neveshtam coon az yek coffenet hastam ba farsi ham nasb nist

mp2009
چهارشنبه 25 مهر 1386, 14:55 عصر
دوستان کسی نمیدونه چه جوری میشه حجم فایل aspnetdb رو کم کرد؟

hamedgh
چهارشنبه 25 مهر 1386, 15:01 عصر
سلام عزیزان
شما باید کد بانک را Generate کنید خود اس کیو ال این کار را می کند بعد کد بدست امده را
در سرور اجرا کنید خود بانک دوباره انجا ساخته می شود
در ضمن به تاپیک من هم سری بزنید و جواب سوال ما را بدهید
http://barnamenevis.org/forum/showthread.php?t=82075

mp2009
چهارشنبه 25 مهر 1386, 15:42 عصر
حامد جان مرسی
میشه بیشتر توضیح دهید؟

programmable
چهارشنبه 25 مهر 1386, 17:40 عصر
ها!!!!! ای Generate که گفتی یعنی چه!؟

کجا چطوری انجامش بدیم؟ بعد نتیجه رو چجوری رو سایت منتقل کنیم؟

hamedgh
چهارشنبه 25 مهر 1386, 17:55 عصر
روی نام دیتا بیست راست کلیک می کنی AllTask / Generate Sql Script
را می زنی بعد چند تا نکست بعد کد را می گیری کد ساختن دیتا بیست است
از طریق هر طور که راه داری به دیتا بیس انجا وصل می شی و کد را مانند یک دستور Sql اجرا می کنی مثل اینکه بخواهی یک دستور select را اجرا کنی البته اگر در query Analyzer خود دیتا بیس مقصد کدت را اجرا کنی بهتر است

hamedgh
چهارشنبه 25 مهر 1386, 18:06 عصر
دوستان جواب سوال ما را هم بدهید به خدا می روید بهشتhttp://barnamenevis.org/forum/showthread.php?t=82075

SalarSoft
چهارشنبه 25 مهر 1386, 18:31 عصر
خود فایل ASPNETDB.MDF و رو آپلود می کنی و بعد هم باید اون رو دیتابیس سرور attach کنی. جهت اطلاع attach رو با sp_attach_db انجام بده.
بعد هم که کانکشن استرینگ رو باید تنظیم کنی.


راستی وقتی پروژه رو توی ویژوال استودیو باز میکنیم دیتا بیس تو پوشه App_Data هست رو هاست کجا باید باشه؟
همون جا. جاش خوبه!

programmable
چهارشنبه 25 مهر 1386, 18:47 عصر
طبق فرمایش شما یک اسکریپت ساختم و تو کلیپ برد کپی کردم . بعدش رفتم تو هاست تو Enterprise manager یه دیتا بی س ساختم به اسم ASPNETDB توش query رو اجرا کردم . هیچ اتفاقی نیافتاد نه جدولی ساخته شد نه هیچ اتفاق دیگه ای!:ناراحت:

programmable
چهارشنبه 25 مهر 1386, 18:53 عصر
خود فایل ASPNETDB.MDF و رو آپلود می کنی و بعد هم باید اون رو دیتابیس سرور attach کنی. جهت اطلاع attach رو با sp_attach_db انجام بده.
بعد هم که کانکشن استرینگ رو باید تنظیم کنی.


همون جا. جاش خوبه!

هیچ کدوم از فرمایشات شما در plesk نیست یا اگه هست من بلد نیستم!
1. وقتی دیتا بیس رو با فایل منیجر آپلود می کنم به عنوان یه فایل باینری میشناستش!
2. اصلا تو اینترپراز منیجر sp_atach_db کجا هست!! نیست که!
3. تو اینترپرایز منیجر قسمت تنظیم کانکشن استرینگ نداریم!
ممنون

hamedgh
چهارشنبه 25 مهر 1386, 19:33 عصر
تا حالا بانکی را با کد نویسی ساختی فرقی نمی کند چه کد را ما بنویسیم یااز طریق ویزاد
طراحی کنیم و بعد کدش ر ااز اس کیو ال بگیرم و جای دیگر اجرا کنیم در ضمن این کدی ک می دهد کد کل دیتا بیس است نه کد تیبل ها
کاری که salar soft پیشنهاد کردند بسیار کمتر وقت می گیرد نظر من هم همین است
کاری که من پیشنهاد کرده بودم برای موقعی است که به سرور دسترسی کامل نداریم و می خواهیم فایل را با حجم کمتری اپلود کنیم

programmable
چهارشنبه 25 مهر 1386, 21:55 عصر
ممنون از پاسختون ولی من هنوز گیر کردم !!!!
یه سایت زپرتی ساختم که توش از role و این چیزا استفاده کردم ! حالا میخوام دیتابیس شو آپ کنم!
:گریه::گریه:

دیتا بیس آپ نمیشه با فایل منیجر !

hamedgh
چهارشنبه 25 مهر 1386, 22:22 عصر
خوب من چون دیتا بیس آپ نمی شد گفتم کدش را دربیاور بعد روی سرور اجرا کن
البته کا ر یه کمی سنگین است و به همین راحتی ها نیست اگر روش salarsoft عملی نشد که می گی نمیشه در حالی که درسته
از روش من استفاده کن در غیر این صورت راهی دیگری وجود نداره به نظر کمی بیشتر مباحث مربوط به دیتابیس را بخونی بهتر است این جوری مشکلی ازت حل نمی شود

programmable
چهارشنبه 25 مهر 1386, 22:49 عصر
ممنون دوست عزیز از اینکه تاپیک رو پیگیری میکنید.

ببنید من میخوام از روش جناب سالار استفاده کنم ولی عرض کردم که سوال من اینجاست :با استفاده از پنل Plesk کجا باید فایل رو آپلود کنم؟ کجا این procedur که گفتن برای اتچ رو اجرا کنم؟
اینا برای من سواله!

SalarSoft
پنج شنبه 26 مهر 1386, 08:56 صبح
1. وقتی دیتا بیس رو با فایل منیجر آپلود می کنم به عنوان یه فایل باینری میشناستش!
!! خوب فایل باینری است !!

2. اصلا تو اینترپراز منیجر sp_atach_db کجا هست!! نیست که!
قرار نیست اونجا باشه. این یک SP در sql است.

3. تو اینترپرایز منیجر قسمت تنظیم کانکشن استرینگ نداریم!
در config خود برنامه تون این کار رو باید بکنید.

با استفاده از پنل Plesk کجا باید فایل رو آپلود کنم؟ کجا این procedur که گفتن برای اتچ رو اجرا کنم؟
جای خاصی لازم نیست. همون App_data کفایت می کنه.
اون SP رو هم تو برنامت باید اجرا کنی تا بانک attach بشه.
جهت اطلاع این هم کدش:


private string GenerateMasterConnection(string DbName)
{
string c = "Data Source={0};Initial Catalog=Master;Integrated Security=True";
return string.Format(c, DbName);
}

private string ApplyCurrentPath(string fileName)
{
string path = Path.Combine(HttpContext.Current.Request.PhysicalA pplicationPath, "App_data");
path = Path.Combine(path, fileName);
return path;
//return Path.Combine(Path.GetDirectoryName(Application.Exe cutablePath), fileName);
}

private bool AttachDatabase(string DbName, string DBFile,string logFile)
{
string attachConnection = GenerateMasterConnection(DbName);
SqlConnection conn = new SqlConnection(attachConnection);
SqlCommand cmd = new SqlCommand("", conn);

DBFile = ApplyCurrentPath(DBFile);
logFile = ApplyCurrentPath(logFile);

// Query to attach database to SQL
string query = "EXEC sp_attach_db @dbname = N'{0}', @filename1 = N'{1}',@filename2 =N'{2}'";
query = string.Format(query, DbName, DBFile, logFile);
try
{
conn.Open();
cmd.CommandText = query;
cmd.ExecuteNonQuery();
return true;
}
finally
{
conn.Close();
}
}



و این هم نحوه استفاده:


AttachDatabase("ASPNETDB", "ASPNETDB.MDF", "ASPNETDB.LDF");

mp2009
پنج شنبه 26 مهر 1386, 09:50 صبح
ممنون از جناب سالار
میشه درمورد کدهای بالا کمی بیشتر توضیح بدهید
با تشکر از شما

SalarSoft
پنج شنبه 26 مهر 1386, 17:22 عصر
کد بالا با گرفتن نام بانک و نام فایل ها اقدام به attach کردن میکنه.
نحوه فراخوانی sp_attach_db اینطوریه

EXEC sp_attach_db @dbname = N'نام بانک', @filename1 = N'نام فایل دیتا',@filename2 =N'نام فایل Log'

programmable
پنج شنبه 26 مهر 1386, 17:30 عصر
جناب SalarSoft با تشکر از راهنماییتون

اگه لطف کنید در مورد سوال تاپیک زیر راهنمایی کنید ممنون میشم
http://barnamenevis.org/forum/showthread.php?t=82178

sadegh.rj
یک شنبه 31 شهریور 1387, 00:13 صبح
اون SP رو هم تو برنامت باید اجرا کنی تا بانک attach بشه.
جهت اطلاع این هم کدش:

پس از اجرای کدها در هاست برنامه Error زیر رو میده :



CREATE DATABASE permission denied in database 'master'.

در سیستم خودم با اعطای مجوز ساختن دیتابیس جدید به sql در تنظیمات sqlserver مشکل حل میشه ولی در هاست چکار میشه کرد(دسترسی به تنظیمات میسر نیست)!؟

hassan_h
سه شنبه 09 مهر 1387, 22:06 عصر
کسی بلد نیست

skflower
شنبه 24 بهمن 1388, 09:31 صبح
کسی بلد نیست

دوست عزیز. اگه از پلسک استفاده میکنید، تو قسمت Virtual Directory که برید باید پوشه سایتتون رو به عنوان Virtual Directory تعریف کنید. یا اگه تو root هاستتون آپلودش کردید که هیچچی. ولی از همین قسمت باید Permission ها رو تنظیم کنید.

m1pfard
شنبه 24 بهمن 1388, 15:28 عصر
راحت ترین مطمئن ترین روش استفاده از QUERY های خود فریم ورک دات نت هست:
مسیر این فایلها:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727
که البته پوشه آخر به ورژن دات نت مورد استفاده مربوط میشه
حالا فایلهای SQL موجود رو به ترتیب زیر روی دیتابیسی که قبلا تو سرور ایجاد کردی اجرا کن:

InstallCommon.sql
InstallMembership.sql
InstallProfile.SQL
InstallPersonalization.sql
InstallRoles.sql

برای اجرای این Query ها هم می تونین از ابزارهای موجود آنلاین استفاده کنید. من خودم (با توجه به اینکه از پارسدیتا استفاده می کنم به این سایت می رم. البته امیدوارم بعدا نگید تبایغ شد)
sqladmin.parsdata.com