ホームページ  >  記事  >  データベース  >  Mysql8 はユーザーの作成、削除、権限操作の承認とキャンセルを行います。

Mysql8 はユーザーの作成、削除、権限操作の承認とキャンセルを行います。

PHPz
PHPz転載
2023-05-27 15:25:253001ブラウズ

1. mysqlにログインします

mysql -uroot -p

2. まずどのユーザーがいるかを確認します

select host,user from mysql.user;

Mysql8 はユーザーの作成、削除、権限操作の承認とキャンセルを行います。

黄色の矢印は操作しないでください。 MySQL システムが付属しており、赤い矢印はメイン管理者を示します。青い矢印はサブユーザーです。これは以前に一致したものです。削除して、最初からやり直してください。

3. ユーザーの削除:

drop user '用户名'@'主机名';
drop user 'wyy'@'192.168.0.105';

Mysql8 はユーザーの作成、削除、権限操作の承認とキャンセルを行います。

4. ユーザーの作成

create user '用户名'@'允许那个主机链接' identified by '密码';

create user 'wyy'@'192.168.0.105' identified by 'wyy18222';
只允许192.168.0.105的主机链接

Mysql8 はユーザーの作成、削除、権限操作の承認とキャンセルを行います。

備考:

Mysql8.0 はデフォルトで caching-sha2-password 暗号化を使用します。古いクライアントはそれをサポートしていない可能性があるため、mysql_native_password に変更できます;

create user 'test'@'%' identified with mysql_native_password BY '密码';

パーセント記号 %; は、任意の IP アドレスを使用できることを意味しますリンク

作成ユーザー ‘wyy’@‘192.168.0.105’ ‘wyy18222’ によって識別されます。これは 192.168.0.105 のみが使用できるリンクです。

5. パスワードの変更

Alter user '用户名'@'主机名' identified by '新密码';
alter user 'wyy'@'192.168.0.105' identified by '123';

6. 承認

すべての権限をユーザーに承認します

grant all privileges on *.* to '用户名'@'主机名' with grant option;

grant all privileges on *.* to 'wyy'@'192.168.0.105' with grant option;

grant: 承認、付与

権限:権限、特権

最初のアスタリスク: すべてのデータベースを示します

2 番目のアスタリスク: すべてのテーブルを示します

「付与オプション付き」は、ユーザーが権限を付与できることを示します他のユーザーに対しては許可されますが、自分自身に付与された権限を超えては許可されません。これは付けなくても大丈夫です。

例: wyy に選択と更新のアクセス許可のみがあり、挿入と削除のアクセス許可がない場合、別のユーザーを承認するときに、そのユーザーに選択と更新のアクセス許可のみを付与できますが、挿入と削除のアクセス許可は付与できません。

ユーザーに個別の権限を承認する

すべての権限は、選択、更新、挿入、削除、ドロップ、作成などの操作で置き換えることができます

grant select,insert,update,delete on *.* to '用户名'@'主机名';

指定された権限をユーザーに承認する

指定されたデータベース権限をユーザーに付与します

grant all privileges on 数据库 . * to 'wyy'@'192.168.0.105';

grant all privileges on xrs . * to 'wyy'@'192.168.0.105';
将数据库名为xrs的所有权限赋予wyy

指定されたテーブル権限をユーザーに付与します

grant all privileges on 数据库 . 指定表名 to 'wyy'@'192.168.0.105';
将某个数据库下的某个表的权限赋予wyy

注:

インターネット上の一部のユーザーは、そして直接権限を与えます:

すべての権限 * . * を ‘作成されるユーザー’@‘localhost’ に ‘カスタム パスワード’;

#mysql8 で試してみましたが、動作しませんでした (バージョン 8 以前はまだ試していません)。最初にユーザーを作成してから、同時にではなく、それを付与する必要があります。

7. 権限のフラッシュ

フラッシュ権限;

新しいユーザーを設定するかパスワードを変更した後、フラッシュ権限を使用して MySQL のシステム権限関連テーブルを更新する必要があります。
そうしないと、アクセス拒否が表示されます

もう 1 つの方法は、mysql サーバーを再起動して新しい設定を有効にすることです。 ­

8. ユーザー権限の確認

show grants for 'wyy'@'192.168.0.105';

Mysql8 はユーザーの作成、削除、権限操作の承認とキャンセルを行います。

9. ユーザー権限の取り消し (権限のキャンセル)

revoke all privileges on *.* from 'wyy'@'192.168.0.105';

ユーザーが持つ権限どの権限を取り消す必要がありますか?

補足: mysql8.0 でのユーザーおよび許可されたユーザーの作成時に遭遇する落とし穴

ユーザーの作成:

mysql_native_password で識別されるユーザー userName@localhost を作成します。 'password' ;(with mysql_native_password これがないと、Navicat はプロンプト: 2059 - 認証プラグイン... エラーにログインできません。Navicat は最新のデータベースのデフォルトの暗号化方式をサポートしていないためです);

許可されたユーザー:

GRANT
ALL PRIVILEGES
ON databaseName.*
TO userName@'ip';(注意这点跟以往数据库都不一样,无需后面跟着IDENTIFIED BY 'password';否则将提示ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IDENTIFIED BY 'password'' at line 5)

以上がMysql8 はユーザーの作成、削除、権限操作の承認とキャンセルを行います。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。