web-dev-qa-db-ja.com

drupal d2d migrateでソース接続を設定する方法

分類とユーザーをd6サイトからd7サイトに移行しています。 d6サイトのソースデータベースのレガシー接続を設定するにはどうすればよいですか。

ユーザーはrootであり、パスワードIDは空で、Drupal 6サイトのソースデータベース名はd6です。

hook_flush_caches()。

 $common_arguments = array(
        'source_connection' => 'd6_migration',
        'source_version' => 6,
      );

Drupal 7サイトにカスタムのmigrate_d6モジュールをインストールすると、d6からd7にデータが移行されますか?

宛先プロジェクトの設定ファイルは

$databases = array (
  'default' => 
  array (
    'default' => 
    array (
      'database' => 'd7',
      'username' => 'root',
      'password' => '',
      'Host' => 'localhost',
      'port' => '',
      'driver' => 'mysql',
      'prefix' => '',
    ),
  ),  
  'd6_migration' => 
  array (
    'default' => 
    array (
      'database' => 'd6',
      'username' => 'root',
      'password' => '',
      'Host' => 'localhost',
      'port' => '',
      'driver' => 'mysql',
      'prefix' => '',
    ),
  ),
);
6
Umar

移行モジュールは基本的な移行機能を提供しますが、migrate_d2dモジュールはその機能を拡張して、Drupal 5、6、7へのインポートおよびインポートのためのインターフェースを提供します。移行はDrush統合に付属し、開発中に非常に便利です。

次のコードをsettings.phpファイルに追加するか、移行スクリプト内でデータベース接続の詳細を指定できます。

<?php 
// Our Drupal 7 database configuration.
$databases = array (   
'default' =>
  array (
    'default' =>
    array (
      'database' => 'db_drupal7',
      'username' => 'drupal7_user',
      'password' => '',
      'Host' => 'localhost',
      'port' => '',
      'driver' => 'mysql',
      'prefix' => '',
    ),
  ),
  // Here we add in the connection to our Drupal 6 database.
  'legacy' =>;
  array (
    'default' =>;
    array (
      'database' => 'db_drupal6',
      'username' => 'drupal6_user',
      'password' => '',
      'Host' => 'localhost',
      'port' => '',
      'driver' => 'mysql',
      'prefix' => '',
    ),
  ),
);

コンテンツを移行するためのスクリプトを作成する場合は、次の便利なチュートリアルをご覧ください。

http://devblog.com.au/migrating-drupal-6-to-drupal-7-with-the-migration-frameworkhttps://drupal.org/node/ 1813498


個人的な提案:これで migrate_d2d module はコンテンツを移行するための安定したUIを提供しており、それも非常に簡単です、ここのドキュメントを見てください: https://drupal.org/node/1813498

また、データベース接続を設定した後、drushコマンドを使用してコンテンツを移行できるよりも大きなデータベースがある場合、コンテンツを移行するためのdrushコマンドのリスト: https://drupal.org/node/156182

9
Ankit Agrawal

次のように、settings.phpファイルを変更せずに、モジュール内にdb接続を入力できます。

$common_arguments = array(    
'source_version' => 6,
'source_connection' => 'legacy',
'source_database' =>  array('driver' => 'mysql','database' => 'dbname','username' => 'dbuser','password' => 'dbpass','Host' => 'localhost','prefix' => '',)

);

これがお役に立てば幸いです

Ciao r。

3
bessone

_'legacy' =>_および_'default' =>_の後のセミコロンを削除していただけますか?これは、Googleが見つけたほぼ唯一のsettings.phpの例です。ええ、エラーはすでに http://devblog.com.au/migrating-drupal-6-to-drupal-7-with-the-migration-framework から引用しています。次のようになります。'default' => array ( 'default' => array ( 'database' => 'db_drupal7', 'username' => 'drupal7_user', 'password' => '', 'Host' => 'localhost', 'port' => '', 'driver' => 'mysql', 'prefix' => '', ), ), // Here we add in the connection to our Drupal 6 database. 'legacy' => array ( 'default' => array ( 'database' => 'db_drupal6', 'username' => 'drupal6_user', 'password' => '', 'Host' => 'localhost', 'port' => '', 'driver' => 'mysql', 'prefix' => '', ), ), );例をありがとうございます。これまで誰もこれに気づいていないことはまれです:-) Drushは2つのセミコロンのエラーを直接表示します。すみません、あなたの投稿へのコメントを書いていません。私は十分なドルを持っていません。最小値は50です。

2
surfi