جدیدترین دوره‌های آموزش MySQL (مای اس کیو ال)

مسیر یادگیری MySQL

آخرین پرسش‌های کاربران در MySQL (مای اس کیو ال)

MySQL (مای اس کیو ال)

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

MySQL‌ چیست؟

MySQL چیست

در ابتدا لازم است که با تلفظ صحیح این کلمه آشنا شوید: MY-ES-KYOO-EL یا مای اس کیو ال. در برخی دوره ها یا مطالب آموزشی، این کلمه به صورت my sequel‌ هم تلفظ می شود ولی مورد تایید نیست.

اما MySQL در سال ۱۹۹۴ توسط شرکت Sun Microsystems تولید شد که بعدها در سال ۲۰۰۸ به کمپانی AB منتقل گردید و در نهایت در سال ۲۰۱۰ به صورت رسمی توسط شرکت Oracle‌ توسعه پیدا کرد.

به صورت کلی MySQL یک نرم افزار مدیریت دیتابیس یا پایگاه داده است که به صورت رابطه ای عمل می کند. به این نوع نرم افزارها RDBMS گفته می شود. در ادامه به توضیح این عبارت می پردازیم:

  • R که مخفف کلمه Relational است به ارتباط بین جداول یک پایگاه داده اشاره می کند. یعنی در MySQL هر داده درون یک جدول منحصر به فرد ذخیره شده و این جدول می تواند با سایر جداول ارتباط داشته باشد.
  • DB مخفف عبارت Database بوده که به پایگاه داده اشاره دارد. از پایگاه داده یا دیتابیس برای ذخیره مجموعه ای از داده ها استفاده می شود.
  • M مخفف کلمه Management به معنای مدیریت داده و در نهایت S مخفف کلمه System است.

اما پس از این همه توضیح که گاهی ممکن است گیج کننده به نظر برسد، به سمت پایگاه داده و تعریف آن برویم:

پایگاه داده یا دیتابیس (Database) چیست؟

پایگاه داده یا دیتابیس (Database) چیست؟

دیتابیس، وظیفه ذخیره داده ها به صورت منظم و ساختاردهی شده را بر عهده دارد. اجازه دهید با یک مثال خیلی ساده این مفهوم را توضیح دهیم:
فرض کنید شما برای خرید محصول به وب سایت روکسو اقدام می کنید و پس از افزودن به سبد خرید و پرداخت، منتظر دریافت کالا می شوید. در ظاهر کاری که انجام می دهید کاملا ساده و بدون دردسر است اما در عمل و برنامه نویسی موضوع اینقدر هم ساده نیست. تمام این فرآیند، از ورود به سایت گرفته تا نهایی کردن خرید یک محصول، در پایگاه داده (Database) ذخیره شده و در صورت نیاز فراخوانی می شود. حتی مشاهده هر یک از این محصولات نیز به پایگاه داده مرتبط است. پس تا به اینجای کار متوجه شدید که منظور از پایگاه داده یک فضا برای ذخیره اطلاعات مرتبط با وب سایت هست.

پایگاه داده ها به دو دسته رابطه ای و بدون رابطه تقسیم بندی می شوند؛ در پایگاه داده رابطه ای همانطور که در بالا ذکر شد، داده های یک جدول با داده های سایر جداول در ارتباط هستند و این عمل باعث هوشمند شدن پروژه ها می شود و این در حالیست که در پایگاه داده بدون رابطه هیچ گونه وابستگی بین جداول وجود ندارد.
سیستم مدیریت پایگاه داده MySQL به صورت رابطه ای عمل می کند. این مورد هم با ذکر مثال، بهتر درک می شود. به تصویر زیر دقت کنید:

پایگاه داده رابطه ای

فرض کنید یک فروشگاه اینترنتی از سه جدول به نام های products و orders و customers تشکیل شده است. در جدول products اطلاعات محصولات ذخیره می شود. در جدول order تمام سفارشات یک کاربر قرار می گیرد و در نهایت در جدول customers اطلاعات مشتریان درج می شود. حالا هر مشتری (customer) می تواند یک یا چندین سفارش (order) داشته باشد و هر سفارش (order) شامل یک یا چندین محصول (product) هست. با بررسی تصویر و توضیحات فوق به صورت کامل مبحث ارتباط بین جداول را درک می کنید.

اما یک سوال دیگر که وجود دارد این است: پایگاه داده ها با چه زبانی کار می کنند؟ در پاسخ باید گفت برای نوشتن دستورهای پایگاه داده معمولا از زبان SQL‌ استفاده می شود.

SQL چیست؟

SQL چیست

اس کیو ال یا سی کو ال (SQL or SEQUEL) مخفف عبارت Structured Query Language بوده و هدف از آموزش و یادگیری آن، کسب مهارت جهت انجام عملیات های مختلف روی پایگاه داده است. یعنی شما با استفاده از این زبان می توانید با هر سیستم RDBMS کار کرده و داده های خود را استخراج یا ذخیره کنید. این زبان در سال ۱۹۷۰ توسط IBM ایجاد شد. در ادامه یک سری از ویژگی های برجسته این زبان را شرح می دهیم:

کوئری داده ها: با SQL می توانید به پایگاه داده درخواست داده تا اطلاعات موردنظر را در اختیار کاربر قرار دهد.
نگهداری داده ها: افزودن، حذف، تغییر، ترتیب بندی و سایر عملیات مثل بروزرسانی داده و ... با زبان SQL‌ امکان پذیر است.

نوع داده ها: در SQL می توانید مشخص کنید که نوع یک داده چه چیزی باشد. مثلا در یک ردیف از جدول می توانید تعیین کنید که ستون نام و نام خانوادگی از نوع رشته یا string باشد.

سطح دسترسی به داده: با SQL می توانید مشخص کنید که سطح دسترسی به یک داده در چه اندازه ای باشد. مثلا یک کاربر ادمین بتواند به تمام مشخصات دسترسی داشته باشد و یک کاربر عادی قسمت های محدودتری را ببیند.

پس از توضیحات بالا لازم می دانیم تا شما را با نحوه کارکرد عملی MySQL با سرور آشنا کنیم:

MySQL چگونه کار می کند؟

MySQL چگونه کار می کند؟

تصویر فوق فرآیند ارتباط کاربر با سرور (سایت) را نمایش می دهد. به مثال فروشگاه اینترنتی بر می گردیم. تصور کنید صفحه یک محصول را در وب سایت روکسو باز می کنید. به محض اینکه شما آدرس یا URL صفحه محصول را وارد و دکمه Enter را می زنید، یک درخواست به سمت سرور ارسال می شود (که در تصویر با کلمه Request مشخص شده است). سرور به پایگاه داده (Database) رفته و برای دستیابی به محصول موردنظر با استفاده از زبان SQL یک کوئری مشخص را اجرا می کند. پس از پیدا کردن محصول، آن را به سمت سرور فرستاده و نتیجه نهایی توسط سرور به کاربر (Client) بازگردانده می شود.

چرا باید از MySQL استفاده کنیم؟

یکی از چالش‌هایی که اکثر کاربران با آن مواجه هستند، انتخاب سیستم مدیریت پایگاه داده است. همه ما می دانیم که سیستم های مدیریت پایگاه داده گسترده بوده و معروف ترین آنها MySQL و Oracle و Microsoft SQL Server هستند. اما چرا باید آموزش MySQL را در اولویت قرار دهیم؟

منحنی یادگیری با شیب بسیار کم

MySQL به دلیل کاربری بسیار ساده و لذت بخش، طرفداران زیادی دارد و برای آموزش و یادگیری آن نیازی نیست که وقت زیادی بگذارید.

عملکرد عالی

به دلیل شیوه ی طبقه بندی داده در این سیستم، کنترل و مدیریت داده های حجیم با عملکرد بالایی صورت می گیرد. در حال حاضر وب سایت های بسیار بزرگی مانند فیس بوک، توییتر، نت فلیکس و ... از MySQL استفاده می کنند.

امنیت بالا

MySQL به عنوان یک سیستم با ضریب امنیتی بسیار بالا شناخته می شود و به دلیل بروزرسانی عالی، به محض مشاهده یک حفره، سریعا نسخه جدیدی ارائه شده و می توان آن را جایگزین کرد.

رایگان بودن

MySQL علیرغم توانایی های خارق العاده ای که دارد، کاملا رایگان بوده و برای استفاه از آن نیازی به پرداخت هیچ هزینه ای نیست.

پشتیبانی مناسب

وقتی شما در حال استفاده از یک محصول هستید که کمپانی Oracle پشتیبانی آن را به عهده دارد، شک نکنید که آن محصول بی نظیر خواهد بود. پشتیبانی های مداوم و بروزرسانی های MySQL باعث شده تا کاربران لذت بیشتری از این سیستم مدیریت پایگاه داده ببرند.

کاربرد در صنایع مختلف

به دلیل اینکه MySQL به سادگی روی سیستم های لینوکسی و ویندوز نصب شده و فضا، رم و CPU بسیار کمی را مصرف می کند، به عنوان اولین سیستم برای موارد مختلف صنعتی از آن استفاده می شود.