Нет, вообще говоря, будет один (или небольшое количество) пользователей MySQL, и PHP-скрипт (или другой код на стороне сервера) будет использовать этого одного пользователя для всех операций по извлечению и настройке данных.В некоторых сценариях полезно создать несколько пользователей MySQL с различными уровнями разрешений в качестве дополнительного уровня безопасности (поэтому общие запросы select
выполняются с использованием пользователя с привилегиями select
и inserts
и updates
.обрабатывается отдельным пользователем с этими привилегиями).Если вы разрешаете удаленным компьютерам обращаться к базе данных MySQL напрямую (для партнерских веб-сайтов или приложений), также обычно создается определенный пользователь MySQL для этого подключения с разрешениями, ограниченными только тем, что им нужно (без разрешений drop
или modify
, дляэкземпляра) и ограничивается исключительно их IP-адресом (вы можете ограничить пользователя MySQL подключениями только с одного адреса).
Суть в том, что вам следует создать только нескольких пользователей, а ваш веб-сайт /Приложение будет использовать только этот небольшой пул пользователей для выполнения всех запросов.Кроме того, рекомендуется обращаться к базе данных с пользователем, имеющим наименьшее количество разрешений для выполнения задач (в разумных пределах ... не создавайте отдельного пользователя для каждого возможного действия ... обычно 1-3 пользователя должны охватывать всеуровни разрешений, которые вы хотели бы).Если вы создаете огромное количество пользователей, вы (а) замедляете MySQL, так как он должен получить доступ к большей таблице разрешений;(б) будет намного сложнее управлять разрешениями, если приложение изменится в будущем;и (c) более сложно отлаживать проблемы с разрешениями (ваш PHP-скрипт обладает большей гибкостью в отношении того, что делать, и сообщать о наличии проблем с разрешениями).