ホームページ >データベース >mysql チュートリアル >mysqlで新しい権限を作成し、パスワードを設定する方法
Mysql で新しい権限を作成し、パスワードを設定する方法: 最初に CREATE USER コマンドを使用してユーザーを作成し、次に GRANT コマンドを使用して承認し、最後に SET PASSWORD コマンドを使用してユーザー パスワードを設定および変更します。
推奨: 「mysql ビデオ チュートリアル 」
MySQL ユーザーの作成と認可
1.ユーザーの作成
コマンド:
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'@'%';
2。権限:
コマンド:
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 ALL ON maindataplus.* TO 'pig'@'%';のように * で表すことができます。 注:上記のコマンドで認証されたユーザーは、他のユーザーを認証できません。ユーザーを認証したい場合は、次のコマンドを使用してください:
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;3. ユーザー パスワードの設定と変更コマンド:
SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');現在ログインしているユーザーの場合は、次を使用します:
SET PASSWORD = PASSWORD("newpassword");例:
SET PASSWORD FOR 'pig'@'%' = PASSWORD("123456");4. ユーザー権限を取り消します
コマンド:
REVOKE privilege ON databasename.tablename FROM 'username'@'host';命令:privilege、データベース名、テーブル名: 承認の一部と同じ 例:
REVOKE SELECT ON *.* FROM 'pig'@'%';注:次のように (または同様の) ユーザー 'pig'@'%' を承認する場合: GRANT SELECT ON test.user TO 'pig'@'%' を実行し、次に REVOKE SELECT ON *.* FROM 'pig' を使用します。 @'%'; コマンドは、テスト データベースのユーザー テーブルに対するユーザーの SELECT 操作を元に戻すことはできません。逆に、認可に GRANT SELECT ON *.* TO 'pig'@'%'; が使用されている場合、REVOKE SELECT ON test.user FROM 'pig'@'%'; コマンドは、テストデータベースのユーザーテーブルで権限を選択します。 詳細情報は、コマンド SHOW GRANTS FOR 'pig'@'%'; を使用して表示できます。 5. ユーザーの削除Command:
DROP USER 'username'@'host';今日の開発中にCentos7にMySQL5.6バージョンをインストールした後、テーブルに新しい Weicheng アカウントを作成し、パスワードを設定しましたが、Weicheng アカウントで mysql にログインすると、「mysql -uweicheng -p」を使用してログインするとエラーが報告されることがわかりました。パスワードが正しければログインできませんでしたが、最終的に「mysql -uweicheng」を直接使用できることが分かりました。パスワードを入力せずにログインできます。 その後、データをクエリした理由は、「データベースに空のユーザーが存在するはずです。そうであれば、
select * from mysql.user where user='';を使用して空のユーザーが存在するかどうかを確認し、その後
use mysql; delete from user where user = '';を使用します」としました。 を使用して冗長な空のアカウントを削除します。次に、
flush privileges;を使用して権限テーブルをリロードし、最後に
service mysqld restartを使用して mysql サービスを再起動します。問題は解決されました。今すぐマークしてください。 ! ヒント: 1. mysql サービスを再起動することを忘れないでください。そうしないと有効になりません。msyql を再起動しなかったため、問題を解決できませんでした。 2. msyql のユーザー テーブルは、mysql データベースのユーザー テーブルにあり、主なフィールドはホスト、ユーザー、パスワードなどで、mysql 管理のメイン テーブルとして使用されます。 mysql リフレッシュ許可コマンド: FLUSH PRIVILEGES; (通常、データベース ユーザー情報が更新された後に使用されます)mysql サーバーを再起動するという別の方法もあります
以上がmysqlで新しい権限を作成し、パスワードを設定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。