دیتابیس · متوسط

آموزش جامع MySQL

از نصب و utf8mb4 درست برای فارسی تا طراحی جدول، JOIN و Window Function، ایندکس و EXPLAIN، تراکنش و قفل، بکاپ و Replication و اتصال امن به جنگو — با ده‌ها نکته‌ای که کمتر کسی می‌داند.

۴۲ درس ۱۵ ساعت و ۳۰ دقیقه

MySQL موتور پشت وردپرس، ووکامرس، بسیاری از سامانه‌های سفارش و حسابداری و هزاران پروژه‌ی جنگو و لاراول است؛ اما بیشتر کسانی که با آن کار می‌کنند فقط SELECT و INSERT بلدند و روزی که سایت کند شد، فارسی‌ها «؟؟؟» شد یا خطای Deadlock آمد، نمی‌دانند از کجا شروع کنند. این دوره برای برنامه‌نویسان وب، مدیران سرور و هر کسی نوشته شده که می‌خواهد MySQL را «درست» بفهمد، نه فقط کار راه بیندازد.

از صفر SQL شروع می‌کنیم و خیلی زود به لایه‌ی حرفه‌ای می‌رسیم: utf8mb4 و collation برای فارسی و مسئله‌ی ی/ک عربی، انتخاب درست نوع داده (DECIMAL برای پول، DATETIME در برابر TIMESTAMP)، کلید اصلی و خارجی و نرمال‌سازی، JOIN و CTE بازگشتی و Window Function، ایندکس B-Tree و EXPLAIN ANALYZE، MVCC و سطوح ایزوله‌سازی و قفل‌ها، کاربران و Roleها، بکاپ و بازیابی لحظه‌ای با binlog، Replication با GTID، تنظیمات کارایی و اتصال از پایتون و جنگو. در پایان یک دیتابیس کامل سفارش و تولید کارخانه‌ی فرش با گزارش‌های مدیریتی می‌سازیم و خطاهای رایج را یکی‌یکی درمان می‌کنیم.

هر درس با بخش «نکته‌هایی که کمتر کسی می‌داند» تمام می‌شود؛ دام‌ها و ترفندهایی که معمولاً بعد از چند سال و چند حادثه‌ی تولید یاد گرفته می‌شوند. پیش‌نیاز: آشنایی مقدماتی با خط فرمان. تمرکز روی MySQL 8.0 و 8.4 LTS است و تفاوت‌های MariaDB هرجا اهمیت دارد گفته می‌شود.

سرفصل‌ها

InnoDBMariaDBMySQLSQLبهینه‌سازی کوئریجنگودیتابیس

دوره‌های مرتبط