Когда на одном сервере параллельно работает несколько проектов, допустим, блог на wordpress, сайт на Django, репозиторий GitLab и другие, хорошей практикой является использование для них различных пользователей в базе данных и разграничение их прав.
Для начала нужно войти в командную строку под администратором или имеющим права пользователем:
1 2 | mysql -u mysql_user -p Enter password: |
Мы попали в командную строку MySQL, здесь мы будем выполнять дальнейшие команды.
Теперь создадим базу данных:
1 | CREATE DATABASE db_name; |
Проверим, что все прошло успешно, просмотрев список существующих баз:
1 | SHOW DATABASES; |
Теперь создадим пользователя.
1 | CREATE USER db_user; |
Далее, нужно выдать пользователю необходимые права на созданную ранее базу данных и создать пользователю пароль.
1 | GRANT SELECT, INSERT, DELETE, UPDATE ON db_name.* TO 'db_user'@'localhost' IDENTIFIED BY 'db_password'; |
Если вы уверены, то можно сразу выдать полные права на бд.
1 | GRANT ALL ON db_name.* TO 'db_user'@'localhost' IDENTIFIED BY 'db_password'; |
Чтобы удалить неудачного пользователя используется команда:
1 | DROP USER db_user; |