【发布时间】:2015-07-18 19:00:41
【问题描述】:
好的,我有一个问题。 MySQL 已经安装在我的机器(mac)上,但我无法通过终端登录(对我来说是相当新的机器)。我已经通过 SequelPro 使用了几个数据库,并决定通过终端登录来完成几个工作。
我不知道为什么不。我运行了 brew install mysql,令我惊讶的是它安装了 mysql。通过终端登录时,我被带到了这个没有我的数据库的 MySQL 实例。现在,我重新启动 SequelPro,它现在登录到新实例而不是包含我数据的实例。
知道在哪里可以找到我的数据库并让它们使用这个新实例吗?或者对如何清理一般情况有任何想法?
---更新---
数据库是 InnoDB
/usr/local/bin/mysql
/usr/local/Cellar/mysql
/usr/local/Cellar/mysql/5.6.25/bin/mysql
/usr/local/Cellar/mysql/5.6.25/include/mysql
/usr/local/Cellar/mysql/5.6.25/include/mysql/mysql
/usr/local/Cellar/mysql/5.6.25/share/doc/mysql
/usr/local/Cellar/mysql/5.6.25/share/mysql
/usr/local/include/mysql
/usr/local/Library/LinkedKegs/mysql
/usr/local/opt/mysql
/usr/local/share/doc/mysql
/usr/local/share/mysql
/usr/local/var/mysql
/usr/local/var/mysql/mysql
/usr/local/var/mysql 是我的第一个实例的数据库所在的位置。 /Cellar 是 homebrew 安装 MySQL 的地方。我在 cmets 中获得了添加符号链接的建议……不确定在这种情况下我应该将哪个文件夹用作源或目标。
另外,我也不确定如何从旧位置启动数据库。
非常感谢任何帮助!
【问题讨论】:
-
您的 my.cnf 文件似乎已被覆盖,从而丢失了您的数据库位置。旧数据库可能(或实际上应该)仍然存在。要找到它:以 root 用户身份打开命令提示符,转到 /,在磁盘上搜索所有出现的 mysql:ls -alR|grep mysql(或类似的)。这应该会为您提供数据库可能驻留的所有位置。
-
谢谢。我找到了数据库。关于将它们导入新实例的最佳方法有什么想法吗?
-
如果它是一个 ISAM 数据库,您可以使用创建数据库然后将文件复制到 mysql 创建的目录中。如果是 InnoDB,您将真正使用旧位置启动数据库,或者使用符号链接:将新位置移动到新目录(重命名目录),并创建符号链接 ln -s source target
-
我添加了一个更新以确保一切都清楚,我们可以关闭这个问题。感谢您的帮助!