redmineのデータをsqliteからmysqlにインポートする方法
しばらくの間、redmine+sqlite 3を使用してプロジェクトを管理していましたが、管理データの膨張に伴い、redmineの速度が遅くなり、sqliteの性能に関係しているのではないかと疑い、データベースをmysqlに変更したいので、sqlite 3からmysqlにデータをインポートする必要があります.
実装の原理
railsのplugin yaml_dbでsqliteからyaml形式のファイルにデータをインポートし、ファイルからmysqlにデータをインポートします.
具体的な手順
1.yaml_のインストールdbプラグイン.
2.redmineの管理データをsqliteからyamlファイルに導き、デフォルトdumpファイルはredmineディレクトリの下db/dataである.yml.
3.redmineデータベース関連構成をmysqlに変更します. mysql関連パッケージをインストールします. mysql 5を使用する場合.1以上のバージョンでは、上記のコマンドでエラーが発生する可能性があります.libmySQL.dllをダウンロードし、rubyのbinディレクトリの下に配置する必要があります. redmineインストールディレクトリの下で、修正ファイル mysqlが使用する標準ポート3306でない場合、上記構成に次の行を加える必要がある. mysqlで必要なtableとユーザを生成します.
4.データを2.生成されたファイルdb/data.yamlはmysqlにインポートされます.
5.redmineを再起動すると、バックグラウンドDBはmysqlであり、sqliteよりも速度が大幅に向上するはずです.
実装の原理
railsのplugin yaml_dbでsqliteからyaml形式のファイルにデータをインポートし、ファイルからmysqlにデータをインポートします.
具体的な手順
1.yaml_のインストールdbプラグイン.
// $REDMINE_ROOT redmine
cd $REDMINE_ROOT
ruby script/plugin install git://github.com/adamwiggins/yaml_db.git
2.redmineの管理データをsqliteからyamlファイルに導き、デフォルトdumpファイルはredmineディレクトリの下db/dataである.yml.
rake db:dump RAILS_ENV=production
3.redmineデータベース関連構成をmysqlに変更します.
gem install mysql
config/database.yml production 。
production:
adapter: mysql
database: redmine
host: localhost
username: redmine
password: my_password
port: 3307
create database redmine character set utf8;
create user 'redmine'@'localhost' identified by 'my_password';
grant all privileges on redmine.* to 'redmine'@'localhost';
4.データを2.生成されたファイルdb/data.yamlはmysqlにインポートされます.
rake db:load RAILS_ENV=production
5.redmineを再起動すると、バックグラウンドDBはmysqlであり、sqliteよりも速度が大幅に向上するはずです.