diff --git a/profiles/unl_profile/unl_profile.install b/profiles/unl_profile/unl_profile.install
index 470d5ae1a85427ad5ecebb17f2d33aa60f1a5760..97828b7ae630503943acd3099d6cc74a32cc9776 100644
--- a/profiles/unl_profile/unl_profile.install
+++ b/profiles/unl_profile/unl_profile.install
@@ -206,30 +206,40 @@ EOF;
 
     // Update the settings file to use shared database tables (unless this is the default site)
     if (conf_path() != 'sites/default') {
-        $shared_prefix = unl_profile_get_default_site_db_prefix();
+        $parent_site_database_settings = unl_profile_get_default_site_db_settings();
+    
         $new_prefix = $GLOBALS['databases']['default']['default']['prefix'];
+        $shared_prefix = $parent_site_database_settings['default']['default']['prefix'];
+        $new_prefixes = array(
+          // Localized tables, prefixed with site name
+          'default'       => $new_prefix,
+
+          // shared tables across all sites
+          'authmap'       => $shared_prefix,
+          'filter'        => $shared_prefix,
+          'filter_format' => $shared_prefix,
+          'role'          => $shared_prefix,
+          'sessions'      => $shared_prefix,
+          'users'         => $shared_prefix,
+          'users_roles'   => $shared_prefix,
+          'wysiwyg'       => $shared_prefix,
+        );
+        
         $settings['databases'] = array(
-            'value'    => $GLOBALS['databases'],
+            'value'    => $parent_site_database_settings,
             'required' => TRUE
         );
-        $settings['databases']['value']['default']['default']['prefix'] = array(
-
-            // Localized tables, prefixed with site name
-            'default'       => $new_prefix,
-
-            // shared tables across all sites
-            'authmap'       => $shared_prefix,
-            'filter'        => $shared_prefix,
-            'filter_format' => $shared_prefix,
-            'role'          => $shared_prefix,
-            'sessions'      => $shared_prefix,
-            'users'         => $shared_prefix,
-            'users_roles'   => $shared_prefix,
-            'wysiwyg'       => $shared_prefix
-        );
+        
+        foreach ($settings['databases']['value'] as &$database) {
+          $database['default']['prefix'] = $new_prefixes;
+          foreach ($database['slave'] as &$slave_database) {
+            $slave_database['prefix'] = $new_prefixes;
+          }
+        }
+        
         $settings['drupal_hash_salt'] = array(
-            'value'    => 'FOOBAR' . $GLOBALS['drupal_hash_salt'],
-            'required' => TRUE,
+          'value'    => 'FOOBAR' . $GLOBALS['drupal_hash_salt'],
+          'required' => TRUE,
         );
         
         $settings_dir = DRUPAL_ROOT . DIRECTORY_SEPARATOR . conf_path();
@@ -263,12 +273,12 @@ EOF;
 /**
  * Load the default site's config file and return the db_prefix value from it.
  */
-function unl_profile_get_default_site_db_prefix()
+function unl_profile_get_default_site_db_settings()
 {
     $default_site_settings_file = DRUPAL_ROOT . '/sites/default/settings.php';
     require $default_site_settings_file;
     
-    return $databases['default']['default']['prefix'];
+    return $databases;
 }
 
 function unl_profile_add_shortcut($title, $path)