将 mysql db 从 XAMPP 迁移到 WAMP

Posted

技术标签:

【中文标题】将 mysql db 从 XAMPP 迁移到 WAMP【英文标题】:Migrate mysql db from XAMPP to WAMP 【发布时间】:2014-03-25 08:20:12 【问题描述】:

我在 xampp 中使用 phpmyadmin 构建了一个 sql 数据库。我现在正在切换到 wamp。为了传输数据库,我从 xampp 复制了数据库文件,位于 xampp//...mysql/data// 并将它们粘贴到 wamp//...mysql/data//。但是,当我从 wamp 运行 phpmyadmin 时,数据表不会出现。

我会直接将数据库从 xampp-phpmyadmin 导出到 wamp-phpmyadmin,但是我已经卸载了 xampp 并且不再拥有源文件,除了位于 xampp//...mysql/data// 中的文件.

我在这里错过了一步吗?

【问题讨论】:

【参考方案1】:

这不是复制数据库文件的推荐方法。它可能有效(这就是您有时会看到人们推荐它的原因),它可能有效(要求您重置权限),或者它可能完全无法复制您的任何数据。传输数据库的一种更强大的方法是从旧服务器执行 SQL 导出,然后将其导入新服务器。既然你摆脱了旧的安装,我们将很快超越这一点,但要明确的是,没有任何承诺它会起作用。

根据您已经完成的操作,我的第一个猜测是您的用户没有新数据库的权限。您是作为 root 用户还是其他具有管理权限的用户登录?

当您说您复制了 db 文件时,您的意思是您复制了文件夹(与您的数据库具有相同或相似的名称)以及该文件夹中的所有文件?请检查该文件夹和其中文件的文件系统权限,以确保它们与其他 MySQL 数据文件的权限和所有者/组匹配。你知道这些表是什么表类型吗?

【讨论】:

感谢您的帮助。我需要以 admin 的 root 用户身份登录。数据库成功迁移。 太棒了!原因是权限存储在mysql数据库中,你没有复制(一般也不建议复制);现在您可以继续为您的用户在该数据库上重新创建适当的权限。【参考方案2】:

以您的数据库名称命名的文件夹,我们称之为mydatabase 应该复制到\wamp\bin\mysql\mysqlx.y.z\data\mydatabase

不要复制任何其他文件夹,只复制具有您自己实际创建的数据库名称的文件夹。

如果 MySQL 版本与您用于创建数据库的版本相同,则应该可以正常工作。如果版本略有不同,它可能会起作用,但如果版本差异很大,它可能不会起作用。

【讨论】:

以上是关于将 mysql db 从 XAMPP 迁移到 WAMP的主要内容,如果未能解决你的问题,请参考以下文章

将记录从一个 db 迁移到 mysql 使用 Delphi 和 Firedac 非常慢

将 Django DB 从 SQLite 迁移到 MySQL 的最佳方法是啥?

将 XAMPP 数据库迁移到 LAMP

使用Ruby从MySQL迁移到DB2

将 Hypersonic DB 迁移到 MySQL/MariaDB

数据迁移实战:基于Kettle的Mysql到DB2的数据迁移