2014/07/14(月) [n年前の日記]
#3 [mysql] MySQLについて勉強中
VMware Player + Ubuntu 12.04LTS 上で MySQL とやらを勉強してみようかなと。
◎ インストール。 :
以下でインストールできるらしい。
sudo apt-get install mysql-server既に入ってた。自分、どこかの段階でインストールしていたらしい。
◎ 文字化け解消用の設定。 :
ググってみたら、文字化け解消用の設定をしておかないといかんそうで。/etc/mysql/my.cnf を編集する。
以下を追加。
古い解説ページでは、
_MySQL 5.5で「default-character-set」が使えず文字化けする→「character-set-server」にするとOK | KennyQi で解説されてた。どこかのバージョンで、character-set-server という記述に変わったらしい。
サービスを再起動。
sudo vi /etc/mysql/my.cnf
以下を追加。
[client] default-character-set = utf8 [mysqld] character-set-server = utf8 skip-character-set-client-handshake
古い解説ページでは、
[mysqld] default-character-set = utf8等の指定があるが、そのようにすると起動時にエラーが出て起動してくれない。
_MySQL 5.5で「default-character-set」が使えず文字化けする→「character-set-server」にするとOK | KennyQi で解説されてた。どこかのバージョンで、character-set-server という記述に変わったらしい。
サービスを再起動。
sudo service mysql restart
◎ rootパスワードを再設定。 :
MySQL root のパスワードを忘れてしまった…。mysql -u root -p と打ち込んで、パスワードを入力しても弾かれる。仕方ないので再設定する。
サービスを停止。
パスワードなしでログインできるようにする。
別の端末?シェル?を開いてから、ログイン。…一つ前のコマンドを打つ時に、最後に「&」をつけてやるべきだったかも。
パスワードを初期化。
プロセスを殺す。
パスワードなしでログインできるか確認。
パスワードを設定。
パスワードなしでもログインできてしまうか確認。
パスワードを指定してログインできるか確認。
サービスを停止。
sudo service mysql stop
パスワードなしでログインできるようにする。
mysqld_safe --skip-grant-tables
別の端末?シェル?を開いてから、ログイン。…一つ前のコマンドを打つ時に、最後に「&」をつけてやるべきだったかも。
mysql -u root mysql
パスワードを初期化。
update user set password='' where user='root' and host='localhost'; FLUSH PRIVILEGES; exit
プロセスを殺す。
sudo killall mysqldkillall って何だろうとググってみたら、kill はプロセスIDを指定して殺すけど、killall はプロセス名を指定して殺せるらしい。
パスワードなしでログインできるか確認。
mysql -u root exit
パスワードを設定。
sudo mysqladmin password -u root 新しいパスワード
パスワードなしでもログインできてしまうか確認。
mysql -u root以下のような感じで弾かれるはず。
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
パスワードを指定してログインできるか確認。
mysql -u root -pパスワードを入力すれば welcome と言ってくれるはず。exit で抜ける。
◎ 参考ページ。 :
[ ツッコむ ]
以上です。