![]() |
|
|||||||
![]() |
|
|
ابزارهای موضوع | نحوه نمایش |
|
#1
|
|||
|
|||
|
سلام دوستان
میخواستم بدونم Engin های موجود در mysql با هم چه فرقی دارند و کجاها بهتره از کدوم استفاده کنیم؟ مثلا MYISAM با InnoDB چه فرقی داره ؟ آقا من تازه کارما ...
|
|
#2
|
|||
|
|||
|
بزرگترین اختلافشون اینه که innoDB از transaction ها پشتیبانی میکنه
در اضمن از innoDB وقتایی استفاده میشه که ثبات اطلاعات مهمتره و از MYISAM وقتی که سرعت مهمتره InnoDB معمولا برای کار با حجم اطلاعات خیلی زیاد استفاده میشه و بقیه شو خودت بخون: http://tapos.wordpress.com/2008/01/10/difference-between-innodb-and-myisam
__________________
My Name Is Neo |
|
#3
|
|||
|
|||
|
ضمنا innodb از کلید های خارجی هم پشتیبانی میکنه
|
|
#4
|
|||
|
|||
|
ممنون دوستان خیلی عالی بود
|
|
#5
|
|||
|
|||
|
در مورد MEMORY BlackHole MRG_myISAM CSV , Archive کسی چیزی می دونه ؟
|
|
#6
|
|||
|
|||
|
انواع جداول در MySQL
جداول InnoDB : این نوع جداول امکانات زیر را در اختیار شما قرار می دهند: Transaction-safe بودن. Row-level locking به این معناست که فقط سطری که در حال استفاده است از دسترس کاربران دیگر خارج است در حالیکه در بسیاری از انواع جداول دیگر جدولی که در حال کار کردن با آن هستیم از دسترس دیگر کاربران خارج است. Support for foreign keys InnoDB روش خاص خودش رو برای ذخیره اطلاعات دارد، شاخه خاص خود و نیز تنظیمات خاص خود. در جایی که جداول MyISAM هر جدول را در یک فایل ذخیره می InnoDB ممکن است یک جدول را در چندین فایل متفاوت ذخیره کند و همین امر به InnoDB این امکان را می دهد که بدون وابستگی به فایل سیستم سیستم عامل هر چقدر که می خواهد بزرگ شود. توجه داشته باشید که برای یک پروژه مشخص جداول InnoDB به مراتب بیشتر از همان جداول در حالت MyISAM فضا اشغال می کنند. بسیاری از سایتهای بزرگی که از MySQL استفاده می کنند مثل Slashdot، Google و یا Yahoo! finance از جداول InnoDB استفاده می کنند . InnoDB یکی از سریعترین Transaction-safe در دنیاست. InnoDB توسط یک کمپانی جداگانه به نام InnoBase Oy توسعه داده می شود که برای به دست آوردن آخرین اطلعات می توانید از وب سایت آنها در www.innodb.com دیدن کنید. جداول BerkeleyDB : انتخاب دیگری که برای جداول Transaction-safe وجود دارد BerkeleyDB یا به اختصار BDB است، این جداول توسط شرکت نرم افزاری Sleepycat ارائه شده که از طریق نشانی www.sleepycat.com قابل دسترسی است. این نوع جداول در حالتی که به transaction-safe احتیاج است به اندازه رقیب خود یعنی InnoDB مورد استفاده قرار نگرفته است. موتور BDB مدت زمان زیادی است که وجود دارد اما یکپارچگی آن با MySQL امر تازه ای است. تمام جداول BDB نیاز به یک کلید دارند چیز بدی نیست چون شدیدا به شما توصیه می کنم که برای هر جدول یک کلید مشخص کنید اما اینجا اجباری است و اگر شما یک کلید مشخص نکنید خود BDB اینکار را انجام خواهد داد. جداول MERGE : راهی هوشمندانه برای حل مشکل محدودیت حداکثر اندازه یک فایل در فایل سیستمهای گوناگون، همانطور که گفته شد هر جدول MySQL در یک فایل ذخیره می شود پس مشکل حداکثر اندازه یک فایل مشکل مهمی است و MySQL با استفاده از نوع MERGE این مشکل را حل کرده است. در این نوع جدول شما ابتدا چندین جدول خاص خود با ساختاری یکسان را می سازید، بعد یک جدول از نوع MERGE با همان ساختار می سازید که در برگیرنده تمامی آن جداول می باشد. جداول HEAP : جداولی فوق العاده سریع چون تماما در حافظه نگه داری می شوند، مشکل این نوع جداول این است که مثلا اگر برق قطع شود شما تمامی اطلاعات خود را از دست می دهید، به هر حال این نوع جداول برای کارهای موقتی مناسب هستند. این نوع جداول محدودیتهایی هم دارند: عدم پشتیبانی از auto_increment عدم پشتیبانی از TEXT یا BLOB محدود بودن عبارت جستجو به تنها استفاده از عملگرهای >=< و ...
__________________
http://mykargah.co.cc |
|
#7
|
|||
|
|||
|
واقعا جامع بود مرسی
|
|
#8
|
|||
|
|||
|
خواهش می کنم دست مترجمش درد نکنه.
اگر تمایل به یادگیری هر چه بیشتر دیتابیس دارید حتما به مطالعه رویه های ذخیره شده ، توابع نوشته شده توسط کاربر، تریگرها و تراکنش بپردازید.
__________________
http://mykargah.co.cc |
![]() |
| ابزارهای موضوع | |
| نحوه نمایش | |
|
|