"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > مهارات إدارة ترحيل قاعدة بيانات PHP

مهارات إدارة ترحيل قاعدة بيانات PHP

نشر في 2025-04-16
تصفح:645

How to Manage Database Migrations in PHP

كيفية إدارة ترحيل قاعدة البيانات في PHP

تعتبر ترحيل قاعدة البيانات جزءًا أساسيًا من تطوير التطبيق ، حيث تسمح للمطورين بالتحكم في الإصدار وإدارة التغييرات في مخطط قاعدة البيانات بطريقة متسقة ومنظمة. في PHP ، يمكن إجراء إدارة ترحيل قاعدة البيانات يدويًا ، ولكنها أكثر كفاءة وأقل عرضة للخطأ لاستخدام أداة ترحيل تعمل على أتمتة العملية. توفر أداة الترحيل طريقة منظمة للتعامل مع تغييرات المخطط ، مع الحفاظ على قاعدة البيانات متزامنة مع رمز التطبيق.

في هذه المقالة ، سنستكشف كيفية إدارة ترحيل قاعدة البيانات في PHP ، بما في ذلك استخدام المكتبات الشائعة وأفضل الممارسات والأمثلة العملية.


1. ما هي ترحيل قاعدة البيانات؟

ترحيل قاعدة البيانات هي وسيلة لإصدار التغييرات على مخطط قاعدة البيانات (على سبيل المثال ، إنشاء أو تحديث أو حذف الجداول والأعمدة) وتطبيق تلك التغييرات بطريقة يتم التحكم فيها. تتيح الترحيل الفرق:

  • تتبع التغييرات : توفر الترحيل تاريخًا من التغييرات في المخطط ، مما يسمح للفرق بتتبع التغييرات التي تم إجراؤها ومتى.
  • أتمتة تحديثات المخطط : يمكن تشغيل الترحيل تلقائيًا أو بأمر واحد ، مما يضمن تحديث مخطط قاعدة البيانات في جميع البيئات (التطوير ، التدريج ، الإنتاج) بطريقة متسقة.
  • إعادة التغييرات : إذا حدث خطأ ما في الترحيل ، فيمكن تراجعه ، وتوفير السلامة والمرونة أثناء التطوير والنشر.

2. لماذا تعتبر الترحيل مهمة؟

  • الاتساق : يضمنون أن يستخدم الجميع في فريق التطوير نفس مخطط قاعدة البيانات.
  • الأتمتة : يمكن تشغيل الترحيل تلقائيًا ، مما يقلل من الأخطاء اليدوية أثناء التحديثات.
  • الإصدار : تجعل الترحيل من السهل تتبع تطور مخطط قاعدة البيانات الخاص بك بمرور الوقت.
  • سهولة النشر : الترحيل مفيدة أثناء النشر ، مما يجعل من السهل نشر ومزامنة المخططات عبر بيئات مختلفة (محلية ، التدريج ، الإنتاج).

3. كيفية إدارة الترحيل في PHP

هناك عدة طرق للتعامل مع ترحيل قاعدة البيانات في PHP ، ولكن النهج الأكثر شيوعًا هو استخدام مكتبة الترحيل. إليك كيفية القيام بذلك باستخدام مكتبات PHP الشهيرة مثل Phinx و ترحيل العقيدة .


4. باستخدام Phinx لترحيل قاعدة البيانات

Phinx هي أداة ترحيل PHP شهيرة تتيح لك إنشاء ترحيل قاعدة البيانات وتشغيلها. وهو يدعم منصات قاعدة بيانات متعددة مثل MySQL و PostgreSQL و SQLite وغيرها.

الخطوة 1: تثبيت phinx عبر الملحن

لتثبيت Phinx ، يمكنك استخدام الملحن لإضافته كاعتماد.

composer require robmorgan/phinx

الخطوة 2: ملف التكوين

يتطلب

Phinx ملف تكوين (phinx.php أو phinx.yml) لإدارة إعدادات الاتصال وخيارات التكوين الأخرى. إليك تكوين مثال في phinx.php:

 [
        'migrations' => 'db/migrations',
        'seeds' => 'db/seeds'
    ],
    'environments' => [
        'default' => 'development',
        'development' => [
            'adapter' => 'mysql',
            'host' => 'localhost',
            'name' => 'your_database_name',
            'user' => 'root',
            'pass' => '',
            'charset' => 'utf8',
        ],
        'production' => [
            'adapter' => 'mysql',
            'host' => 'production_host',
            'name' => 'your_production_database',
            'user' => 'prod_user',
            'pass' => 'prod_password',
            'charset' => 'utf8',
        ]
    ]
];

يقوم هذا التكوين بإعداد بيئتين (التطوير والإنتاج) ، حيث ستقوم PHINX بإدارة الترحيل لقواعد البيانات الخاصة بك.

الخطوة 3: إنشاء ترحيل

لإنشاء ترحيل ، يمكنك استخدام أمر phinx التالي:

php vendor/bin/phinx create CreateUsersTable

يقوم هذا الأمر بإنشاء ملف ترحيل في دليل DB/Migrations. سيبدو ملف الترحيل شيئًا كهذا:

table('users');
        $table->addColumn('name', 'string')
              ->addColumn('email', 'string')
              ->create();
    }
}

تنشئ هذه الترحيل جدول المستخدمين مع عمودين: الاسم والبريد الإلكتروني.

الخطوة 4: تشغيل الترحيل

بمجرد إنشاء الترحيل ، يمكنك تطبيق الترحيل على قاعدة البيانات باستخدام الأمر التالي:

php vendor/bin/phinx migrate

ستطبق Phinx أي ترحيل جديدة لم يتم تشغيلها بعد. يمكنك أيضًا تحديد بيئة محددة:

php vendor/bin/phinx migrate -e production

الخطوة 5: التراجع عن الترحيل

إذا كنت بحاجة إلى التراجع عن الترحيل (على سبيل المثال ، عندما ترغب في تراجع تغيير) ، يوفر Phinx الأمر التالي:

php vendor/bin/phinx rollback

يمكنك أيضًا التراجع إلى إصدار أو خطوة محددة ، إذا لزم الأمر:

php vendor/bin/phinx rollback -t 20210101000000

يقوم هذا الأمر بإعادة الترحيل إلى الإصدار المحدد.


5. باستخدام ترحيل العقيدة لترحيل قاعدة البيانات

تعتبر ترحيل العقيدة أداة شائعة أخرى لترحيل قاعدة البيانات ، خاصةً للمشاريع التي تستخدم بالفعل ORM العقيدة لتفاعلات قاعدة البيانات. يتكامل مباشرة مع العقيدة ويوفر مجموعة من الأوامر لإدارة الترحيل.

الخطوة 1: تثبيت ترحيل العقيدة

composer require doctrine/migrations

الخطوة 2: تكوين ترحيل العقيدة

تحتاج إلى إعداد ملف تكوين (migrations.php) لتحديد اتصال قاعدة البيانات ومسارات الترحيل.

مثال Migrations.php التكوين:

 'mysql://root:@localhost/your_database_name',
]);

// Set up the migrations configuration
$config = new Configuration($conn);
$config->setMigrationsNamespace('App\Migrations');
$config->setMigrationsDirectory('db/migrations');

// Create the migration tool
$console = ConsoleRunner::createApplication($config);
$console->run();

الخطوة 3: إنشاء ترحيل

يمكنك إنشاء ترحيل باستخدام العقيدة CLI:

php vendor/bin/doctrine-migrations generate

هذا ينشئ ملف ترحيل في دليل DB/Migrations.

الخطوة 4: تشغيل الترحيل

لتشغيل الترحيل ، استخدم:

php vendor/bin/doctrine-migrations migrate

سيطبق هذا الأمر جميع الترحيل المعلقة على قاعدة البيانات.

الخطوة 5: التراجع عن الترحيل

لترحيل الترحيل ، استخدم:

php vendor/bin/doctrine-migrations execute --down

يمكنك تحديد إصدار الترحيل الذي يجب التراجع عنه ، إذا لزم الأمر.


6. أفضل الممارسات لإدارة الترحيل في PHP

  • التحكم في الإصدار : ارتكب دائمًا ملفات الترحيل الخاصة بك للتحكم في الإصدار (على سبيل المثال ، git). هذا يضمن أن فريقك يمكنه تتبع وتطبيق تغييرات قاعدة البيانات نفسها.
  • تجنب التغييرات اليدوية : تجنب إجراء التغييرات اليدوية مباشرة في قاعدة البيانات. استخدم الترحيل لإجراء تغييرات في المخطط ، بحيث يتم إصدارها ويمكن تتبعها.
  • أسماء الترحيل الوصفية : اسم ملفات الترحيل بطريقة وصفية بحيث يمكنك بسهولة فهم ما تفعله كل ترحيل (على سبيل المثال ، addIndExtouserStable أو CreateProductable).
  • اختبار الترحيل : دائمًا اختبار ترحيلك على قاعدة بيانات التدريج أو التطوير قبل تطبيقها على الإنتاج لتجنب المشكلات المحتملة.
  • الحفاظ على الترحيل الصغيرة والمتزايدة : تجنب الترحيل الكبيرة المتجانسة. بدلاً من ذلك ، قم بإجراء تغييرات تدريجية ، لأن هذا يجعل من السهل تصحيحه وفهمه.

7. خاتمة

إدارة ترحيل قاعدة البيانات هي جزء أساسي من أي عملية تطوير تطبيق PHP. باستخدام أدوات الترحيل مثل

Phinx أو يوفر ترحيل العقيدة طريقة منظمة وآلية لإدارة تغييرات مخطط قاعدة البيانات. تساعدك هذه الأدوات على تجنب الأخطاء اليدوية ، والحفاظ على الاتساق عبر البيئات ، والتأكد من أن مخطط قاعدة البيانات الخاص بك يتطور بطريقة يتم التحكم فيها والنسخة.

باستخدام هذه الأدوات ، يمكنك التركيز على إنشاء منطق التطبيق ، مع التأكد من أن قاعدة البيانات الخاصة بك تتزامن دائمًا مع التغييرات في الكود الخاص بك.


بيان الافراج يتم استنساخ هذه المقالة على: https://dev.to/abhay_yt_52a8e72b213be2229/how-to-danage-database-migrations-in-php-12bi؟1 إذا كان هناك أي انتهاك ، فيرجى الاتصال بـ [email protected] لحذفه.
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3