MySQLユーザーの作成、承認
4379 ワード
一、ユーザーを作成する:
コマンド:
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
説明:username-作成するユーザー名、host-ユーザーがどのホストにログインできるかを指定し、ローカルユーザーがlocalhostを使用できる場合、ユーザーが任意のリモートホストからログインできるようにするには、ワイルドカードを使用します.password-このユーザのログインパスワードは、パスワードが空であるもよいし、空であればパスワードを必要とせずにサーバにログインすることができる.
例:CREATE USER'dog'@'localhost'IDENTIFIED BY'123456';
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '';
CREATE USER 'pig'@'%';
二、授権:
コマンド:GRANT privileges ON databasename.tablename TO 'username'@'host'
説明:privileges-ユーザーの操作権限、例えばSELECT、INSERT、UPDATEなど.権限を付与する場合はALL.;Databasename-データベース名、tablename-テーブル名、ユーザーにすべてのデータベースとテーブルに対する対応する操作権限を付与する場合は*.*.
例:GRANT SELECT,INSERT ON test.user TO 'pig'@'%';
GRANT ALL ON *.* TO 'pig'@'%';
注意:上記のコマンドで権限を与えられたユーザーは、他のユーザーに権限を与えることはできません.そのユーザーに権限を与えたい場合は、次のコマンドを使用します.
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;
三.ユーザーパスワードの設定と変更
コマンド:SET PASSWORD FOR'username'@'host'=PASSWORD('newpassword');
現在登録されているユーザ用SET PASWORD=PASWORD(「newpassword」)であれば;
例:SET PASSWORD FOR'pig'@'%'=PASSWORD("123456");
四.ユーザー権限の取り消し
コマンド:REVOKE privilege ON databasename.tablename FROM 'username'@'host';
説明:privilege,databasename,tablename-同授権部分.
例:REVOKE SELECT ON*.* FROM 'pig'@'%';
注意:ユーザーに「pig'@'%」の権限を与えた場合、GRANT SELECT ON test.user TO'pig'@'%'は、REVOKE SELECT ON*.* FROM 'pig'@'%';コマンドは、そのユーザによるtestデータベースにおけるuserテーブルのSELECT操作を取り消すことはできない.逆に、GRANT SELECT ON*.* TO 'pig'@'%';REVOKE SELECT ON test.user FROM 'pig'@'%';コマンドは、testデータベースのuserテーブルに対するユーザのSelect権限を取り消すこともできない.
詳細はコマンドSHOW GRANTS FOR'pig'@'%';表示
五.ユーザーの削除
コマンド:DROP USER'username'@'host';
PS:
リモートアクセス:
xusongqin@xusongqin-A75MG:/usr/local/mysql$
netstat -an | grep 3306
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:35443 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:3306 127.0.0.1:35443 ESTABLISHED
tcp 0 0 127.0.0.1:35497 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:3306 127.0.0.1:35498 ESTABLISHED
tcp 0 0 127.0.0.1:3306 127.0.0.1:35493 ESTABLISHED
tcp 0 0 127.0.0.1:35493 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:3306 127.0.0.1:35497 ESTABLISHED
tcp 0 0 127.0.0.1:35498 127.0.0.1:3306 ESTABLISHED
Netstatは、最初のリスニングがmysqlであることを示すが、リスニングは127.0.0.1であり、sudo gedit/etc/initを表示する.d/mysql/my.conf
のbind-address=127.0.0.1このコメントを削除すると、リモートアクセスが可能になります.
xusongqin@xusongqin-A75MG:/usr/local/mysql$
sudo netstat -an|grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
tcp 1 0 127.0.0.1:35443 127.0.0.1:3306 CLOSE_WAIT
tcp 0 0 127.0.0.1:3306 127.0.0.1:35443 FIN_WAIT2
tcp 1 0 127.0.0.1:35497 127.0.0.1:3306 CLOSE_WAIT
tcp 0 0 127.0.0.1:3306 127.0.0.1:35498 FIN_WAIT2
tcp 0 0 127.0.0.1:3306 127.0.0.1:35493 FIN_WAIT2
tcp 1 0 127.0.0.1:35493 127.0.0.1:3306 CLOSE_WAIT
tcp 0 0 127.0.0.1:3306 127.0.0.1:35497 FIN_WAIT2
tcp 1 0 127.0.0.1:35498 127.0.0.1:3306 CLOSE_WAIT
コマンド:
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
説明:username-作成するユーザー名、host-ユーザーがどのホストにログインできるかを指定し、ローカルユーザーがlocalhostを使用できる場合、ユーザーが任意のリモートホストからログインできるようにするには、ワイルドカードを使用します.password-このユーザのログインパスワードは、パスワードが空であるもよいし、空であればパスワードを必要とせずにサーバにログインすることができる.
例:CREATE USER'dog'@'localhost'IDENTIFIED BY'123456';
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '123456';
CREATE USER 'pig'@'%' IDENTIFIED BY '';
CREATE USER 'pig'@'%';
二、授権:
コマンド:GRANT privileges ON databasename.tablename TO 'username'@'host'
説明:privileges-ユーザーの操作権限、例えばSELECT、INSERT、UPDATEなど.権限を付与する場合はALL.;Databasename-データベース名、tablename-テーブル名、ユーザーにすべてのデータベースとテーブルに対する対応する操作権限を付与する場合は*.*.
例:GRANT SELECT,INSERT ON test.user TO 'pig'@'%';
GRANT ALL ON *.* TO 'pig'@'%';
注意:上記のコマンドで権限を与えられたユーザーは、他のユーザーに権限を与えることはできません.そのユーザーに権限を与えたい場合は、次のコマンドを使用します.
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;
三.ユーザーパスワードの設定と変更
コマンド:SET PASSWORD FOR'username'@'host'=PASSWORD('newpassword');
現在登録されているユーザ用SET PASWORD=PASWORD(「newpassword」)であれば;
例:SET PASSWORD FOR'pig'@'%'=PASSWORD("123456");
四.ユーザー権限の取り消し
コマンド:REVOKE privilege ON databasename.tablename FROM 'username'@'host';
説明:privilege,databasename,tablename-同授権部分.
例:REVOKE SELECT ON*.* FROM 'pig'@'%';
注意:ユーザーに「pig'@'%」の権限を与えた場合、GRANT SELECT ON test.user TO'pig'@'%'は、REVOKE SELECT ON*.* FROM 'pig'@'%';コマンドは、そのユーザによるtestデータベースにおけるuserテーブルのSELECT操作を取り消すことはできない.逆に、GRANT SELECT ON*.* TO 'pig'@'%';REVOKE SELECT ON test.user FROM 'pig'@'%';コマンドは、testデータベースのuserテーブルに対するユーザのSelect権限を取り消すこともできない.
詳細はコマンドSHOW GRANTS FOR'pig'@'%';表示
五.ユーザーの削除
コマンド:DROP USER'username'@'host';
PS:
SELECT * FROM mysql.user;
CREATE USER 'ad-dev'@'%' IDENTIFIED BY '123';
GRANT ALL ON *.* TO 'ad-dev'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
FLUSH PRIVILEGES;
リモートアクセス:
xusongqin@xusongqin-A75MG:/usr/local/mysql$
netstat -an | grep 3306
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:35443 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:3306 127.0.0.1:35443 ESTABLISHED
tcp 0 0 127.0.0.1:35497 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:3306 127.0.0.1:35498 ESTABLISHED
tcp 0 0 127.0.0.1:3306 127.0.0.1:35493 ESTABLISHED
tcp 0 0 127.0.0.1:35493 127.0.0.1:3306 ESTABLISHED
tcp 0 0 127.0.0.1:3306 127.0.0.1:35497 ESTABLISHED
tcp 0 0 127.0.0.1:35498 127.0.0.1:3306 ESTABLISHED
Netstatは、最初のリスニングがmysqlであることを示すが、リスニングは127.0.0.1であり、sudo gedit/etc/initを表示する.d/mysql/my.conf
のbind-address=127.0.0.1このコメントを削除すると、リモートアクセスが可能になります.
xusongqin@xusongqin-A75MG:/usr/local/mysql$
sudo netstat -an|grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
tcp 1 0 127.0.0.1:35443 127.0.0.1:3306 CLOSE_WAIT
tcp 0 0 127.0.0.1:3306 127.0.0.1:35443 FIN_WAIT2
tcp 1 0 127.0.0.1:35497 127.0.0.1:3306 CLOSE_WAIT
tcp 0 0 127.0.0.1:3306 127.0.0.1:35498 FIN_WAIT2
tcp 0 0 127.0.0.1:3306 127.0.0.1:35493 FIN_WAIT2
tcp 1 0 127.0.0.1:35493 127.0.0.1:3306 CLOSE_WAIT
tcp 0 0 127.0.0.1:3306 127.0.0.1:35497 FIN_WAIT2
tcp 1 0 127.0.0.1:35498 127.0.0.1:3306 CLOSE_WAIT