[解決済み] MySQL MySQLのFlush Privilegesはいつ本当に必要なのか?
質問
新しいテーブルとそれに付随するユーザーを作成する場合、私は通常、以下のコマンドを実行するだけです。
CREATE DATABASE mydb;
GRANT ALL PRIVILEGES ON mydb.* TO myuser@localhost IDENTIFIED BY "mypassword";
を利用する必要があったことは一度もありません。
FLUSH PRIVILEGES
コマンドを発行した後です。ユーザーはログインしてデータベースを使用し、データベースに接続するPHPスクリプトを問題なく実行することができます。しかし、私が見るほとんどすべてのチュートリアルで、このコマンドが使われているのを見かけます。
は、いつ
FLUSH PRIVILEGES
コマンドは本当に必要で、いつ不要になるのでしょうか?
どのように解決するのですか?
GRANT オプションで割り当てられた特権は、FLUSH PRIVILEGES を適用する必要はありません - MySQL サーバがこれらの変更に気付き、直ちにグラントテーブルをリロードします。
のようなステートメントを使用して直接グラント・テーブルを変更した場合、そのテーブルを使用することができます。 INSERT、UPDATE、DELETE を実行しても、その変更は特権に影響を及ぼさない。 サーバーを再起動するか、サーバーに再読み込みを指示するまで テーブルを使用します。グラント・テーブルを直接変更したが、リロードするのを忘れた場合 の場合、サーバーを再起動するまで変更は無効です。このため なぜ、このような変更を行ったのに、何も変わらないのかと不思議に思うかもしれません。
グラント・テーブルを再読み込みするようにサーバーに指示するには、次のコマンドを実行します。 フラッシュプリビレッジ操作です。これは、FLUSH PRIVILEGES ステートメントを実行するか、mysqladmin flush-privileges または mysqladmin reloadコマンドを実行します。
アカウント管理を使用して間接的にグラントテーブルを変更する場合 GRANT、REVOKE、SET PASSWORD、または RENAME USER などのステートメントを使用すると サーバーはこれらの変更に気付き、グラント・テーブルをメモリにロードします。 を直ちに再作成します。
関連
-
[解決済み] Error Dropping Database (Can't rmdir '.test', errno: 17)
-
[解決済み] mysqladminのフラッシュホストでブロックを解除する方法
-
[解決済み] ユーザー 'root'@'localhost' (パスワード: YES を使用) のアクセス拒否 - 特権がない?
-
[解決済み] MySQLでdatetimeとtimestampのどちらのデータ型を使用すべきですか?
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] MySQLのAUTO_INCREMENTをリセットする方法
-
[解決済み] MySQLの複数行を1つのフィールドに連結することはできますか?
-
[解決済み] MySQLのクエリ結果をCSV形式で出力するにはどうすればよいですか?
-
[解決済み] ブーリアン値を格納するために使用するMySQLデータ型
-
[解決済み] MySQLの データベースへの **all** 特権付与
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】MySQLユーザーDBにパスワードカラムがない - OSXへのMySQLインストール
-
[解決済み】カラムのデータが切り捨てられた?
-
[解決済み】MAMPのmysqlサーバーが起動しない。mysqlのプロセスが起動していない
-
[解決済み】MySQLエラー1264:カラムの範囲外の値
-
[解決済み】MySQLで日付を比較する
-
[解決済み] mysql.pluginテーブルを開くことができません。mysql_upgradeを実行し、作成してください。
-
[解決済み] MYSQLのTIMESTAMP比較
-
[解決済み] #1136 - 列数が 1 行目の値数と一致しません。
-
[解決済み] MySQL Workbenchが「このサーバーバージョンでは、この位置は無効です」というエラーを報告する。
-
[解決済み] 日付の挿入時にエラーが発生しました - 日付の値が正しくありません。