MySQLは最も人気のあるオープンソースのリレーショナルデータベース管理システムです。 MySQLサーバの作成に多くのユーザーアカウントおよび助成金の適切な権限でのアクセスすることが可能とな管理データベースです。
このチュートリアルでは、MySQLユーザーアカウ
始める前に#
システムにMySQLまたはMariaDBサーバーが既にインストールされていることを前提としています。
すべてのコマンドは、rootまたは管理ユーザーとしてMySQLシェル内で実行されます。, ユーザーアカウントを作成し、その権限を定義するために必要な最小権限は、CREATE USER
およびGRANT
です。
mysql -u root -p
MySQLバージョン5.7以降でauth_socket
プラグインを使用してrootとしてログインする場合は、次のように入力します。
sudo mysql
新しいMySQLユーザーアカウントを作成します#
mysqlのユーザーアカウントは、ユーザー名とホスト名の二つの部分で構成されます。,
新しいMySQLユーザーアカウントを作成するには、次のコマンドを実行します。
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'user_password';
newuser
を新しいユーザー名に置き換え、user_password
をユーザーパスワードに置き換えます。上記の例では、ホスト名の部分はlocalhost
に設定されているため、ユーザーはローカルホストからのみMySQLサーバーに接続できます(つまり、MySQLサーバーが実行されているシステムからのみ接続できることを意味します)。
別のホストからのアクセスを許可するには、ホスト名の部分をリモートマシンIPで変更します。, たとえば、IP10.8.0.5
を持つマシンからのアクセスを許可するには、次のように実行します。
CREATE USER 'newuser'@'10.8.0.5' IDENTIFIED BY 'user_password';
任意のホストから接続できるユーザーを作成するには、'%'
ワイルドカードをホストパーツとして使用します。
CREATE USER 'newuser'@'%' IDENTIFIED BY 'user_password';
ワイルドカードをホストパーツとして使用します。
CREATE USER 'newuser'@'%' IDENTIFIED BY 'user_password';
ワイルドカードをホストパーツとして使用します。mysqlユーザーアカウント#
CREATE USER 'newuser'@'%' IDENTIFIED BY 'user_password';
ユーザーアカウントに付与できる権限には複数のタイプがあります。 MySQLでサポートされている権限の完全なリストは、ここにあります。,
最も一般的に使用される権限は次のとおりです。
ALL PRIVILEGES
–ユーザーアカウントにすべての権限を付与します。CREATE
DROP
-ユーザーアカウントはデータベースとテーブルを削除できます。DELETE
-ユーザーアカウントは特定のテーブルから行を削除できます。INSERT
-ユーザーアカウントは特定のテーブルに行を挿入できます。,SELECT
UPDATE
-ユーザーアカウントはテーブル行を更新できます。,データベースからのble:GRANT ALL PRIVILEGES ON database_name.table_name TO 'database_user'@'localhost';
-
特定のデータベースに対してユーザーアカウントに複数の権限を付与します。
GRANT SELECT, INSERT, DELETE ON database_name.* TO database_user@'localhost';
MySQLユーザーアカウント権限の表示#
特定のMySQLユーザーアカウントに付与された権限を見つけるには、SHOW GRANTS
ステートメント:
SHOW GRANTS FOR 'database_user'@'localhost';
出力は次のようになります。
mysqlユーザーアカウントから権限を取り消す#
ユーザーアカウントから権限を取り消す構文は、権限を付与するときとほぼ同じです。,
特定のデータベースに対するユーザーアカウントからすべての権限を取り消すには、次のコマンドを実行します。
REVOKE ALL PRIVILEGES ON database_name.* FROM 'database_user'@'localhost';
既存のMySQLユーザーアカウントを削除#
MySQLユーザーアカウントを削除するには、DROP USER
ステートメントを使用します。
DROP USER 'user'@'localhost'
上記のコマンドは、ユーザーアカウントを削除しますそしてその特権。
結論#
このチュートリアルでは基本のみをカバーしていますが、新しいMySQLユーザーアカウントを作成して権限を付与する方法を学びたい人にとって
コメントを残す