Moodle站点完整移植的步骤

   这种情况是,涉及到把Moodle从一台服务器整个的迁移到另一个服务器上。如果您要更改访问的域名或 IP地址来访问新的服务器,那你需要按这样的步骤来做:

  .维护模式。先将Moodle站点更改为维护模式,以防止在迁移的过程中有人对Moodle的数据库进行增补的操作。同时,也要提醒其他管理员,不要在迁移过程中登录,因为他们不受维护模式设置的影响。

  备份Moodle数据库。可以用Myphpadmin或MySQL的dump命令或其他工具。

  Moodle程序复制。把原服务器上的Moodle代码复制到新的服务器上相应目录。如果可能,可以把程序代码升级到最新版本后再复制过去。

  变更$CFG->wwwroot。在新的服务器的Moodle的目录中,修改config.php文件中的$CFG->wwwroot为你新的访问地址。

  复制数据目录的内容(moodledata)。把moodledata复制到你的新服务器的相应数据目录中,然后检查修改$CFG->dataroot

  设置moodledata权限。检查新服务器中moodledata的权限,保证有读写的权。

  修改Moodle访问地址。如果用了一个新的URL来访问新的程序,那就需要改变Moodle数据库中的访问地址为新的地址。地址已经在 $CFG->wwwroot中设置了。这是一步是非常必要的,因为图片、文件等是以绝对地址的形式存储的。.因此,加载到新的MySQL中链接地址 就会出现错误了。解决的办法有二个:

 

  (1)第一种方法是使用Moodle的脚本replace.php。


 

  在操作这步前,要保证您已经对你的Moodle的数据库进行了备份。用管理员帐户登陆,然后访问http://yourserver.com/admin/replace.php

  1.97界面

  Search whole database for:(搜索整个数据库:)填入您的旧服务器的URL

  Replace with this string:(替换为新的字符串:)新的服务器URL

  然后点"Yes,do it now"开始修复MySQL的表。

  完成后,清除下Web服务器的缓存链接,就可以用新的URL地址访问新的平台了。

 

  (2)第二种方法是先备份Moodle的数据库,再使用文本编辑器的搜索和替换功能(如sed Unix工具),更改URL。


 

  下面是一个sed命令:

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

  提示:您可能需要检查mysqldump文件版本,以保证在新的服务器能用。

  然后在新平台中恢复mysql数据库

  .测试迁移。迁移后,以管理身份进行测试,使用新的URL来访问Moodle的。当你测试的成功后,就可以取消“维护模式”,供大家进行课程学习了。

文库: