Документация / Один пользователь базы данных для нескольких баз

Один пользователь базы данных для нескольких баз

Приложению, которое использует две базы данных — основную и отдельную схему для бэк-офиса, например, — не нужны два входа. Дайте одному пользователю доступ к обеим.

Дать пользователю ещё одну базу данных

Базы данных → Пользователи баз данных → в строке пользователя, Добавить базу данных.

У вас спросят короткое имя базы данных (shop, а не youracct_shop). Пользователь сохраняет свой существующий пароль и свой существующий доступ; новая база данных добавляется к нему.

Каждая строка в этой таблице показывает, до чего пользователь сейчас может дотянуться:

app        Databases: shop, admin        Access: localhost only

У пользователя, у которого пока ничего нет, значится no databases yet.

Забрать одну

Та же строка, Удалить базу данных. Кнопка появляется, как только у пользователя есть хотя бы одна база данных. У вас спросят, какую именно, и она подставляется заранее, когда выбирать не из чего.

Удаление базы данных у пользователя не удаляет самого пользователя и не трогает базу данных. Пользователь сохраняет свой пароль и все остальные базы, которыми владеет. В этом и смысл: до того как это появилось, единственным способом отозвать доступ было удалить пользователя, что ломало каждый сайт, ещё входящий под ним.

Что стоит знать, прежде чем этим пользоваться

  • Доступ выдаётся по одной базе данных за раз. Пользователь никогда не получает общий доступ к серверу; каждая выдача называет одну конкретную вашу базу данных.
  • Вы можете удалить последнего пользователя базы данных. Ничто вас не останавливает и ничто не предупреждает. База данных и её содержимое остаются, но ни один вход не сможет до неё дотянуться, пока вы снова кого-нибудь не наделите доступом — что и является решением, если сайт вдруг сообщает, что не может подключиться.
  • Имена несут префикс вашего аккаунта. База данных, которую вы создаёте как shop, на сервере называется youracct_shop, а пользователь app — youracct_app. Вводите короткое имя в панели, а полное имя — в конфигурации своего приложения.
  • Только ваши собственные базы данных и пользователи. Выдача, называющая базу данных чужого аккаунта, отклоняется. Как и отзыв.

Настройка с нуля

  1. Базы данных → Создать базу данных, дважды — например, site и admin.
  2. Создать пользователя и подключить: назовите пользователя, выберите site из выпадающего списка. Это первая выдача.
  3. В строке нового пользователя, Добавить базу данных, и введите admin.

Скопируйте пароль, когда он показан. Панель хранит его в форме, которую не может прочитать обратно, так что потерянный пароль сбрасывается, а не восстанавливается — это Пароль в той же строке.

Когда что-то выглядит неправильно

«No such database for this account.» Имя набрано с ошибкой, или вы ввели форму с префиксом. Используйте короткое имя, как оно показано в таблице «Базы данных» выше.

«No such database user for this account.» Список пользователей на странице устарел. Обновите его.

Приложение подключается к одной базе данных, но не к другой. Убедитесь, что строка перечисляет обе под Databases и что приложение использует имя с префиксом (youracct_admin) и тот же хост — localhost, если только вы не настроили Удалённые хосты для этого пользователя.

Выдача словно не действует с удалённой машины. Выдачи, добавленные здесь, применяются к локальному входу. Если этот пользователь также подключается с внешнего адреса, пересохраните его список Удалённых хостов после выдачи, чтобы удалённая запись обновилась под базы данных, которыми пользователь теперь владеет.