سلام.
در این ویدیوی آموزشی در مورد Database Migrationها صحبت شده که اصلا چه کاربردی دارن و Phinx رو معرفی کردم و آموزش دادم که چطور میشه با این لایبرری، ورژنهای مختلفی برای دیتابیس ایجاد کرد و اونهارو مدیریت کرد.
احتمالا از قبل با Git و سایت هایی مثل Github و Gitlab آشنا شده اید و دیده اید که چطور ورژنهای مختلفی از کدهای پروژه رو مدیریت میکنن.
حالا ما میتونیم با استفاده از Migrationها روی دیتابیس هم ورژن کنترلی داشته باشیم و براحتی دیتابیسمون رو مدیریت کنیم.
اگر با فریمورکهای PHP کار کرده باشید، در اکثر فریمورکهای بزرگ این زبان مثل Yii، Laravel، Symfony، Phalcon و ... از Migration استفاده کرده اید یا حداقل آشنا شده اید.
در این آموزش ابزار Phinx رو معرفی کردم و آموزششو اوردم به دلیل اینکه ساختار ساده ای داره و یادگیریش آسونه و پیچیدگی نداره.
این ابزار مستقل از فریمورکهای PHP هست و هیچ وابستگی به فریمورکها ندارد و میتونید در پروژه هاتون ازش براحتی و ظرف کمتر از 5 دقیقه نصب و ازش استفاده کنید.
فریمورک CakePHP از این Library برای مدیریت Migration هاش استفاده کرده.
میتونید برای هر عملی در دیتابیس یک Migration ایجاد کنید، برای مثال برای ایجاد یک table یا برای ایجاد index روی یک ستون یا افزودن یک ستون به یک جدول یا پاک کردن دادههای یک جدول و یا اضافه کردن داده ای یا حذف یک جدول و ... برای هر عملی یک Migration ایجاد کنید تا با جزئیات بیشتری بتونید دیتابیس رو مدیریت کنید و براحتی بتونید به یک ورژن Migrate کنید یا از یک ورژن به ورژن قبلی Rollback بزنید.
این آموزش بسیار ساده و روان هست و با فراگیری این آموزش میتونید از قابلیت ورژن کنترل روی دیتابیس هاتون استفاده کنید و زمانیکه با فریمورکهای مختلفی کار میکنید درک مناسبی از طریقه ی استفاده از Migrationها داشته باشید. چون بطور کلی در Migrationها هیچ پیچیدگی وجود نداره.
Phinx دیتابیس های Mysql و PostgreSQL و SQLite و SQL Server پشتیبانی میکند.
لینک آموزش: http://bithub.ir/18-database-migration-introduction-and-tutorial-phinx-library