さて。Webサーバー(Apache)のインストールが
ひと段落したので、次はMySQL5.1(データベースシステム)
のインストールでいきなりけつまずいたネタをおひとつ。
けつまずいた内容
MySQL5.1をインストールした後に、
一般ユーザーから下記のコマンドで
パスワードの設定をしました。
mysql>set password for root@server=password(‘hoge’);
ところが、コマンドの実行結果は、
Query OKだったにも関わらず、
一旦、exitでmysqlを終了して、再度、
mysql -u root
を実行すると、
“ERROR1045″の表示もなく、
またパスワードの入力を促されず、
素通りでログインできてしまいます。
素通りでログインできでしまうのは
一般ユーザー、rootユーザーともに同じです
mysql -u rootだけでは、ログインできないように
するためにはどうすれば良いでしょうか?
けつまずいた内容の補足
コマンドを以下のようにすると、
こんなエラーが出ます。
(rootでも一般ユーザでも症状は同じ)
#mysql -u root -p
Enterpassword: hoge
ERROR 1045 (20000): Access denied for user ‘root’@’localhost'(using password:YES)
「パスワードはあってるんだけど、
‘root’@’localhost’ではアクセスできないよ!」
と言われているような気が…。
このエラーメッセージででてくる、’localhost’を
最初にパスワード設定した’server’にすれば良いような気がしますが、
そのためにはどうすれば良いでしょうか?
解決方法
MySQLをアンインストールして、もう一度パスワードを設定。
そのときのパスワード設定は、
set password for root@localhost=password(‘hoge’);
とする。どうやら最初に設定した”server”というホスト名が
良くなかったようです。MySQLのパスワード設定のために、
使用するホスト名は、Linuxで設定したホスト名ではなく、
MySQLサーバーで設定したホスト名となるのではないかと推測します。
MySQLサーバーは、特に何か特別の名前を設けたわけではないので、
ホスト名は”localhost”になると考えられます。