Позвольте мне добавить немного больше деталей, используя следующую запись в файле settings.php:
$my_db_users = 'dbusers.shared_';
$databases['default']['default'] = array(
'driver' => 'mysql',
'database' => 'dbdefault',
'username' => 'databaseuser',
'password' => 'databasepassword',
'host' => '127.0.0.1',
'port' => 3066,
'prefix' => array(
'default' => 'default_',
'users' => $my_db_users,
'sessions' => $my_db_users,
'role' => $my_db_users,
'authmap' => $my_db_users,
),
'collation' => 'utf8_general_ci',
);
В приведенном выше примере мы установили переменную $my_db_users
, равную базе данных и префиксу таблицы расположения общих пользовательских данных.
Затем мы устанавливаем префикс таблицы по умолчанию 'default' => 'default_',
, который гласит: «сохранить все таблицы, если не указано иное, в defaultdatabase и сделать их префикс таблицы default_ ». Мы также говорим: «сохраните всех пользователей, сеансы, роли и сопоставления ролей пользователей (authmap) в базе данных dbusers с префиксом таблицы shared_ ».
Небольшой поворот:
Подумайте об удалении строки 'authmap' => $my_db_users,
. Если вы сделаете это, у вас могут быть одни и те же пользователи и группы в большой сети сайтов, но при этом у пользователей будут разные разрешения на разные сайты. На одном сайте вы можете быть администратором, а на другом - автором.