- 追加された行はこの色です。
- 削除された行はこの色です。
*MySQLのインストール [#sc4725f0]
mysqladminコマンドのパスを確認して、MySQLがインストールされているかチェックします。
# which mysqladmin
/usr/bin/mysqladmin
インストールされていない場合はインストールを行います。
*初期設定 [#mc1f6dea]
MySQLがインストールした初期状態の場合は、管理者パスワードの設定と、エンコーディングの設定を行います。
-管理者パスワードの設定~
MySQLは初期状態では、管理者(MySQLのroot)にパスワードが設定されていません。~
パスワードの設定を行います。
# mysqladmin -u root password '任意パスワード'
-DBのエンコーディングの設定~
DBのエンコーディングをUTF-8に設定します。
/etc/my.cnf ファイルを編集し、以下のセクションに値を追加します。~
セクションがない場合はセクション自体を追加します。
[mysqld]
default-character-set=utf8
character_set_server=utf8
[mysql]
default-character-set=utf8
MySQLを再起動します。
# /etc/rc.d/init.d/mysqld restart
mysqlに入って、エンコーディングをチェック
# mysql -u root -p
mysql> show variables like 'character\_set\_%';
+--------------------------+--------+
| Variable_name | Value |
+--------------------------+--------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
+--------------------------+--------+
7 rows in set (0.00 sec)
結果が上記の設定になっていればOKです。~
mysqlは「quit」コマンドで終了します。~
*DBの作成 [#jf4cb716]
+mysqlに入ります。
# mysql -u root -p
+DBを作成します。以下はDB名が「testdb」の場合です。
mysql> create database testdb;
Query OK, 1 row affected (0.01 sec)
*ユーザの作成 [#l705d61c]
+mysqlに入ります。
# mysql -u root -p
+ユーザを作成します。以下は「testdb」DBにアクセスするユーザ名が「testuser」の場合です。
mysql> grant all privileges on testdb.* to testuser@localhost identified by '任意のユーザパスワード';
Query OK, 0 rows affected (0.01 sec)
+ユーザを確認します。
mysql> select user,host,password from mysql.user;
+----------+-----------------------+------------------+
| user | host | password |
+----------+-----------------------+------------------+
| root | localhost | 17f86f5e6a4ede0a |
| root | localhost.localdomain | |
| | localhost.localdomain | |
| | localhost | |
| testuser | localhost | 0d59dfc910205df0 |
+----------+-----------------------+------------------+
5 rows in set (0.00 sec)
「testuser」が作成されていればOKです。
+匿名ユーザ(ユーザ名が空のもの)を削除します。
mysql> delete from mysql.user where user='';
Query OK, 2 rows affected (0.03 sec)
mysql> select user,host,password from mysql.user;
+----------+-----------------------+------------------+
| user | host | password |
+----------+-----------------------+------------------+
| root | localhost | 17f86f5e6a4ede0a |
| root | localhost.localdomain | |
| testuser | localhost | 0d59dfc910205df0 |
+----------+-----------------------+------------------+
3 rows in set (0.00 sec)