debianにMySQLをインストールしてみたので、一応経過を残しておく。debianのインストールはCDから行い、他の部分も多くは同僚にやってもらった。MySQLのインストール部分もやってもらったが、その前に一応手順を自分で調べて、やってもらった部分も見ていたので、記録。今度、僕が前に使っていたNECの古いPCでももらってきてLinuxの練習用として動かそうかなぁと計画中。
まずはMySQLのパッケージでどれを使うか確認する。
すると、パッケージ一覧が表示される。MySQL5を使うので、mysql-server-5.0を使うことにする。一応、もう少し情報を確認したい場合は、
debian:~# aptitude search mysql
とすると、mysqlのバージョンがmysql5.0.32-7etch6だと分かったりする。後ろのetchとかはdebianのetch用とかそういうことだと思う。あとはインストールしてあるかどうかも分かる。
debian:~# aptitude show mysql-server-5.0
次にインストールする。
途中で表示されるdo you want to contiune? に対してはyで。
debian:~# aptitude install mysql-server-5.0
うまくいくと/etcの中にmysqlがでてくるはず。
今回、インストールしたつもりができていなくて、インストールされているかの確認に対してmysqlが起動しているか確認するmysqlのコマンドを打ってみた。
パスワードの要求に対しては、入力せずエンター。最初はrootのパスワードは設定されていない。起動していれば、mysqld is aliveと返ってくるはず。ところが今回は、詳しくは忘れてしまったのだけど、command not foundみたいなことが返ってきた。mysqlのコマンドがみつからないという意味だと思う。
debian:~# mysqladmin ping -u root -p
だから、もう1度インストールをして、起動確認のコマンドを打つと、mysqld is aliveとちゃんと返ってきた。起動しているみたいだ。
続いてrootでログインする。
またパスワードは何も入力しない。そして、rootのパスワードを設定。
debian:~# mysql -u root -p
これで変更完了。
mysql> SET PASSWORD FOR root@localhost = PASSWORD('新しいパスワード');
ここからは設定ファイルをいじる。テキストエディタの方が編集しやすいので、WinSCPで他のPCから接続して、xyzzyで編集した。
編集するファイルは/etc/mysql/my.cnf。文字コードをすべてUTF-8にしたい。mysqlではUTF-8をutf8と書かないといけないみたいだ。それぞれの部分に次のものを追加する
[client]
default-character-set=utf8[mysql]
default-character-set=utf8[mysqld]
default-character-set=utf8
language=/usr/share/mysql/japanese ←englishをjapaneseに変更した
skip-character-set-client-handshake ←これを追加することにより、クライアントとサーバ間で文字コードを勝手に変更しないようになる。
変更後は、mysqlを再起動しないと、設定ファイルが反映されない
再起動に成功したら、再度ログインして、文字セットがすべてutf-8になっているか確認。
debian:~# /etc/init.d/mysql restart
両方の命令をやってみてcharsetがutf-8であることが確認できた。
mysql> status
mysql> SHOW VARIABLES LIKE 'char%';
MySQLの設定終わり。