diff --git a/dbtng_migrator.batch.inc b/dbtng_migrator.batch.inc
index cb56ba0..967d61d 100644
--- a/dbtng_migrator.batch.inc
+++ b/dbtng_migrator.batch.inc
@@ -27,9 +27,13 @@ function dbtng_migrator_batch_install_schema($origin, $destination) {
   foreach ($modules as $module) {
     $schema = drupal_get_schema_unprocessed($module);
     _drupal_schema_initialize($schema, $module, FALSE);
+    // hook_schema_alter may add tables to the schema; we do not want to create these.
+    $original_schmea_table_list = array_keys($schema);
+    drupal_alter('schema', $schema);
 
     db_set_active($destination);
-    foreach ($schema as $name => $table) {
+    foreach ($original_schmea_table_list as $name) {
+      $table = $schema[$name];
       db_create_table($name, $table);
       if (db_table_exists($name)) {
         drupal_set_message(t("@table was successfully created.", array('@table' => $name)));
@@ -61,7 +65,7 @@ function dbtng_migrator_batch_migrate_table($origin, $destination, &$context) {
       if (!is_array($schema)) {
         continue;
       }
-      foreach ($schema as $table => $info) { 
+      foreach ($schema as $table => $info) {
         $tables[] = $table;
       }
     }
@@ -108,8 +112,8 @@ function dbtng_migrator_batch_migrate_table($origin, $destination, &$context) {
       db_set_active($destination);
       $insert = db_insert($table)->fields(array_keys($schema['fields']));
       foreach ($rows as $row) {
-         $insert->values((array) $row); 
-      } 
+         $insert->values((array) $row);
+      }
       $insert->execute();
       $count += $limit;
     }
