我可以从数据文件中找出哪个版本的MySQL?

我有一个非常奇怪的情况发生在这里.我有一个运行ubuntu 8.10的linux盒子和带有Wordpress安装的MySQL服务器,它为我们公司托管一个内部博客.运行它的机器已经废弃,但我能够将驱动器放入机箱并获取对文件的访问权并恢复MySQL数据文件夹.我们大多是Windows公司,我的Linux经验非常有限.在此计算机崩溃之前,我们正在尝试将此博客移至运行PHP for IIS的Windows虚拟机;我们在MySQL 5.1上启动并运行了Wordpress数据库的旧版本.我目前正在尝试从linux MySQL数据文件夹中检索最新数据并将其导入当前数据库,但我遇到了问题.

到目前为止的问题
1)我不知道linux盒子上安装了什么版本的MySQL
2)我在linux MySQL数据文件夹中看到了ib_logfile0,ib_logfile1和ibdata1,但我不确定它是否真的在运行InnoDB,因为我在wordpress文件夹中也有.frm,.myd和.myi文件

如果我能弄清楚linux盒子的版本MySQL我可能能够创建一个运行linux和MySQL的虚拟机,这样我就可以复制数据文件夹,然后进行导出转储;除非其他人知道更简单的方法将数据导入我当前的数据库.

任何有关此问题的帮助或指导将不胜感激.

谢谢,
弥敦道

解决方法:

我能想到的最干净的方法是只检查一个表:mysql.user

如果你可以登录到mysql,请运行以下查询:

SELECT COUNT(1) column_count FROM information_schema.columns
WHERE table_schema='mysql' AND table_name='user';

以下是您应该得到的答案:

>如果你得到43,MySQL 5.6
>如果你得到42,MySQL 5.5
>如果你得到39,MySQL 5.1
>如果你得到37,MySQL 5.0

如果无法登录mysql,请复制该表

> user.frm
> user.MYD
> user.MYI

到另一台运行mysql的机器.

在另一台机器上运行CREATE DATABASE垃圾;

转到该其他mysql服务器中的datadir

将目录更改为垃圾

将用户表的三个文件复制到其中.如果其他机器是Linux机器,请记得运行chown mysql:mysql user.*

在另一台机器上登录MySQL并运行

DESC junk.user;

它会告诉我之前提到的相同数字.

但是,如果你得到28那就是MySQL 4.1.如果你得到17,那就是MySQL 4.0.玩得开心.

试试看 !!!

上一篇:在WCF程序中动态修改app.config配置文件


下一篇:mysql – 为InnoDB中的每个数据库创建新的ibdata *文件