PDA

View Full Version : ذخیره عکس در mysql



fullboy
یک شنبه 20 مرداد 1392, 22:00 عصر
سلام دوستان
میخواستم بدونم بهترین و سریعترین روش ذخیره و خوندن عکس از mysql چیه !؟

ali2k5
یک شنبه 20 مرداد 1392, 22:10 عصر
ایجاد یک جدول برای ذخیره کردن مشخصات فایل که یک فیلد ازنوع blob برای ذخیره کردن محتوای فایل لازم دارید.
خواندن و نوشتن فایل دردیتابیس باید توجیح داشته باشه ...

fullboy
یک شنبه 20 مرداد 1392, 22:23 عصر
توجیح داشته باشه !! ممنون میشم بیشتر توضیح بدین ....

parsboy
یک شنبه 20 مرداد 1392, 22:40 عصر
توجیح داشته باشه !! ممنون میشم بیشتر توضیح بدین ....
http://barnamenevis.org/showthread.php?192820-%D8%B0%D8%AE%DB%8C%D8%B1%D9%87-%D8%AE%D9%88%D8%AF-%D8%B9%DA%A9%D8%B3-%D8%AF%D8%B1-%D9%BE%D8%A7%DB%8C%DA%AF%D8%A7%D9%87-%D8%AF%D8%A7%D8%AF%D9%87-mysql&p=984029&viewfull=1#post984029

ali2k5
یک شنبه 20 مرداد 1392, 22:43 عصر
توجیح داشته باشه !! ممنون میشم بیشتر توضیح بدین ....
روی mysql پارامتر max allowed packet بصورت پیش فرض روی یک مگ هست که به شما اجازه ارسال فایل تا یک مگ را میدهد و برای ذخیره فایل های حجیم باید این پارامتر را تغییر بدید

جدا از مشکل این پارامتر توجیح ذخیره فایل در دیتابیس ؟ دسترسی به فایل از روی هارد به مراتب سریعتر از دسترسی به دیتابیس هست و با توجه به ساختار جدول دیتابیس هرچقدر این جدول سنگین تر بشه درصورت کرش کردن شما حجم زیادی از فایل ها رو از دست میدید به این نکته توجه کنید رابطه حجم دیتابیس با انجام عملکرد ها متعارف مثل تعمیر کاملا معکوس هست یعنی حجم بالا تعمیر را به مراتب طولانی تر میکنه

خلاصه : هیچوقت توجیحی برای ذخیره عکس پروفایل کاربرها توی دیتابیس وجود نداره چون وقتی به بحث سرعت دسترسی میرسید در یک سایت پربازدید عملا سرویس دیتابیس شما فلج میشه و کل سرور رو میخوابونه درصورتیکه اگر روی هارد ذخیره شده باشه بدون هیچ مسئله ای در دسترس هست در بازدید بالا !
ولی یک زمانی هست شما میخواید یک رمز نگاری روی محتوای فایل انجام بدید و برای امنیت بیشتر داخل دیتابیس ذخیره کنید و فایل پس از بازشدن رمز محتواش در دسترسی قرار بگیره و کارهایی از این دست ...

p30online
یک شنبه 20 مرداد 1392, 23:16 عصر
امیدوارم کارتو راه بندازه http://barnamenevis.org/showthread.php?412067-%D9%86%D9%85%D8%A7%DB%8C%D8%B4-%D8%B9%DA%A9%D8%B3-%D9%87%D8%A7%DB%8C-%D8%B0%D8%AE%DB%8C%D8%B1%D9%87-%D8%B4%D8%AF%D9%87-%D8%AF%D8%B1-%D8%A8%D8%A7%D9%86%DA%A9-%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA%DB%8C

Unique
دوشنبه 21 مرداد 1392, 01:57 صبح
ذخیره فایل توی database به هیچ وجه توصیه نمیشه ! باید نام فایل را توی database ذخیره کنید و خود فایل را روی فایل سیستم ، غیر از این با مشکلات فراوانی روبرو میشین !

titreaval
دوشنبه 21 مرداد 1392, 02:06 صبح
حتی آواتار !!!
به نظر من آواتار را در دیتابیس .
و در جدولی جدا ذخیره کنیم بهتره ...
تازه ضد شل هست
اگه فرد تنها بخش آپلودش همان آواتار باشد .
وقتی چیزی را مثل تصویر بخواهیم در هاست اشتراکی روی فایلی آپ کنیم
فایل باید روی پرمیشن 555 حداقل باشه
خب . حالا فرد در هر ده سال 1000 کاربر داره
1000 * 1 مگ میشه 1 گیگ
فقط بدیش مشکل بک آپ گیری هست :(

ali2k5
دوشنبه 21 مرداد 1392, 10:38 صبح
حتی آواتار !!!
به نظر من آواتار را در دیتابیس .
و در جدولی جدا ذخیره کنیم بهتره ...
تازه ضد شل هست
اگه فرد تنها بخش آپلودش همان آواتار باشد .
وقتی چیزی را مثل تصویر بخواهیم در هاست اشتراکی روی فایلی آپ کنیم
فایل باید روی پرمیشن 555 حداقل باشه
خب . حالا فرد در هر ده سال 1000 کاربر داره
1000 * 1 مگ میشه 1 گیگ
فقط بدیش مشکل بک آپ گیری هست :(

نه عزیزم این توصیه های غلط را نفرمائید ! چهارنفر میخونن فکر میکنن کار خوبیه میرن انجام میدن !
عزیزم عکس پروفایل بیشترین لود رو در یک سایت داره که اصلا منطقی نیست سرویس دیتابیس رو درگیر مرتب لود کردن عکس کاربرها کنید.

شل چه ربطی به دیتابیس داره ، شما برنامه اپلود عکس را درست بنویس ، پرمیشن صحیح تعریف کن ، با چهارتا دستور htaccess روی فولدر ذخیره سازی عکس ها اجرا هرچیزی به جز نمایش عکس را غیرفعال کن دیگه مسئله ای نخواهید داشت.