Academy and Foundation unixmens | Your skills, Your future
2.28K subscribers
6.65K photos
1.36K videos
1.23K files
5.97K links
@unixmens_support
@yashar_esm
unixmens@gmail.com
یک کانال علمی تکنولوژی
فلسفه متن باز-گنو/لینوکس-امنیت - اقتصاد
دیجیتال
Technology-driven -بیزینس های مبتنی بر تکنولوژی
Enterprise open source
ارایه دهنده راهکارهای ارتقای سازمانی - فردی - تیمی
Download Telegram
Academy and Foundation unixmens | Your skills, Your future
در این بخش به بررسی تفاوت‌های اصلی میان MariaDB و MySQL می‌پردازیم.
ساختار دیتابیس

ا MySQL به عنوان یک سیستم مدیریت دیتابیس‌های رابطه‌ای (RDBMS) دسته‌بندی می‌شود. با تمام ویژگی‌های رایج دیتابیس‌های رابطه‌ای کار می‌کند، به طور مثال: ایجاد جداول، constraintها، viewها و … از فرایند‌ها و مراحل دیتابیس اصلی برای اجرا و انجام کارهای مختلف، از جمله روش‌های ذخیره‌سازی، راه‌اندازها (triggers)، نقش‌ها و موارد دیگر استفاده می‌کند. برای تعامل با جداول دیتابیس، از کلید‌های اصلی و خارجی (primary key & foreign key) به جهت ارتباط رکوردها با یکدیگر و مدیریت دقیق آن‌ها استفاده می‌کند.

در حالی که MariaDB، همانطور که در بالا گفته شد، یک نسخه فورک شده از دیتابیس MySQL است، بنابراین شامل تمام ویژگی‌های رابطه‌ای از پیش تنظیم شده در آن است و از ساختار دیتابیس و ایندکس‌های مشابه MySQL استفاده و کاملا مشابه یکدیگر نیز کار می‌کنند. خوبی این موضوع این است که وقتی برنامه خود را به MariaDB منتقل می‌کنید، به صورت پیشفرض با آن سازگار است و نیازی به ایجاد تنظیمات جدید در دیتابیس جدید نیست.
استقرار دیتابیس

ا MySQL توسط زبان برنامه‌نویسی سی و سی‌پلاس‌پلاس ساخته شده است و تقریبا بر روی همه سیستم‌عامل‌ها کار می‌کند. همچنین نسخه باینری آن برای لینوکس، ویندوز، OS X، AIX، FreeBSD، HP-UX، BSDI، Novell Netware، NetBSD و … وجود دارد. برای دانلود MySQL به صفحه نصب آن مراجعه کنید که شامل دستورالعمل نصب برای سیستم‌عامل‌های مختلف است.

ا MariaDB با زبان‌های سی، سی‌پلاس‌پلاس، Bash و Perl نوشته شده است. به همین دلیل مزایای بیشتری نسبت به MySQL دارد. همچنین شامل فایل‌های نصبی باینری برای ویندوز، لینوکس، OS X، FreeBSD، OpenBSD، Solaris و … می‌شود.

برای نصب MariaDB ابتدا باید MySQL را از سیستم‌تان حذف کنید، چرا که جایگزین MariaDB است و همچنین پس از حذف MySQL به یاد داشته باشید تا دستور mysql_upgrade را اجرا کنید تا فایل‌های اصلی سیستم به نسخه جدید MariaDB ارتقا پیدا کنند.
Data Replication

ا Replication یا تکثیر داده‌ها فرایندی است که به مدیران دیتابیس این اجازه را می‌دهد تا داده‌ها و یا رکورد‌ها را از یک دیتابیس به دیتابیس دیگری کپی کنند. این فرایندی است که در آن یک دیتابیس نقش Master و دیگری نقش Slave را برعهده می‌گیرد. با استفاده از این قابلیت، مدیران دیتابیس‌ها می‌توانند به راحتی داده‌ها را بین دیتابیس‌های مختلف تکثیر کنند.

ا MySQL تکثیر یا Replication را به صورت async ارائه می‌کند، این بدین معنی است که این فرایند یک طرفه است. این موضوع دیتابیس‌های Master را برای کپی دیتا در دیتابیس‌های Slave و با هدف تکثیر و کپی جداول و خصوصیت‌ها به صورت همزمان مجاز می‌کند.

از طرف دیگر MariaDB، یک تغییر کوچک در این روند مشابه دارد. این دیتابیس نه تنها اجازه انتقال داده از Master به Slave را می‌دهد، بلکه اجازه انتقال داده از Master به Master را نیز می‌دهد. این موضوع به مدیران این امکان را می‌دهد تا به صورت همزمان با چندین دیتابیس Master کار کنند و در کنار آن انتقال داده‌ها را با قدرت بیشتری در دیتابیس Master انجام دهند.
Database Clustering

ا MySQL از یک تکنولوژی برای ایجاد کلاستر تحت عنوان MySQL Cluster استفاده می‌کند که ایجاد کلاستر و تقسیم و اشتراک خودکار میان داده‌های مربوط به هم را فراهم می‌کند. همچنین به مدیران دیتابیس‌ها این امکان را می‌دهد تا از طریق دو فاز، داده‌ها را در Nodeهای مختلف ذخیره کنند تا این اطمینان حاصل شود که خرابی فقط به یک Node بستگی ندارد.

در طرف دیگر MariaDB از Galera Cluster برای انجام تکثیر داده‌های میان چندین Node که نقش Master را دارند، استفاده می‌کند. این قابلیت را می‌توان از طریق پارامتر‌های کانفیگ و یا پیکربندی فعال کرد.
ا Indexها

هم MySQL و هم MariaDB، هر دو ایندکس‌ها (PRIMARY KEY، UNIQUE، INDEX و FULLTEXT) در B-trees ذخیره می‌کنند. آن‌ها همچنان دارای استثناهایی در indexها، نظیر: داده‌های چند بعدی و ذخیره‌سازی در R-trees هستند.

به غیر از این indexهای متداول، MySQL از indexهای hash پشتیبانی و از موتور InnoDB برای ذخیره indexهای لیست معکوس از FULLTEXT استفاده می‌کند.
پشتیبانی فنی

به عنوان بخشی از پشتیبانی مادام العمر Oracle، دیتابیس MySQL پشتیبانی کامل و فول‌تایمی را به کاربرانش ارائه می‌کند. تیم پشتیبانی آن‌ها شامل توسعه‌دهندگان خبره MySQL است که بر روی تمام ویژگی‌ها و قابلیت‌های آن تسلط و تبحر دارند و به صورت شبانه روزی در دسترس هستند تا هر گونه مشکل بزرگ و یا کوچکی را برطرف کنند.

علاوه‌براین Oracle برای تسهیل روند کار کاربران، با توجه به نیاز‌های پروژه، پشتیبانی MySQL Premier، گسترده و دائمی‌ای را ارائه می‌کند.



#mysql #mariadb #replication #master @unixmens
ساختار دیتابیس

ا MySQL به عنوان یک سیستم مدیریت دیتابیس‌های رابطه‌ای (RDBMS) دسته‌بندی می‌شود. با تمام ویژگی‌های رایج دیتابیس‌های رابطه‌ای کار می‌کند، به طور مثال: ایجاد جداول، constraintها، viewها و … از فرایند‌ها و مراحل دیتابیس اصلی برای اجرا و انجام کارهای مختلف، از جمله روش‌های ذخیره‌سازی، راه‌اندازها (triggers)، نقش‌ها و موارد دیگر استفاده می‌کند. برای تعامل با جداول دیتابیس، از کلید‌های اصلی و خارجی (primary key & foreign key) به جهت ارتباط رکوردها با یکدیگر و مدیریت دقیق آن‌ها استفاده می‌کند.

در حالی که MariaDB، همانطور که در بالا گفته شد، یک نسخه فورک شده از دیتابیس MySQL است، بنابراین شامل تمام ویژگی‌های رابطه‌ای از پیش تنظیم شده در آن است و از ساختار دیتابیس و ایندکس‌های مشابه MySQL استفاده و کاملا مشابه یکدیگر نیز کار می‌کنند. خوبی این موضوع این است که وقتی برنامه خود را به MariaDB منتقل می‌کنید، به صورت پیشفرض با آن سازگار است و نیازی به ایجاد تنظیمات جدید در دیتابیس جدید نیست.
استقرار دیتابیس

ا MySQL توسط زبان برنامه‌نویسی سی و سی‌پلاس‌پلاس ساخته شده است و تقریبا بر روی همه سیستم‌عامل‌ها کار می‌کند. همچنین نسخه باینری آن برای لینوکس، ویندوز، OS X، AIX، FreeBSD، HP-UX، BSDI، Novell Netware، NetBSD و … وجود دارد. برای دانلود MySQL به صفحه نصب آن مراجعه کنید که شامل دستورالعمل نصب برای سیستم‌عامل‌های مختلف است.

ا MariaDB با زبان‌های سی، سی‌پلاس‌پلاس، Bash و Perl نوشته شده است. به همین دلیل مزایای بیشتری نسبت به MySQL دارد. همچنین شامل فایل‌های نصبی باینری برای ویندوز، لینوکس، OS X، FreeBSD، OpenBSD، Solaris و … می‌شود.

برای نصب MariaDB ابتدا باید MySQL را از سیستم‌تان حذف کنید، چرا که جایگزین MariaDB است و همچنین پس از حذف MySQL به یاد داشته باشید تا دستور mysql_upgrade را اجرا کنید تا فایل‌های اصلی سیستم به نسخه جدید MariaDB ارتقا پیدا کنند.
Data Replication

ا Replication یا تکثیر داده‌ها فرایندی است که به مدیران دیتابیس این اجازه را می‌دهد تا داده‌ها و یا رکورد‌ها را از یک دیتابیس به دیتابیس دیگری کپی کنند. این فرایندی است که در آن یک دیتابیس نقش Master و دیگری نقش Slave را برعهده می‌گیرد. با استفاده از این قابلیت، مدیران دیتابیس‌ها می‌توانند به راحتی داده‌ها را بین دیتابیس‌های مختلف تکثیر کنند.

ا MySQL تکثیر یا Replication را به صورت async ارائه می‌کند، این بدین معنی است که این فرایند یک طرفه است. این موضوع دیتابیس‌های Master را برای کپی دیتا در دیتابیس‌های Slave و با هدف تکثیر و کپی جداول و خصوصیت‌ها به صورت همزمان مجاز می‌کند.

از طرف دیگر MariaDB، یک تغییر کوچک در این روند مشابه دارد. این دیتابیس نه تنها اجازه انتقال داده از Master به Slave را می‌دهد، بلکه اجازه انتقال داده از Master به Master را نیز می‌دهد. این موضوع به مدیران این امکان را می‌دهد تا به صورت همزمان با چندین دیتابیس Master کار کنند و در کنار آن انتقال داده‌ها را با قدرت بیشتری در دیتابیس Master انجام دهند.
Database Clustering

ا MySQL از یک تکنولوژی برای ایجاد کلاستر تحت عنوان MySQL Cluster استفاده می‌کند که ایجاد کلاستر و تقسیم و اشتراک خودکار میان داده‌های مربوط به هم را فراهم می‌کند. همچنین به مدیران دیتابیس‌ها این امکان را می‌دهد تا از طریق دو فاز، داده‌ها را در Nodeهای مختلف ذخیره کنند تا این اطمینان حاصل شود که خرابی فقط به یک Node بستگی ندارد.

در طرف دیگر MariaDB از Galera Cluster برای انجام تکثیر داده‌های میان چندین Node که نقش Master را دارند، استفاده می‌کند. این قابلیت را می‌توان از طریق پارامتر‌های کانفیگ و یا پیکربندی فعال کرد.
ا Indexها

هم MySQL و هم MariaDB، هر دو ایندکس‌ها (PRIMARY KEY، UNIQUE، INDEX و FULLTEXT) در B-trees ذخیره می‌کنند. آن‌ها همچنان دارای استثناهایی در indexها، نظیر: داده‌های چند بعدی و ذخیره‌سازی در R-trees هستند.

به غیر از این indexهای متداول، MySQL از indexهای hash پشتیبانی و از موتور InnoDB برای ذخیره indexهای لیست معکوس از FULLTEXT استفاده می‌کند.
پشتیبانی فنی

به عنوان بخشی از پشتیبانی مادام العمر Oracle، دیتابیس MySQL پشتیبانی کامل و فول‌تایمی را به کاربرانش ارائه می‌کند. تیم پشتیبانی آن‌ها شامل توسعه‌دهندگان خبره MySQL است که بر روی تمام ویژگی‌ها و قابلیت‌های آن تسلط و تبحر دارند و به صورت شبانه روزی در دسترس هستند تا هر گونه مشکل بزرگ و یا کوچکی را برطرف کنند.

علاوه‌براین Oracle برای تسهیل روند کار کاربران، با توجه به نیاز‌های پروژه، پشتیبانی MySQL Premier، گسترده و دائمی‌ای را ارائه می‌کند.



#mysql #mariadb #replication #master @unixmens
در ماه آینده تصمیم دارم در مورد microsoft sql server در لینوکس وبیناری برگزار کنم . و پیاده سازی و بنچمارک روی اون را انجام بدم . و یک سناریو Always On Failover Clustering و Always On Availability Groups جهت replication و HA در sql server ماکروسافت در لینوکس انجام بدم . و روی ویژگی ها و مزایا اون برای سازمان ها صحبت کنم .

البته قبل از اون وبینار 'زندگی : پس از VMware داریم که قراره برگزار کنیم .

فقط این روز ها بسیار busy هستم احتمالا زمان بندی ها کمی شیفت پیدا کنه بین ماه ها .


#webinar #yashar_esmaildokht #db #dba #linux #microsoft #sql #sqlserver #ha #alwayson #replication #replica #ft #database #technology



https://t.me/unixmens
👏3🔥1