Debian(etch) に MySQL5.0[5.0.32-7etch5] をインストール
Debian(etch) に MySQL5.0.32 をインストールします。
パッケージは、mysql-serverまたはmysql-server-5.0を指定します。
# aptitude update
# aptitude install mysql-server
以前のインストールでは、rootのパスワード設定等がありましたが、今回は何の設定も無く インストールが終了しました。
Stopping MySQL database server: mysqld.
Starting MySQL database server: mysqld.
Checking for corrupt, not cleanly closed and upgrade needing tables..
MySQLが動作しているか次のように確認します。インストール直後は、rootのパスワードが 設定されていないので、パスワードの入力をしないで実行します。
# mysqladmin ping -u root -p
Enter password:
mysqld is alive
MySQL の設定
MySQLのrootユーザーをパスワード変更
インストールした直後のMySQLでは、rootユーザーのパスワードが設定されていないのため パスワードを設定します。
パスワードの変更方法には、3つの方法が用意されています。
1. mysql> SET PASSWORD FOR root@localhost=PASSWORD('new_password');
2. mysql> GRANT ALL PRIVILEGES ON *.* TO root@localhost \
IDENTIFIED BY 'パスワード' WITH GRANT OPTION;
3. # /usr/bin/mysqladmin -u root -p password 'new-password'
ここでは、 1 の方法を使ってrootのパスワードを変更します。
# mysql -u root -p
Enter password:
mysql> SET PASSWORD FOR root@localhost=PASSWORD('new_password');
Query OK, 0 rows affected (0.01 sec)
ユーザーの確認をします。
# mysql -u root -p
Enter password:********
mysql> SELECT host,user,password FROM mysql.user;
+------------+------------------+---------------+
| host | user | password |
+------------+------------------+---------------+
| localhost | root | *C03XXXXXXXXX |
| ホスト名 | root | |
| localhost | debian-sys-maint | *F45XXXXXXXXX |
+------------+------------------+---------------+
rootが2種類います。ホスト名が必要なければ、ユーザーを削除します。必要であれば、ホスト名を 指定してrootのパスワードを設定します。
MySQLから接続を切断するにはいくつかの方法が用意されています。 「\q」,「exit」,「quit」,[Ctrl]+[D]
文字コードの設定
MySQLの文字コードを設定します。まず、現在の文字コードを確認します。
# mysql -u root -p
Enter password:********
mysql> status;
--------------
mysql Ver 14.12 Distrib 5.0.32, for pc-linux-gnu (i486) using readline 5.2
Connection id: 14
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.0.32-Debian_7etch5-log
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: latin1
Db characterset: latin1
Client characterset: latin1
Conn. characterset: latin1
インストール時の文字コードは、latin1に設定されているので UTF-8 に変更します。
# vi /etc/mysql/my.conf
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
[mysql]
default-character-set=utf8
クライアントとサーバーの間で文字コードの変換を行わないように、skip-character-set-client-handshake を指定します。
[mysqld]
skip-character-set-client-handshake
my.confの修正が終わったら、MySQLを再起動します。
# /etc/init.d/mysql restart