Ruby on rails RubyonRails新手

Ruby on rails RubyonRails新手,ruby-on-rails,ruby,web-applications,backup,Ruby On Rails,Ruby,Web Applications,Backup,我继承了一个有问题的RubyonRails应用程序。我已经读完了一些关于Rails的书,但还没有看到一些问题的答案 备份应用程序的最佳方法是什么?我能不能只tar-cvzf app.tgz app?我还不知道该应用程序是否有sqlite3数据库或连接到db服务器 将应用程序移动到另一台服务器进行测试的最佳方法是什么?同样,我不知道是sqlite3还是db服务器支持它 谢谢 迈克尔 更新:是的,我将使用版本控制。现在没有。我想我想问的问题是:应用程序目录的可移植性如何;如果我想将整个应用程序移动到

我继承了一个有问题的RubyonRails应用程序。我已经读完了一些关于Rails的书,但还没有看到一些问题的答案

  • 备份应用程序的最佳方法是什么?我能不能只
    tar-cvzf app.tgz app
    ?我还不知道该应用程序是否有sqlite3数据库或连接到db服务器

  • 将应用程序移动到另一台服务器进行测试的最佳方法是什么?同样,我不知道是sqlite3还是db服务器支持它

  • 谢谢

    迈克尔


    更新:是的,我将使用版本控制。现在没有。我想我想问的问题是:应用程序目录的可移植性如何;如果我想将整个应用程序移动到另一台计算机上,我是否需要随身携带其他任何东西

    对于两者,我建议使用版本管理系统。 或许

    出于类似的原因,我就是这么做的

    如果查看config/database.yml中的数据库设置,您将找到正在使用的任何数据库。如果是sqlite,只需确保它是subversion存储库的一部分


    除此之外,当您在另一台服务器上进行导出或签出时,只要确保该服务器可以访问数据库,无论它在哪里。

    对于这两种情况,我建议使用版本管理系统。 或许

    出于类似的原因,我就是这么做的

    如果查看config/database.yml中的数据库设置,您将找到正在使用的任何数据库。如果是sqlite,只需确保它是subversion存储库的一部分


    除此之外,当您在另一台服务器上进行导出或签出时,只要确保该服务器可以访问数据库,无论它在哪里。

    版本控制应该是一个良好的开端。您应该立即找出什么是后台数据库,并确保您不仅有1个数据库文件/服务器,而且还有第二个用于测试的实例。不要乱动生产数据

    版本控制应该是一个良好的开端。您应该立即找出什么是后台数据库,并确保您不仅有1个数据库文件/服务器,而且还有第二个用于测试的实例。不要乱动生产数据

    以“备份”可与git一起使用的应用程序的代码。这为您提供了一个可以放置代码的非现场区域,但我认为您必须为私有存储库付费(大约12美元/月)。或者,只需在办公室的另一个盒子上设置一个git服务器,并在那里托管它

    “数据库设置”保存在config/database.yml中,这将告诉您需要了解的有关数据库的信息。

    要“备份”您可以使用git的应用程序的代码。这为您提供了一个可以放置代码的非现场区域,但我认为您必须为私有存储库付费(大约12美元/月)。或者,只需在办公室的另一个盒子上设置一个git服务器,并在那里托管它


    “数据库设置”保存在config/database.yml中,这将告诉您需要了解的有关数据库的信息。

    我想看看Capistrano-这是首选的部署/管理工具

    在其核心,它将从源代码管理中获取您的应用程序,部署和配置目标服务器,并运行任何数据库迁移

    您可以使用它指向多个服务器(例如测试、暂存和生产)


    要回答实际问题,只需复制Rails目录即可移动应用程序(注意:不仅是应用程序目录,还有父目录)。您的数据库需要单独管理-对于sqlite,您可以抓取文件,如果您使用MySQL,您可能会转储数据库并在下一台服务器上重新配置。

    我想看看Capistrano-这是首选的部署/管理工具

    在其核心,它将从源代码管理中获取您的应用程序,部署和配置目标服务器,并运行任何数据库迁移

    您可以使用它指向多个服务器(例如测试、暂存和生产)

    要回答实际问题,只需复制Rails目录即可移动应用程序(注意:不仅是应用程序目录,还有父目录)。您的数据库将需要单独管理-在sqlite的情况下,您可以抓取文件,如果您使用的是MySQL,您可能会转储数据库并在下一台服务器上重新配置

    我还不知道该应用程序是否有sqlite3数据库或连接到db服务器

    查看config目录中的database.yml文件。适配器线路将告诉您它使用的是什么DB

    我还不知道该应用程序是否有sqlite3数据库或连接到db服务器

    查看config目录中的database.yml文件。适配器行将告诉您它使用的是什么DB。

    GIT(或SVN)+Capistrano对于代码,对于数据,有以下选项:

    • 有几个rails插件用于转储应用程序数据库和资产。我最喜欢的是github.com/toy/dump。您可以运行
      rake dump:create
      rake dump:restore
      。最令人兴奋的是capistrano集成—
      cap dump:mirror:down
      下载应用程序资产和数据库,它会在本地计算机上创建站点的克隆

    • 如果您需要自动备份您的应用程序,以睡眠良好,我建议您的服务。这是rails应用程序自动备份的完整解决方案,您只需安装它们的插件,它们就会自动处理剩余的过程。它们将备份的历史记录保留数周,您可以通过浏览器浏览并自动恢复其中任何一个

    GIT(或SVN)+Capistrano对于代码,对于数据,有以下选项:

    • 有几个rails插件用于转储应用程序数据库和资产。我最喜欢的是github.com/
      cd ~/Rails
      rails my_app
      cd my_app
      git init
      git add .
      git commit -m "first commit"
      
      cd ~/Dropbox/git
      mkdir my_app.git
      cd my_app.git
      git init --bare
      
      cd ~/Rails/my_app
      git remote add origin ~/Dropbox/git/my_app.git
      git push origin master
      
      rake rails:freeze:gems