MySQL8.0 создает пользователя и авторизацию

MySQL

когда он будет использоваться

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

версия mysql

MySql8.0+

Конкретные шаги

1. Введите MySql из командной строки

Используйте команду mysql -u#UserName -p#PassWord для входа в MySql.

#UserNameПредставляет ваше имя пользователя MySql

#PassWordпредставляет ваш пароль MySql

🐶Имя пользователя этой собаки root и пароль root

mysql -uroot -proot
命令行进入MySql.png
Командная строка в MySql.png

2. Войдите в базу данных

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

create database #databaseName;

#databaseNameБаза данных, которая работает от вашего имени

🐶 Эта собака хочет создать базу данных b2b, не забудьте поставить точку с запятой;

create database b2b;

use databaseName;

#databaseNameБаза данных, которая работает от вашего имени

🐶 Эта собака будет управлять базой данных b2b, не забудьте поставить точку с запятой;

use b2b;
进入数据库.png
Введите базу данных.png

3. Создайте пользователя

create user '#userName'@'#host' identified by '#passWord';

#userNameНовая учетная запись пользователя, представляющая эту базу данных, которую вы создаете.

#hostДелегировать права доступа следующим образом

  • % представляет подстановочные знаки всех разрешений на адрес хоста (удаленный доступ)
  • localhost - это местный орган (недоступный удаленно)
  • Укажите специальные права доступа IP, такие как 10.138.106.102

#passWordновый пароль для этой базы данных, которую вы создаете

🐶 Пользователь, который будет создан этой собакой, — testUser, пароль — Haier…123, и к нему можно получить доступ удаленно.
⚠️Надежность пароля требует наличия прописных и строчных букв и цифр, иначе сообщит, что надежность пароля не соответствует требованиям
⚠️Если имя пользователя повторяется, будет сообщено об ошибке ERROR 1396 (HY000): Не удалось выполнить операцию CREATE USER для 'testUser'@'%'

create user 'testUser'@'%' identified by 'Haier...123';
创建用户.png
Создать пользователя.png

4. Просмотр пользователей

Войдите в системную базу данных mysql

user mysql;

Просмотр информации о пользователях

select host, user, authentication_string, plugin from user;

user mysql; 
select host, user, authentication_string, plugin from user;

🐶 Если отображаемая информация включает только что добавленного пользователя testUser, добавление прошло успешно. Не забудьте проверить базу данных, к которой вы хотите вернуться после просмотра, эта собака должна работать в режиме b2b.

use b2b; 
查看用户.png
Посмотреть пользователя.png

5. Авторизация пользователя

grant #auth on #databaseName.#table to '#userName'@'#host';

#authДелегировать полномочия следующим образом

  • все привилегии все привилегии
  • выберите разрешение запроса
  • выбирать, вставлять, обновлять, удалять добавлять, удалять, изменять и проверять разрешения
  • выбрать, [...] увеличить... и т.д. разрешения

#databaseNameПредставляет имя базы данных
#tableПредставляет конкретную таблицу следующим образом

  • *представляет все таблицы
  • A, B представляют конкретную таблицу A, B

#userNameИмя пользователя делегата

#hostДелегировать права доступа следующим образом

  • % представляет подстановочные знаки всех разрешений на адрес хоста (удаленный доступ)
  • localhost - это местный орган (недоступный удаленно)
  • Укажите специальные права доступа IP, такие как 10.138.106.102

🐶 Эта собака предоставляет таблице area_code базы данных b2b разрешение на добавление, удаление и изменение разницы

grant select,insert,update,delete on b2b.area_code to 'testUser'@'%';
用户授权.png
Авторизация пользователя.png

6. Обновить

🔥Не забудьте обновить авторизацию, чтобы она вступила в силу.

flush privileges;

刷新.png
обновить.png

7. Просмотр разрешений пользователя

show grants for '#userName'@'#host';

#userNameИмя пользователя делегата

#hostДелегировать права доступа следующим образом

  • % представляет подстановочные знаки всех разрешений на адрес хоста (удаленный доступ)
  • localhost - это местный орган (недоступный удаленно)
  • Укажите специальные права доступа IP, такие как 10.138.106.102

🐶 Эта собака хочет проверить testUser

show grants for 'testUser'@'%';
查看用户权限.png
Посмотреть разрешения пользователя.png

8. Подтвердить

Используйте инструменты визуализации, такие как navicat, для проверки

验证.png
Верифи.png

9. Отозвать разрешения

revoke #auth on #databaseName.#table from '#userName'@'#host';

#authДелегировать полномочия следующим образом

  • все привилегии все привилегии
  • выберите разрешение запроса
  • выбирать, вставлять, обновлять, удалять добавлять, удалять, изменять и проверять разрешения
  • выбрать, [...] увеличить... и т.д. разрешения

#databaseNameПредставляет имя базы данных
#tableПредставляет конкретную таблицу следующим образом

  • *представляет все таблицы
  • A, B представляют конкретную таблицу A, B

#userNameИмя пользователя делегата

#hostДелегировать права доступа следующим образом

  • % представляет подстановочные знаки всех разрешений на адрес хоста (удаленный доступ)
  • localhost - это местный орган (недоступный удаленно)
  • Укажите специальные права доступа IP, такие как 10.138.106.102

🐶 Эта собака хочет отозвать разрешения на добавление, удаление и изменение пользователя testUser в таблице area_code в базе данных b2b.

revoke select,insert,update,delete on b2b.area_code from 'testUser'@'%';

🐶 Эта собака снова проверит права пользователя

show grants for 'testUser'@'%';
撤销权限.png
отозвать разрешение.png

10. Удалить пользователя

drop user '#userName'@'#host';

#userNameИмя пользователя делегата

#hostДелегировать права доступа следующим образом

  • % представляет подстановочные знаки всех разрешений на адрес хоста (удаленный доступ)
  • localhost - это местный орган (недоступный удаленно)
  • Укажите специальные права доступа IP, такие как 10.138.106.102

🐶 Пользователь, которого я хочу удалить, — testUser

drop user 'testUser'@'%';
删除用户.png
удалить пользователя.png

😂 Эта статья изначально написана JavaDog, при перепечатке указывайте источник.