インストール
sudo apt-get install mysql-server
インストール手順中、 root に対するパスワード設定画面が表示されるので、 適切に設定しておく。
日本語 (UTF-8)
以下を入力してみる:
mysql -u root -p # ユーザとしてrootを指定し、パスワードを要求する
Enter password: # 先ほど設定したパスワードを入力
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 41
Server version: 5.5.28-0ubuntu0.12.10.2 (Ubuntu)
Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> status; # 左記のようにコマンド入力
--------------
mysql Ver 14.14 Distrib 5.5.28, for debian-linux-gnu (x86_64) using readline 6.2
Connection id: 41
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.5.28-0ubuntu0.12.10.2 (Ubuntu)
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: latin1 # サーバ内で扱う文字コードがlatin1(iso8859-1)になっている
Db characterset: latin1
Client characterset: utf8
Conn. characterset: utf8
UNIX socket: /var/run/mysqld/mysqld.sock
Uptime: 1 min 26 sec
これだと、サーバサイドアプリ側 (PHP, Java, etc...) から日本語を含んだデータを投入したりすると文字化けが発生してしまう。 全て UTF-8 で統一すれば良いので、まず MySQL から抜けて以下を書く:
sudo vi /etc/mysql/my.cnf # MySQLの設定ファイルを変更する
以下のように各ディレクティブに記述を追加する:
[mysqld]
character-set-server=utf8
skip-character-set-client-handshake
default-storage-engine=INNODB
[mysqldump]
default-character-set=utf8
[mysql]
default-character-set=utf8
MySQL を再起動し、 全て UTF-8 に変更されている事を確認する。
sudo /etc/init.d/mysql restart
mysql -u root -p
...
status;
...
Server characterset: utf8 # UTF-8になっている事を確認する
Db characterset: utf8
ユーザ作成
開発環境であれば root ユーザのみでも良いかもしれないが、 全て同じユーザで作業をするのはセキュリティ上宜しくないので、 各個人のユーザを作成して作業をする。 MySQL に root でログインし、 以下のように入力しユーザを作成する:
-- 全ての権限を与える. 制限を加える場合は変更する
GRANT ALL PRIVILEGES ON *.* TO (ユーザ名)@localhost IDENTIFIED BY '(パスワード)' WITH GRANT OPTION;
FLUSH PRIVILEGES;
作成したユーザで MySQL にログインできるか確認する。
mysql -u (ユーザ名) -p
Enter password: # 先ほど設定したパスワードを入力
PHPMyAdmin
有名な Web アプリ型の MySQL クライアント。 便利なので開発環境等では入れておいても損はないが、 本番には入れないか、 若しくは Basic 認証などを入れておいた方が良い。
sudo apt-get install php5-mysql phpmyadmin
これで /usr/share/phpmyadmin
に PHPMyAdmin がインストールされるのだが、 Apache に /usr/share/phpmyadmin
を有効な URL として設定しなければならない。 が Ubuntu の場合既に apt-get
した時にこの設定ファイルが作成されているので、 以下のように mods-enabled
にリンクを張ってやれば良い:
sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/mods-enabled/phpmyadmin.conf
sudo service apache2 reload # 設定ファイルを読み込む
http://localhost/phpmyadmin/
にアクセスし、 正しく PHPMyAdmin が表示される事を確認する。