【问题标题】:In Which Location Are Mysql Compiled Procedures Stored?Mysql编译过程存放在哪个位置?
【发布时间】:2009-12-22 12:55:22
【问题描述】:

如何从它们的物理位置获取已编译的 Mysql 存储过程?

【问题讨论】:

  • 在此之前我已经重新安装了操作系统,我已经复制了位于 Mysql/Data 文件夹下的所有内容。现在我可以恢复除存储过程之外的所有值。有什么办法吗?

标签: mysql stored-procedures


【解决方案1】:

在数据库mysql 中有一个表proc,它似乎保存了存储过程的所有数据。
所以物理文件应该是/mysql/proc.MYI和/mysql/proc.MYD。

编辑:但也许你只是在寻找SHOW CREATE PROCEDURE

【讨论】:

  • 我做了上述事情,但结果相同:(。还有其他可能的方法吗?
  • 没有。我已经重新安装了操作系统,然后我复制了位于 Mysql/Data 文件夹下的所有内容。现在我可以恢复除存储过程之外的所有值。有什么办法吗?
  • hm,如果您将这两个文件放入数据目录中的另一个目录中,例如datadir/proctest/proc.MYI 和 datadir/proctest/proc.MYD 然后重新启动 mysql 服务器,你可以访问表,例如SELECT body FROM proctest.proc ?
  • 为了将 mysql 数据库服务器转移到新主机,您需要复制数据目录下的所有内容。真的什么都有。你不能随便挑挑拣拣。如果您未能复制系统“mysql”数据库,则程序将丢失。同样,如果您未能复制 innodb 表空间,您的 innodb 表将丢失。
  • 嗯,是的,这就是一切,但我的错是我只是将这两个文件粘贴到 Mysql 默认模式中。似乎每个模式都有单独的文件(proc.MYI 和 proc.MYD)但在我的旧mysql数据库只有默认的(mysql)有这个。哪个是真正的概念?
猜你喜欢
  • 1970-01-01
  • 2011-06-30
  • 2014-07-25
  • 1970-01-01
  • 1970-01-01
  • 2019-12-13
  • 2017-09-23
  • 2010-12-26
  • 1970-01-01
相关资源
最近更新 更多