2009-10 / 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
2009-10-10 (土)
■ Debian squeeze で Redmine を構築してみた (MySQL 版) [Apache][Ruby]
[2009-10-08-1] はデータベースに sqlite3 を使用する方法ですが、書き
込みが行われている時はデータベース全体がロックされるなどパフォーマ
ンスに問題があるそうです。そこで、MySQL を使う方法も試してみました。
前回に補足する形で説明していきます。
▼基本的な構築手順
1. に加え、mysql-server もインストールしてください。
さらに、MySQL のデータベースも作成します。
% mysql -u root -p
# 文字コードに utf8 を指定したデータベース redmine を作成
mysql> create database redmine character set utf8;
# データベース redmine のユーザ redmine を作成し、パスワードに XXXXXXXX を設定。
mysql> grant all privileges on redmine.* to redmine@localhost identified by 'XXXXXXXX';
mysql> exit;
3-1. の database.yml は以下の修正に置き換えます。
--- config/database.yml.example 2009-09-13 21:10:16.000000000 +0900 +++ config/database.yml 2009-10-10 23:14:31.000000000 +0900 @@ -10,9 +10,10 @@ adapter: mysql database: redmine host: localhost - username: root - password: + username: redmine + password: XXXXXXXX encoding: utf8 + socket: /var/run/mysqld/mysqld.sock development: adapter: mysql
socket の場所は以下のコマンドで調べられます。
% mysqladmin -u root -p variable | grep socket
設定の差分はこんなところです。
注意点として sqlite3 の時はデータベースが redmine-0.8.5/db に作られ
ましたが、MySQL の時は /var/lib/mysql 等に作られます。バックアップ
を取り忘れないようにしてください。
データベースのディレクトリは以下のコマンドで調べられます。
% mysqladmin -u root -p variable | grep datadir
MySQL の主要なコマンドや、バックアップの取り方は [2009-10-10-2] に
まとめました。
■ MySQL の主要なコマンド [Linux]
# 接続("mysql>" プロンプトに移行する。)
% mysql -u root -p
# データベースの一覧
mysql> show databases;
# 文字コードの確認
mysql> show create database データベース名;
# データベースの作成
mysql> create database データベース名;
# 文字コードに utf-8 を指定したデータベースの作成
mysql> create database データベース名 character set utf8;
# ユーザの追加
mysql> grant all privileges on データベース名.* to ユーザ名@localhost identified by 'パスワード';
# データベースの削除
mysql> drop database データベース名;
# サーバのステータス情報確認。"mysqladmin -u root -p status" はこれの簡易版。
mysql> status;
# サーバの詳細なステータス情報確認。"mysqladmin -u root -p extended-status" と同様。
mysql> show status;
# 終了
mysql> exit;
# 変数の確認
% mysqladmin -u root -p variable
# 存在するデータを全てバックアップ
% mysqldump -u root -p -x --all-databases > dump.sql
# 特定のデータベースのバックアップ
% mysqldump -u root -p データベース名 > dump.sql
# 全てのデータベースのバックアップを復元
% mysql -u root -p < dump.sql
# 特定データベースのみの復元(データベースを作成してから下記コマンドを実行)
% mysql -u root -p データベース名 < dump.sql
▼参考にした Web サイト
mysql - Linuxで自宅サーバ構築・管理: KSKNET
mysqldumpでバックアップ&復元 - phpspot
2009-10 / 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
最終更新時間: 2010-08-29 06:00


