「Moodleの移行」の版間の差分

提供:MoodleDocs
移動先:案内検索
(整形)
 
(他の1人の利用者による、間の51版が非表示)
1行目: 1行目:
作成中です - [[利用者:Mitsuhiro Yoshida|Mitsuhiro Yoshida]] 2008年10月4日 (土) 11:35 (CDT)
あなたの Moodle サイトを別のサーバに移動する必要が生じる場合もあることでしょう。例えば、共有ホスティングから専用サーバに移行する場合等です - これは、Moodle サイトの移行 (migration) として知られています。よくやってしまう間違いで、気を付ける必要があるのは、あなたの Moodle の設定ファイル「config.php」詳細を忘れずに変更することです。


あなたのMoodleサイトを別のサーバに移動する必要が生じる場合もあることでしょう。例えば、共有ホスティングから専用サーバに移行する場合等です - これは、あなたのMoodleサイトの移行 (migration) として知られています。よくやってしまう間違いで、気を付ける必要があるのは、あなたのMoodleの設定ファイル「config.php」の詳細を忘れずに変更することです。
==完全な Moodle サイトを移行する - 方法1==
 
==完全なMoodleサイトを移行する - 方法1==


ここでは、サイト全体を1台のサーバから別のサーバに移行することも含みます。あなたが新しいサーバに対して、新しいドメイン/IPアドレスを変更する場合、以下のステップを実行してください:
ここでは、サイト全体を1台のサーバから別のサーバに移行することも含みます。あなたが新しいサーバに対して、新しいドメイン/IPアドレスを変更する場合、以下のステップを実行してください:
* '''メンテナンスモード''' - Place your current Moodle site in maintenance mode to prevent any further additions to the Moodle database. Don't let administrators login during the migration as they are not affected by the maintenance mode setting.
* '''メンテナンスモード''' - Moodle データベースにデータが新たに追加されることを防ぐため、あなたの現在の Moodle サイトをメンテナンスモードに変更してください。移行中は、メンテナンスモードに影響を受けない管理者をログインさせないでください。
* '''あなたのMoodleデータベースをバックアップする''' - Do this by following the instructions in the [[Upgrading | upgrading Moodle]] page. This will give you a text file containing the mysql dump.
* '''あなたの Moodle データベースをバックアップする''' - MySQL ダンプの説明を含む、[[Moodleのアップグレード]]ページのインストラクションに従ってください。
* '''Moodleソフトウェアをコピーする''' - You will need to copy the Moodle code itself to the new server - upgrade the code to the latest version if you can.
* '''Moodle ソフトウェアをコピーする''' - Moodle コード自体を新しいサーバにコピーしてください - 可能でしたら、コードを最新のものにアップグレードしてください。
* '''<code>$CFG->wwwroot</code>を変更する''' - In your (possibly new) Moodle directory, change the <code>$CFG->wwwroot</code> variable in the ''config.php'' file for the new server.
* '''<code>$CFG->wwwroot</code> を変更する''' - あなたの (可能であれば新しい) Moodle ディレクトリ内で、「config.php」ファイルの <code>$CFG->wwwroot</code> 変数を新しいサーバに合わせて変更してください。
* '''データディレクトリ (moodledata) のコンテンツをコピーする''' - Copy the contents of your data directory (check for the value in <code>$CFG->dataroot</code>) to the new server. Check also that permissions remain the same on the new dataroot folder and change the value if you have changed its location on the new server.
* '''データディレクトリ (moodledata) のコンテンツをコピーする''' - あなたのデータディレクトリのコンテンツ (<code>$CFG->dataroot</code> の設定値を確認してください) を新しいサーバにコピーしてください。新しいデータディレクトリにおいてもファイルのパーミッションが同じになっているか確認してください。また、あなたが新しいサーバでデータディレクトリの場所を変更した場合、<code>$CFG->dataroot</code> の設定値を変更してください。
* '''あなたのMoodle URIを変更する''' - If you have a new URL, you'll need to change this in the Moodle database to the new server. This is needed as links to pictures, files, etc are stored as absolute links and will reference the old <code>$CFG->wwwroot</code> value. So when loading a mysql backup dump of the Moodle server into mysql on another server the absolute referenced links will be broken. There are two methods of doing this:
* '''あなたの Moodle URI を変更する''' - あなたが新しい URI を使用する場合、Moodle データベースを新しい URI 用に変更する必要があります。この作業は、写真、ファイルへのリンク等、古い <code>$CFG->wwwroot</code> の設定値を参照する絶対リンクとして保存されたデータを変更するため必要です。Moodle サーバに関する MySQL バックアップダンプをそのまま読み込む場合、絶対参照リンクが壊れてしまいます。新しい URI に変更するには、2つの方法があります:
:(a) The first method changes the Moodle URL using the Moodle script ''replace.php'' while your site is currently running just before you backup the Moodle database. Point your browser to <nowiki>http://yourserver.com/admin/replace.php</nowiki>
:(a) 最初の方法では、Moodle データベースをバックアップする直前、あなたのサイトが稼動している場合、Moodle スクリプト「replace.php」を使用して、Moodle URI を変更します。あなたのブラウザに次の URI を入力してください: <nowiki>http://yourserver.com/admin/replace.php</nowiki>


:Enter the url for your old server (<nowiki>http://oldserver.com/</nowiki>) and new server (<nowiki>http://newserver.com/</nowiki>) and it will fix the mysql tables. You will also need to clear out any cached links by restarting your webserver. Now, take another backup of the Moodle database - this one will have the correct URLs.
:あなたの古いサーバの URI (<nowiki>http://oldserver.com/</nowiki>) および新しいサーバの URI (<nowiki>http://newserver.com/</nowiki>) を入力した後、「Yes, do it now」ボタンをクリックしてください。MySQL テーブルが修正されます。また、ウェブサーバを再起動することで、キャッシュされているリンクをクリアしてください。次に、もう一度 Moodle データベースをバックアップします - このバックアップには、正しい URI が含まれています。


:(b) The second method is to backup the Moodle database first, then use the search and replace feature of your text editor (or use a unix tool like sed) to replace the old URL with the new one in the mysql backup file. Here is an example sed command:
:(b) 2番目の方法では、最初の Moodle データベースをバックアップします。次に、あなたのテキストエディタの検索および置換機能 (または、sed のような Unix ツール) を使用して、MySQL バックアップファイル内の古い URI を新しい URI に入れ替えます。以下、sed コマンドの例です:


: <code>#sed -e 's/oldserver.com/newserver.com/g' oldmysqldump.sql > newmysqldump.sql</code>
: <code>#sed -e 's/oldserver.com/newserver.com/g' oldmysqldump.sql > newmysqldump.sql</code>


:'''ヒント''': You may want to check the mysqldump file to see how the old server was referenced.
:'''ヒント''': mysqldumpファイルで古いサーバがどのように参照されているのか確認しても良いでしょう。:URI の変更後、MySQLデータベースをリストアしてください。
:After changing the URL, restore the mysql database
* '''移行をテストする''' - 新しいインストールをテストするには、ブラウザを使用して、新しいサーバの Moodle のURIにアクセスしてください。あなたが多数のコースワーク内のリンクを確認できた場合、新しい Moodle サイトのメンテナンスモードを解除してください。
* '''移行をテストする''' - To test the new install, access Moodle using your browser and the new server's URL. When you have tested that a number of links in the courses work, take the new Moodle site out of maintenance mode.
'''関連情報''': [http://moodle.org/mod/forum/discuss.php?d=85812 フォーラムディスカッション (英語)] Windowsシステム内の Moodle データの移行
'''関連情報''': [http://moodle.org/mod/forum/discuss.php?d=85812 Forum discussion] on migrating Moodle's data directory on a Windows system.


==完全なMoodleサイトを移行する - 方法2==
==完全な Moodle サイトを移行する - 方法2==


Do you have shell access on both servers? If so, the following method is a very quick and efficient method to migrate a *nix based site.
あなたは、両方のサーバでシェルアクセスできますか? もしそうでしたら、以下の方法は、*nix ベースのサイトで Moodle を移行するための、非常に素早い効率的な方法です。


It is also useful for creating snapshots or test sites.
また、スナップショットまたはテストサイトの作成も有用です。
*Set up a new empty database on the '''new''' server.
*新しい空のデータベースを'''新しい'''サーバにセットアップしてください。
*Place your Moodle site into maintenance mode.
*あなたの Moodle サイトをメンテナンスモードに変更してください。
*Login to shell on the '''old''' server.
*'''古い'''サーバのシェルにログインしてください。
*Use rsync to copy '''moodledata''' and '''public_html''' (or whatever directory your Moodle install is in) to the new server - execute (replacing caps with your details; SOURCE = the directory you want to copy) for each directory:
*'''moodledata''' および '''public_html''' (または、あなたの Moodle がインストールされているディレクトリ) を新しいサーバにコピーするには、rsync を使用してください - それぞれのディレクトリで rsync を実行します (あなたの環境に従って、大文字の部分を入れ替えてください。SOURCE = あなたがコピーしたいディレクトリです):
::<code>rsync -av -e ssh SOURCE/ USERNAME@NEW_SERVER.COM:/PATH/TO/DESTINATION/</code>
::<code>rsync -av -e ssh SOURCE/ USERNAME@NEW_SERVER.COM:/PATH/TO/DESTINATION/</code>
*Dump existing database and move and import into database on new server by executing:
*次のコマンドを実行することで、既存のデータベースをダンプして、新しいデータベースにデータをインポートしてください:
::<code>mysqldump --allow-keywords --opt -uMySQL_USERNAME -pPASSWORD DATABASE | ssh USER@DOMAIN "mysql -uMySQL_USERNAME -pPASSWORD DATABASE"</code>
::<code>mysqldump --allow-keywords --opt -uMySQL_USERNAME -pPASSWORD DATABASE | ssh USER@DOMAIN "mysql -uMySQL_USERNAME -pPASSWORD DATABASE"</code>
*On the '''new server''', update '''config.php''' with relevant details.
*'''新しいサーバ''''''config.php'''ファイルを適切に修正してください。
*To fix any internal Moodle links, login to your "new" Moodle install on your new server and use '''admin/replace.php''' to search and replace the old uri for the new.
*内部のMoodleリンクを修正するには、あなたの新しいMoodleにログインした後、'''admin/replace.php'''を使用して、古い URI を新しい URI に変更してください。
*Make sure everything is working.
*すべてが動作していることを確認してください。


Takes about 15 minutes.
15分ほどかかります。


When happy all has gone well, set up redirects/make DNS changes if required, take new site out of maintenance mode and "switch off" old site.
すべての作業が正常に完了した場合、必要に応じて DNS の設定を変更してください。新しい Moodle サイトのメンテナンスモードを解除して、古いサイトから新しいサイトへ移行してください。


==他に考慮すべきポイント==
==他に考慮すべきポイント==


===Moodleをアップグレードする===
===Moodle をアップグレードする===


When migrating Moodle it is often a good idea to take the opportunity to upgrade Moodle to the latest version. If you manage your own server, follow the instructions in [[Upgrading | upgrading moodle]], otherwise check if your host can upgrade for you.
Moodle を移行する場合、Moodle を最新バージョンにアップグレードすることは、良いアイディアです。もし、あなたがサーバを管理しているのでしたら、[[アップグレード|Moodleアップグレード]]のインストラクションに従ってください。そうでない場合、あなたのホストで Moodle をアップグレードできるかどうか確認してください。


===サーバ間の単一コースリストア===
===サーバ間の単一コースリストア===


You may need to restore a single course from an old site to a new one, especially if you are testing the migration. When restoring a Moodle backup file to Moodle on a different server than the one used to create the backup, the absolute referenced links to files maybe broken. To fix this problem open the ''backup-coursename.zip'' file and edit the ''moodle.xml'' file replacing links with <code>$@FILEPHP@$</code>.
特に移行をテストしている場合、あなたは古いサイトの単一コースを新しいコースにリストアしてみることもあるでしょう。バックアップしたサーバとは異なるサーバにMoodleバックアップをリストアする場合、ファイルに対する絶対参照リンクが壊れてしまいます。この問題を修正するには、「backup-coursename.zip」ファイルを開いて、「moodle.xml」のリンクを <code>$@FILEPHP@$</code> と置換してください。


For example, replace <nowiki>http://yourserver.com/file.php/243/</nowiki> with <code>$@FILEPHP@$</code>
例えば、「<nowiki>http://yourserver.com/file.php/243/</nowiki>」と「<code>$@FILEPHP@$</code>」を置換します。
   
   
When the file is restored it will use the correct file path for the new course.
修正したファイルをリストアする場合、新しいコースの正しいファイルパスが使用されます。


===DNSおよびマスカレーディングの変更===
===DNS およびマスカレーディングの変更===


You may have had to change the DNS entries for the new Moodle site. If you have done so, it will take some time for the changes to replicate, so be patient. If your server is located behind a firewall, you may also have to change your firewall rules to allow access to the new server. See the [[Masquerading | masquerading docs]].
あなたは、新しい Moodle サイトのために、DNS エントリを修正しなければならなかったかもしれません。もしそうでしたら、DNS の変更がレプリケーションされるまで時間がかかります。我慢してください。あなたのサーバがファイアウォールの背後に設置されている場合、新しいサーバにアクセスできるよう、ファイアウォールのルールを変更する必要があります。詳細は、[[マスカレーディング]]をご覧ください。


===内部および外部アクセス===
===内部および外部アクセス===


If you have a set up where your Moodle site can be accessed via a network and via the internet, ensure you check that the new site can be accessed internally and externally. 
あなたの Moodle サイトを内部ネットワークおよびインターネットからアクセスできるよう設定している場合、新しいサイトに内部および外部からアクセスできるかどうか確認してください。


==関連情報==
==関連情報==


Using Moodle forum discussions:
Using Moodle フォーラムディスカッション:
* [http://moodle.org/mod/forum/discuss.php?d=62959 Changing Moodle URL]  
* [http://moodle.org/mod/forum/discuss.php?d=62959 Moodle URIを変更する] - 英語
* [http://moodle.org/mod/forum/discuss.php?d=57477 Changing site address]  
* [http://moodle.org/mod/forum/discuss.php?d=57477 サイトアドレスを変更する] - 英語
* [http://moodle.org/mod/forum/discuss.php?d=76704 Upgrading whilst migrating]  
* [http://moodle.org/mod/forum/discuss.php?d=76704 移行中、アップグレードする] - 英語 
* [http://moodle.org/mod/forum/discuss.php?d=65450 Internal and external access]  
* [http://moodle.org/mod/forum/discuss.php?d=65450 内部および外部アクセス] - 英語 


[[Category:インストール]]
[[Category:インストール]]


[[en:Moodle_migration]]
[[en:Moodle_migration]]

2012年9月16日 (日) 04:42時点における最新版

あなたの Moodle サイトを別のサーバに移動する必要が生じる場合もあることでしょう。例えば、共有ホスティングから専用サーバに移行する場合等です - これは、Moodle サイトの移行 (migration) として知られています。よくやってしまう間違いで、気を付ける必要があるのは、あなたの Moodle の設定ファイル「config.php」詳細を忘れずに変更することです。

完全な Moodle サイトを移行する - 方法1

ここでは、サイト全体を1台のサーバから別のサーバに移行することも含みます。あなたが新しいサーバに対して、新しいドメイン/IPアドレスを変更する場合、以下のステップを実行してください:

  • メンテナンスモード - Moodle データベースにデータが新たに追加されることを防ぐため、あなたの現在の Moodle サイトをメンテナンスモードに変更してください。移行中は、メンテナンスモードに影響を受けない管理者をログインさせないでください。
  • あなたの Moodle データベースをバックアップする - MySQL ダンプの説明を含む、Moodleのアップグレードページのインストラクションに従ってください。
  • Moodle ソフトウェアをコピーする - Moodle コード自体を新しいサーバにコピーしてください - 可能でしたら、コードを最新のものにアップグレードしてください。
  • $CFG->wwwroot を変更する - あなたの (可能であれば新しい) Moodle ディレクトリ内で、「config.php」ファイルの $CFG->wwwroot 変数を新しいサーバに合わせて変更してください。
  • データディレクトリ (moodledata) のコンテンツをコピーする - あなたのデータディレクトリのコンテンツ ($CFG->dataroot の設定値を確認してください) を新しいサーバにコピーしてください。新しいデータディレクトリにおいてもファイルのパーミッションが同じになっているか確認してください。また、あなたが新しいサーバでデータディレクトリの場所を変更した場合、$CFG->dataroot の設定値を変更してください。
  • あなたの Moodle URI を変更する - あなたが新しい URI を使用する場合、Moodle データベースを新しい URI 用に変更する必要があります。この作業は、写真、ファイルへのリンク等、古い $CFG->wwwroot の設定値を参照する絶対リンクとして保存されたデータを変更するため必要です。Moodle サーバに関する MySQL バックアップダンプをそのまま読み込む場合、絶対参照リンクが壊れてしまいます。新しい URI に変更するには、2つの方法があります:
(a) 最初の方法では、Moodle データベースをバックアップする直前、あなたのサイトが稼動している場合、Moodle スクリプト「replace.php」を使用して、Moodle URI を変更します。あなたのブラウザに次の URI を入力してください: http://yourserver.com/admin/replace.php
あなたの古いサーバの URI (http://oldserver.com/) および新しいサーバの URI (http://newserver.com/) を入力した後、「Yes, do it now」ボタンをクリックしてください。MySQL テーブルが修正されます。また、ウェブサーバを再起動することで、キャッシュされているリンクをクリアしてください。次に、もう一度 Moodle データベースをバックアップします - このバックアップには、正しい URI が含まれています。
(b) 2番目の方法では、最初の Moodle データベースをバックアップします。次に、あなたのテキストエディタの検索および置換機能 (または、sed のような Unix ツール) を使用して、MySQL バックアップファイル内の古い URI を新しい URI に入れ替えます。以下、sed コマンドの例です:
#sed -e 's/oldserver.com/newserver.com/g' oldmysqldump.sql > newmysqldump.sql
ヒント: mysqldumpファイルで古いサーバがどのように参照されているのか確認しても良いでしょう。:URI の変更後、MySQLデータベースをリストアしてください。
  • 移行をテストする - 新しいインストールをテストするには、ブラウザを使用して、新しいサーバの Moodle のURIにアクセスしてください。あなたが多数のコースワーク内のリンクを確認できた場合、新しい Moodle サイトのメンテナンスモードを解除してください。

関連情報: フォーラムディスカッション (英語) Windowsシステム内の Moodle データの移行

完全な Moodle サイトを移行する - 方法2

あなたは、両方のサーバでシェルアクセスできますか? もしそうでしたら、以下の方法は、*nix ベースのサイトで Moodle を移行するための、非常に素早い効率的な方法です。

また、スナップショットまたはテストサイトの作成も有用です。

  • 新しい空のデータベースを新しいサーバにセットアップしてください。
  • あなたの Moodle サイトをメンテナンスモードに変更してください。
  • 古いサーバのシェルにログインしてください。
  • moodledata および public_html (または、あなたの Moodle がインストールされているディレクトリ) を新しいサーバにコピーするには、rsync を使用してください - それぞれのディレクトリで rsync を実行します (あなたの環境に従って、大文字の部分を入れ替えてください。SOURCE = あなたがコピーしたいディレクトリです):
rsync -av -e ssh SOURCE/ USERNAME@NEW_SERVER.COM:/PATH/TO/DESTINATION/
  • 次のコマンドを実行することで、既存のデータベースをダンプして、新しいデータベースにデータをインポートしてください:
mysqldump --allow-keywords --opt -uMySQL_USERNAME -pPASSWORD DATABASE | ssh USER@DOMAIN "mysql -uMySQL_USERNAME -pPASSWORD DATABASE"
  • 新しいサーバconfig.phpファイルを適切に修正してください。
  • 内部のMoodleリンクを修正するには、あなたの新しいMoodleにログインした後、admin/replace.phpを使用して、古い URI を新しい URI に変更してください。
  • すべてが動作していることを確認してください。

15分ほどかかります。

すべての作業が正常に完了した場合、必要に応じて DNS の設定を変更してください。新しい Moodle サイトのメンテナンスモードを解除して、古いサイトから新しいサイトへ移行してください。

他に考慮すべきポイント

Moodle をアップグレードする

Moodle を移行する場合、Moodle を最新バージョンにアップグレードすることは、良いアイディアです。もし、あなたがサーバを管理しているのでしたら、Moodleアップグレードのインストラクションに従ってください。そうでない場合、あなたのホストで Moodle をアップグレードできるかどうか確認してください。

サーバ間の単一コースリストア

特に移行をテストしている場合、あなたは古いサイトの単一コースを新しいコースにリストアしてみることもあるでしょう。バックアップしたサーバとは異なるサーバにMoodleバックアップをリストアする場合、ファイルに対する絶対参照リンクが壊れてしまいます。この問題を修正するには、「backup-coursename.zip」ファイルを開いて、「moodle.xml」のリンクを $@FILEPHP@$ と置換してください。

例えば、「http://yourserver.com/file.php/243/」と「$@FILEPHP@$」を置換します。

修正したファイルをリストアする場合、新しいコースの正しいファイルパスが使用されます。

DNS およびマスカレーディングの変更

あなたは、新しい Moodle サイトのために、DNS エントリを修正しなければならなかったかもしれません。もしそうでしたら、DNS の変更がレプリケーションされるまで時間がかかります。我慢してください。あなたのサーバがファイアウォールの背後に設置されている場合、新しいサーバにアクセスできるよう、ファイアウォールのルールを変更する必要があります。詳細は、マスカレーディングをご覧ください。

内部および外部アクセス

あなたの Moodle サイトを内部ネットワークおよびインターネットからアクセスできるよう設定している場合、新しいサイトに内部および外部からアクセスできるかどうか確認してください。

関連情報

Using Moodle フォーラムディスカッション: