php - php-Google云端硬盘上的XAMPP

标签 php mysql apache xampp google-drive-api

最近,我不得不在计算机上重新安装XAMPP,这意味着必须替换以前设置的所有配置文件以及其他任何数据文件(例如MySQL数据库,网站等),这又是另一麻烦。

我对此进行了尽可能多的研究-但大多数人似乎只想同步htdocs和mysql数据,但是,我想将整个xampp安装存储在Google云端硬盘中,这意味着无需在其上进行设置其他电脑等

是否可以?优点缺点?

如果不建议使用XAMPP,在Google驱动器上单独安装apache/mysql/php是否足够?

我对此有两个想法:

  • 在Google驱动器上安装USB便携式版本
  • 在PC上安装完整版本,然后将其移至Google驱动器并将该位置符号链接(symbolic link)到驱动器文件夹

  • 我意识到可能无法使用它来运行服务...但是除此之外,我不会每次都从多台PC上访问它,这纯粹是为了使服务器能够随时使用,无论我是否m在我的笔记本电脑,PC等上……不再需要在网站上进行复制或更改两者上的配置文件以匹配任何新网站的需求。

    谢谢!

    最佳答案

    我很早以前就想出了这一点,但我只是记得发布答案,以防其他人也想要。

    TL:DR; =可能的话,这是毫无意义的/超出了所需的开销。

    解决方案:

    我最终要做的是同步最重要的区域,这些区域(在xampp根目录下):

  • /htdocs
  • /phpmyadmin
  • /php
  • /mysql/data-这里的关键是而不是整个文件夹的,只是数据位

  • 这样可以确保我运行的PHP和phpMyAdmin的版本都相同,并且我的数据库存在(是的,不再需要导出/导入!)。

    我不同步apache文件夹的原因是因为我在计算机上的设置略有不同(不同的路径)。

    我使用符号链接(symbolic link)将文件夹指向其在Dropbox上的位置(是的,我确实要求提供Google云端硬盘,但是请查看答案的结尾以了解交换的原因)。

    它工作得很好,我还没有找到更好的解决方案。尽管现在将工作流程转移到虚拟机上已经有了转变,但是由于需要在笔记本电脑和主PC之间进行切换,因此我更需要这种可移植性。

    问题:
  • 我遇到了一些小问题,几乎全部与mysql有关。
  • 如果MySQL服务在尝试加载时正在同步文件,则它并不总是在计算机启动时启动,这不是一个主要问题,而是一个细微的差别。
  • 数据库损坏! :-o这实际上是通过从Google云端硬盘移至Dropbox来解决的,最后进行了更多说明。
  • 您不能同时可靠地同时打开两台计算机,因为这可能会导致数据库冲突。创建新数据库时,最好在一台计算机上进行操作,使其完全启动,然后关闭计算机并启动另一台计算机,以便它同步所需的内容。有时,必须首先停止MySQL服务。

  • Google云端硬盘与DropBox

    我喜欢Google云端硬盘,我用它来做所有事情。它很便宜,与之相比,DropBox的10美元(10英镑)的价格为100美元(3美元)或100GB的空间。

    一段时间后,随着项目的发展和htdocs的庞大,我开始注意到一些问题。我开始使用名为Laravel 4的框架一段时间,其中涉及到许多文件被 Composer 带到供应商目录中。 Google云端硬盘似乎为其中的一部分编制了索引,然后仅同步了一些文件,但我没有意识到。

    这将导致我过一会儿再去笔记本电脑,通常远离我的PC,并且意识到一半的项目丢失了,因此无法使用。在大多数情况下,除非我删除了整个文件夹或其他欺骗手段,否则将不会提取文件,这在最初的项目创建时非常痛苦。

    我还发现使用Google云端硬盘时数据库损坏的频率很高,随着Google云端硬盘文件夹中文件数量的增加,情况变得更糟。

    最终,我决定将自己的htdocs交换到DropBox。几周没有问题后,我交换了其余部分,从那时起,我就没有数据库损坏或任何文件夹未同步的问题。我认为这可能归因于Google云端硬盘似乎无法处理这么多小文件(据粗略估计,Laravel 4供应商目录中有4k +个文件,可以在10个项目以及laravel 4以外的任何其他项目上想象一下) 。

    解决数据库损坏

    在仍使用Google云端硬盘的同时,我找到了一种安全的方法来确保即使损坏了我的数据库也能保持一定的安全性,我创建了一个批处理文件(Yup,Windows用户)对所有非默认数据库进行数据库备份(跳过这些数据库) (基本上是MySQL/PhpMyAdmin附带的文件)添加到不在Google云端硬盘/DropBox上的文件夹中的.sql文件。这意味着,如果我的数据库确实损坏了,最糟糕的情况是我已经失去了几天的数据库工作量,而这通常不算太多(特别是如果您使用迁移来创建表)。删除损坏的表/数据库并通过.sql文件还原它们只是一个简单的任务。

    关于php - php-Google云端硬盘上的XAMPP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15987989/

    相关文章:

    php - 如何使用 codeigniter 在数据库中提交多行表格数据?

    php - 想要我的文本区域格式它是像 html 这样的只读文本

    mysql - 如何将MySQL数据库导入SOLR

    MySQL服务器5.5 : unable to set password for the MySQL "root" user

    php - 使用 mod_rewrite 的 .htaccess 新手问题

    php - 尝试在 URL 中传递变量时出现 "sorry you are not allowed to access this page"

    javascript - 使用自动递增 Id 在 div 中添加新元素

    mysql - 从 MySQL 将 NULL 作为 NaN 拉入 Matlab

    ruby-on-rails - 在 Centos 上安装 Redmine

    php - 从 Linux 上的 PHP 连接到 MS SQL Server?