MySQLのシンプルユーザアカウント設定

2月 16, 2010

何かとハマる、MySQLユーザアカウント設定。以前の記事MySQLインストール時のお約束
でもrootパスワードのセットだの匿名ユーザの削除だのごちゃごちゃ書いたが、もっと
思いきった方法があるようなので書いておく。

MySQLをインストールするとデフォルトでrootパスワードが空になっていたり、匿名ユーザ
が存在したり、と混乱を招くので、一番始めにユーザを全て削除してしまえ、というやり方。
まず、最初はパスワードなしでrootでログインできるはずなので、その段階で以下の
コマンドを実行。

mysql > TRUNCATE TABLE mysql.user;
mysql > FLUSH PRIVILEGES;


「TRUNCATE TABLE 」はテーブルを完全に空にする。ここではもちろん、ユーザテーブル
を空にしている。この後、パスワード付きでrootユーザを作成するだけ。

mysql > GRANT ALL PRIVILEGES ON *.* TO root@localhost
- >IDENTIFIED BY ‘任意のパスワード’ WITH GRANT OPTION;
mysql > FLUSH PRIVILEGES;


確認してみる。

mysql > SELECT USER,HOST,PASSWORD FROM mysql.user;


うーむ、シンプルだ。
他に作成したいユーザがいたら一緒に作成してもよいが、個人的にはまずはrootが設定
したパスワードで無事にログインできることを先に確認したいところ。


Categories: MySQL