2009,12,20, Sunday
MYSQLの設定
rootユーザはデフォルトではパスワードが設定されていないた # mysql -u root ← MySQLサーバーへrootユーザでログイン mysql> select user,host,password from mysql.user; ← 登録済ユーザ、パスワード確認 mysql> set password for root@localhost=password('rootパスワード'); ← ホスト名がlocalhostのrootユーザにパスワード設定 Query OK, 0 rows affected (0.00 sec) mysql> set password for root@'centos.centossrv.com'=password('rootパスワード'); ← ホスト名が自ホストのrootユーザにパスワード設定 Query OK, 0 rows affected (0.00 sec) mysql> set password for root@127.0.0.1=password('rootパスワード'); ← ホスト名が127.0.0.1のrootユーザにパスワード設定 Query OK, 0 rows affected (0.00 sec) mysql> select user,host,password from mysql.user; ← 登録済ユーザ、パスワード確認 mysql> exit ← MySQLサーバーからログアウト [root@centos ~]# mysql -u root -h localhost ← ホスト名がlocalhostのrootユーザでパスワードなしでMySQLサーバーへログインできないことを確認 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) [root@centos ~]# mysql -u root -h 'centos.*****.com' ← ホスト名が自ホストのrootユーザでパスワードなしでMySQLサーバーへログインできないことを確認 ERROR 1045 (28000): Access denied for user 'root'@'centos.*****.com' (using password: NO) [root@centos ~]# mysql -u root -h 127.0.0.1 ← ホスト名が127.0.0.1のrootユーザでパスワードなしでMySQLサーバーへログインできないことを確認 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) [root@centos ~]# mysql -u root -h localhost -p ← MySQLへrootでログイン Enter password: ← MySQLのrootパスワード応答 ホスト名がlocalhostのrootユーザでパスワードありでMySQLサーバーへログインできることを確認 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 18 to server version: 4.1.12 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> exit ← MySQLサーバーからログアウト Bye [root@centos ~]# mysql -u root -h 'centos.centossrv.com' -p Enter password: ← MySQLのrootパスワード応答 ホスト名が自ホストのrootユーザでパスワードありでMySQLサーバーへログインできることを確認 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 19 to server version: 4.1.12 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> exit ← MySQLサーバーからログアウト Bye [root@centos ~]# mysql -u root -h 127.0.0.1 -p ← MySQLへrootでログイン Enter password: ← MySQLのrootパスワード応答 ホスト名が127.0.0.1のrootユーザでパスワードありでMySQLサーバーへログインできることを確認 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 18 to server version: 4.1.12 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> exit ← MySQLサーバーからログアウト Bye ※ホスト名を指定してログインできない場合の対処 ホスト名を指定してログインできない原因は、サーバーが自身のホスト名を名前解決(ホスト名→IPアドレス)できないことが原因。 サーバーが自身のホスト名を名前解決できるように、サーバーの/etc/hostsにホスト名とIPアドレスの対応を追加する。 [root@centos ~]# grep `hostname` /etc/hosts ← /etc/hostsにホスト名が定義してあるか確認 なにも表示されない=ホスト名が定義されていないことを確認 [root@centos ~]# echo 127.0.0.1 `hostname` >> /etc/hosts ← /etc/hostsにホスト名の定義を追加 [root@centos ~]# grep `hostname` /etc/hosts ← /etc/hostsにホスト名が定義してあるか確認 127.0.0.1 centos.centossrv.com ← ホスト名定義追加を確認 |