【问题标题】:Migrating drupal site from a Windows to a Linux machine将 drupal 站点从 Windows 迁移到 Linux 机器
【发布时间】:2010-09-25 11:02:49
【问题描述】:

我不得不将一个 drupal 站点从运行 xampp 包的 Windows 机器迁移到运行 Linux (Ubuntu 10.04) 的机器。

我将数据库导出到源计算机上的 sql 文件,并使用目标计算机上的文件重新创建数据库。另外,我将我的网站文件夹从源复制到目标。我还在 settings.php 中更改了主机名、用户名和密码以反映目标计算机上的 mysql 凭据,但是当我尝试访问该站点时,我收到消息 'Error connected to mysql' .

这里可能出了什么问题?

【问题讨论】:

  • 数据库名称是否完全相同?
  • 有关 Stack Overflow 的问题应该与编程(即编写代码)有关。有关管理您的网站的一般帮助,请查看Pro Webmasters.SE

标签: php mysql drupal


【解决方案1】:

我会从头开始安装 Drupal。您可以不理会所有文件,但去掉sites/default/settings.php。然后运行 ​​/install.php 脚本,这样您就知道您获得了正确的数据库连接。回到第 1 格后,尝试引入旧数据库。这是一个 PITA,但迁移 Drupal 站点往往是这样。

Backup and Migrate module 在像您这样的情况下非常有用。尝试在您的开发站点上安装它,运行备份,然后从头开始重新安装您的临时站点,安装 backup_migrate,然后从那里恢复。

【讨论】:

    【解决方案2】:

    SSH 到您的网络服务器并执行

    mysql -u username -h hostname -p
    

    你能用那个连接吗?如果这不起作用,那么它与您的数据库服务器配置有关。如果这有效,那么它与您的 Drupal 配置有关。

    怎么样

    mysql -u username -h hostname -p databasename
    

    如果可行,请尝试SHOW TABLES; 看看里面是否有任何东西。

    【讨论】:

    • 是的,mysql -u username -h hostname -p 有效,所以用户名、密码和主机名是正确的。我无法弄清楚 Drupal 配置可能有什么问题,因为我已经复制了网站原样。它在 Windows 机器上运行,除了目标 Linux 机器上的 settings.php 之外,我没有进行任何更改! :(
    【解决方案3】:

    你确定你的语法正确吗 $db_url = 'mysqli://root:pass1@localhost/drupaldb'

    你没有前缀配置..我已经移动了很多数据库,它们都工作了

    ..您确定您使用的是标准端口并且没有防火墙问题

    用户名:密码@主机:端口/数据库名

    【讨论】:

    • 感谢回复...什么是前缀配置?
    • 在settings.php中只是在db设置下面
    猜你喜欢
    • 1970-01-01
    • 2011-12-18
    • 2020-05-26
    • 2018-08-13
    • 2013-10-16
    • 2012-04-23
    • 2018-02-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多