mysql -uroot -pを入力します#2. ユーザーの作成
create user 'testuser1'@'%' identified by '123456';
##% は IP ログインに制限がないことを意味します
アクセス許可を更新し、アクセス許可が変更されるたびに更新してください
flush privileges;
新しいローカル接続を作成することでユーザーにログインできます
これを開くと、データベース information_schema
3 が 1 つだけあることがわかります。
grant all privileges on test_grant.* to 'testuser1'@'%' with grant option;ここでは、ユーザー testuser1 にデータベース test_grant (これは以前に作成したデータベースです) 内のすべてのテーブルに対するすべての権限を付与することを意味します。grant オプションを使用すると、ユーザーが他のユーザーに権限を付与できることを意味しますが、ユーザーの権限を超えることはできません
今回を見ると、ユーザー testuser1 には追加の test_grant データベースがあります
ここにあるすべての権限は、select、insert、update で置き換えることができます。 、削除、ドロップ、作成など
4. ユーザー権限の表示show grants for 'testuser1'@'%';
5. ユーザー権限の取り消し
revoke all privileges on test_grant.* from 'testuser1'@'%';これは意味します。データベース test_grant# に対するユーザー testuser1 のすべての操作権限を取り消します注: ここでこのように記述すると、データベースを開いたときに test_grant がまだ存在していることがわかります (ただし、データベースを操作することはできません)。以前に作成したときに付与オプションを使用したため、すべての権限が付与オプション付きのすべての権限を除くためです次のステートメントを実行してすべてのユーザー権限を再利用します
revoke all privileges,grant option from 'testuser1'@'%';6. ユーザーを削除します
drop user 'testuser1'@'%';7. すべてのユーザーとその権限をクエリする
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
SELECT User, Host FROM mysql.user;
show grants for ‘#userName'@'#host';#userName はユーザー名を表します#host は、次のようにアクセス権限を表します。 % は、ワイルドカードのすべてのホスト アドレス権限を表します (リモート アクセスが可能です)
??????などの特別な IP アクセス権を指定します。この犬がチェックしたいのは testUser
show grants for 'testUser'@'%';
です
以上がMysql8でユーザーを作成し、認可を与える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。