4

MySql で新しいユーザーを作成したいと考えています。私はその新しいユーザーが私の既存のデータベースで多くのことをしたくありません [私は彼に選択権限を与えたいだけです] が、彼は彼が作成した新しいデータベースで何でも何でもすることができます。

まず、データベース所有者ごとに許可を与える方法はありますか? それが可能であれば、それは私が探している理想的なものです. そうでない場合、特定のユーザーが特定のデータベースにのみアクセスすることを[選択権限のみ]制限し、残りのデータベースで必要なことを何でもできるようにするにはどうすればよいですか?

4

4 に答える 4

17

From the MySQL grant documentation:

CREATE USER 'jeffrey'@'localhost' IDENTIFIED BY 'mypass';
GRANT SELECT ON *.* TO 'jeffrey'@'localhost';
GRANT ALL ON db1.* TO 'jeffrey'@'localhost';

The first command creates the user. The second grants select on all databases and tables. The third command grants all access to all tables in db1.

Is there anything else specific you are looking to do?

于 2012-07-02T20:19:20.147 に答える
3

特定のユーザーに権限を付与するには、次のフレームワークを使用できます。

GRANT [type of permission] ON [database name].[table name] TO ‘[username]’@'localhost’; 
GRANT ALL PRIVILEGES ON * . * TO 'newuser'@'localhost';

このコマンドのアスタリスクは、アクセスできるデータベースとテーブル (それぞれ) を示します。この特定のコマンドにより、ユーザーはすべてのデータベースとテーブルのすべてのタスクを読み取り、編集、実行、および実行できます。

新しいユーザーに設定する権限を確定したら、必ずすべての権限を再読み込みしてください。

 FLUSH PRIVILEGES;

権限の詳細については、この記事を読むことができます https://www.digitalocean.com/community/articles/how-to-create-a-new-user-and-grant-permissions-in-mysql

権限のリストについては、MySQL のマニュアル ページPrivileges Provided by MySQLを参照してください。

于 2014-05-13T11:42:14.403 に答える