« 行政書士会・入会事前手続き その5 | トップページ | FreeBSDでXOOPS その4 apache編 »

2009年6月10日 (水)

FreeBSDでXOOPS その3 mysql編

ネットワークの設定やらユーザー設定やらいろいろあるんですが、それらは既に設定済みという前提。
それと、この通りにやっても動かないといって怒らないように。環境差があるので。
ネットのどこかに関連情報がないか探したり、何かを見落としてないか確認してください。
インストールはportsという仕組みを使います。
このports、必要なファイルが
/usr/ports/distfiles/
配下にない場合は、勝手にインターネット経由で関連サイトと接続&ダウンロードし、インストールを続けてくれます。
逆にインターネットに繋いでいないとダウンロードできず、インストール出来ません。
場合によっては、PROXYサーバを設置していたりするケースもありますので
setenv HTTP_PROXY xxx.xxx.xxx.xxx:xx
等としておくことを忘れずに。
もちろん他のマシンで必要なファイルをダウンロードして、上記ディレクトリに格納してもOKです。

まずmysql50-clientをインストールします

# cd /usr/ports/databases/mysql50-client
# make install clean

途中色々と処理が走り、下記のようになれば終了

===>  Cleaning for libtool-1.5.24
===>  Cleaning for mysql-client-5.0.45_1
#

次にmysql50-serverをインストールします

# cd /usr/ports/databases/mysql50-server
# make install clean

途中色々と処理が走り、下記のようになれば終了

===>  Cleaning for mysql-server-5.0.45_1
#

OS起動時にmysqlも起動するようにrc.confを編集します。

# vi /etc/rc.conf

一番下に(まあ下でなくてもいいんでしょうが)下記を追記します。

mysql_enable="YES"
mysql_limits="YES"
mysql_dbdir="/usr/local/db/mysql"
mysql_args=""

mysql_dbdirにデータベースが作成されるので、スライスのサイズをよく考えて配置した方がいいかも。
私の場合、
①上記ディレクトリは存在しないので作成
②そのディレクトリにmy.cnfという名称で設定ファイルを配置
③パーミッションの設定
という手順としました。

# mkdir -p /usr/local/db/mysql
# cp /usr/local/share/mysql/my-medium.cnf /usr/local/db/mysql/my.cnf
# chmod 600 /usr/local/db/mysql/my.cnf
# chown -R mysql:mysql /usr/local/db/mysql

コピーした設定ファイルを編集し、文字セットがUTF-8となるようにします。

# vi /usr/local/db/mysql/my.cnf

下記それぞれのセクションに追記します。

[client]
default-character-set = utf8
[mysqld]
character-set-server = utf8
skip-character-set-client-handshake
[mysqldump]
default-character-set = utf8
[mysql]
default-character-set = utf8

以上が完了したら、OSをリブートします

# reboot

ブート途中で以下のメッセージが出たら、まずは一安心

Starting mysql.

最後にきちんとUTF-8化されているのか確認します。
①テストデータベースmydbを作成
②そのキャラクタセットを確認
 character_set_filesystem,character_sets_dir以外のvalueがutf8となっていればOK
③テストデータベースを削除
の手順になります。

# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.0.45-log FreeBSD port: mysql-server-5.0.45_1

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema | 
| mysql              | 
| test               | 
+--------------------+
3 rows in set (0.02 sec)

mysql> create database mydb;
Query OK, 1 row affected (0.00 sec)

mysql> use mydb;
Database changed
mysql> show variables like 'char%';
+--------------------------+----------------------------------+
| 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                             | 
| character_sets_dir       | /usr/local/share/mysql/charsets/ | 
+--------------------------+----------------------------------+
8 rows in set (0.01 sec)

mysql> drop database mydb;
Query OK, 0 rows affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema | 
| mysql              | 
| test               | 
+--------------------+
3 rows in set (0.00 sec)

mysql> exit
Bye
#

以上!

意外と長くなってしまった。

2009/06/11・・・コマンド部分のフォントを調整してみました。

|

« 行政書士会・入会事前手続き その5 | トップページ | FreeBSDでXOOPS その4 apache編 »

パソコン・インターネット」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/538346/45292939

この記事へのトラックバック一覧です: FreeBSDでXOOPS その3 mysql編:

« 行政書士会・入会事前手続き その5 | トップページ | FreeBSDでXOOPS その4 apache編 »