“错误1067:进程意外终止”当试图在Win7 x64上安装MySQL

我遇到了一个砖墙,试图在我的机器上安装MySQL v5.5。

我的电脑是Windows 7 x64,企业版。

MySQL安装正常,但是当我运行“MySQL实例configuration向导”时,它永远停留在“启动服务”(我可以让它运行30分钟,没有响应)的步骤。 如果我进入服务,我看到“MySQL”服务还没有启动,如果我尝试启动它,它说:“Windows无法在本地计算机上启动MySQL服务,错误1067:进程意外终止。

我已经尝试了以下内容:

  • closures防火墙。
  • 卸载所有防病毒软件。
  • 安装/重新安装32位版本的MySQL。
  • 安装/重新安装64位版本的MySQL。
  • 卸载,删除“C:\ program files \ MySQL”和“C:\ program files(x86)\ MySQL”的内容,重新安装。
  • 检查看看有没有名为MySQL的stream氓服务? (从以前的安装)。
  • 检查端口3306不被替代程序使用。
  • 更改MySQL使用的默认端口。
  • 检查“C:\ windows”中的“my.ini”和“my.ini.cnf”(没有任何东西可以导致问题)。
  • 在“pipe理员模式”下运行MySQL安装程序和configuration向导。
  • closuresUAC。
  • 使用默认值进行安装,不会更改任何内容
  • 重新启动我的机器(到目前为止大约有6次重启)。
  • 打开防火墙中的端口3306(TCP和UDP,入站和出站)。
  • 发誓deviseMySQL的程序员,所以你甚至不能安装它(如果这将帮助!)

我的机器以其他方式工作100%。 InfiniDB(一个兼容MySQL的数据库)安装100%,Visual Studio 2010,Microsoft SQL Server等也是如此。

你的build议如何解决这个问题?

ps这是它被卡住的屏幕15分钟,直到我杀了进程:

替代文字

2010-12-20更新

试过MySQL v5.1,它也没有工作。 其惊人的 – 如果你input“mysqld /?”,或“mysqld -help”,它不会给你任何帮助。 而且,如果您尝试手动重新启动服务,则不会显示任何错误消息。 难道会更无助吗?

2010-12-21更新

安装MySQL 6.0 alpha,它的工作。 但是,我宁愿不使用一个alpha版本,因为“稳定”版本是什么,但:(

2010-12-21更新

findhttp://dev.mysql.com/doc/refman/5.1/en/windows-troubleshooting.html ,处理Windows下的故障排除。

发现如果服务无法启动,您可以生成错误日志 – 请参阅: http : //dev.mysql.com/doc/refman/5.1/en/error-log.html

2010-12-21更新

啊哈! 线索。 要真正看到错误,请添加“–console”:

mysqld --console 

这返回:

 101221 13:57:28 [Note] Plugin 'FEDERATED' is disabled. InnoDB: The InnoDB memory heap is disabled InnoDB: Mutexes and rw_locks use Windows interlocked functions InnoDB: Compressed tables use zlib 1.2.3 101221 13:57:28 InnoDB: Initializing buffer pool, size = 203.0M 101221 13:57:28 InnoDB: Completed initialization of buffer pool InnoDB: Error: log file .\ib_logfile0 is of different size 0 56623104 bytes InnoDB: than specified in the .cnf file 0 106954752 bytes! 101221 13:57:28 [ERROR] Plugin 'InnoDB' init function returned error. 101221 13:57:28 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed. 101221 13:57:28 [ERROR] Unknown/unsupported storage engine: INNODB 101221 13:57:28 [ERROR] Aborting 101221 13:57:28 [Note] mysqld: Shutdown complete 

2010-12-21更新

现在安装正确。 请参阅下面的答案。

以下是我解决问题的方法:

步骤1:默认情况下,无法找出服务无法启动的原因。 所以,告诉它以非服务模式启动,并将错误传递给控制台:

 mysqld --console 

第二步:在我的情况下,我不得不删除的内容:

 C:\ProgramData\MySQL 

…然后重新安装。 MySQL v5.5安装程序有一个错误:如果卸载MySQL v5.5以修复安装不当的问题,则无法清理C:\ ProgramData \ MySQL,这意味着无法安装MySQL v5.5那台机器,从那一刻起,不删除这个stream氓目录。

提示:

  • 确保在进程监视器中杀掉任何“mysqld”实例。
  • 要删除任何现有的服务,请使用“sc delete MYSQLxx”。

在Oracle上致MySQL开发团队的一封信:

—开始写信给Oracle —

Oracle的亲爱的MySQL开发团队:

如果在安装MySQL时,服务无法启动,请通过以下两种方式告诉我们为什么:(a)指向错误日志的方向或(b)显示此错误日志。

如果不这样做的话,甲骨文将无能为力。

此致,

在Windows上安装MySQL的每个人。

—结束对Oracle的公开信—

http://mydailytech.com/post/how-to-fix-mysql-error-1067/

检查并按照上面的链接 – 它应该像我的情况一样解决。

希望有所帮助

从网站引用rigatum发表:

在安装MySQL的时候,如果你把它安装在一个非标准的目录下,那么在你运行MySQL或者安装MySQL服务之前,你需要指定默认文件的path,否则你会得到错误1067。

首先让我们打开命令提示符。 导航到您的MySQL安装文件夹,并findmysqld.exe的位置。 然后运行这个:

 mysqld –remove MySql 

这将卸载MySQL服务。 现在使用defaults-file参数重新安装服务:

 mysqld –install <service name> –defaults-file=<full path of “my.ini” file> 

例如:

 mysqld –install MySql –defaults-file=c:\mysql\my.ini 

享受你的无错误的MySQL安装。

而我只是添加 – 不仅在这种情况下programdata \ mysql必须删除,而且innoDB文件夹:\ mysql数据文件

我同意Gravitas,但你不需要重新安装(特别是在安装MySQL时
Server xx位于C:/ Program Files /中的默认文件夹以外的其他文件夹中)。
这些步骤帮助我成功地运行服务。在Win7 x64中工作,所以我认为x32将会很好:)

打开安装了MySQL Server xx的“my.ini”文件(我的是5.5,但是5.1也行)
去那里说:

datadir=C:/ProgramData/MySQL/MySQL Server xx/data – >(这是默认path)
用这样的东西改变上面的行:
datadir="<Drive_Letter>:/path/where/MySQL/is/installed/MySQL Server xx/data/"

C:/ProgramData/MySQL/MySQL Server xx/所有内容复制到新指定的datadir
除了 ib_logfile0ib_logfile1 (将它们作为备份重新定位在别处)。
删除C:/ProgramData/MySQL/MySQL Server xx/
重新运行MySQLInstanceConfig
检查TCP/IP networking不要更改安全设置(保持不变)。
启动服务( ib_logfile(1,2)将被重新生成)。

PS:使用CCleaner重新启动并清除临时文件。 对于某些奇怪的原因,在应用以上设置之后,无法从IDE或MySQL Workbench CE xx连接到MySQL DBMS,直到重新启动。

注:编辑安全设置将导致configuration实用程序由于另一个错误而挂起
在启用任何其他设置的TCP / IP时引入。

希望这可以帮助!

为了logging,我试了几个小时得到5.5.20安装在Windows 2008 64bit 。 它永远不会开始。 我尝试了所有我能find的解决scheme。 包括在这里接受的答案。 从未工作。

所以我降级到5.1.61 ,就像冠军一样。 第一次。

我做的是

  1. 在守护程序没有运行的情况下,我将Program Data \ MySQL下的数据文件夹重新命名为其他名称。
  2. 从控制面板卸载mysql
  3. 重新安装。 在configuration安全设置失败,错误#1045。 我检查了MySQL已经被安装为一个服务,并且root密码是空的。 我通过运行没有用户名的MySQL实用程序来validation这一点当提示重试或跳过时,我单击跳过并单击后退button,直到指定当前的根密码和新密码的对话框。 我删除当前root密码字段中的密码,因为这已经是空白了,并提供了我的新的root密码。 进行configuration没有更多的错误
  4. 停止服务
  5. 从已重命名的旧数据文件夹复制数据库文件夹。 没有复制日志文件和ibdata文件。
  6. 将文件夹粘贴到当前(新)数据文件夹。
  7. 重新启动服务
  8. 在mysql实用程序中testing,看看数据库是否会被显示。

顺便说一句,我倾倒数据库与mysqldump – 所有数据库,以防万一:)

添加逻辑innodb_flush_method=normal my.ini为我工作。 我在运行MySQL 5.7的Windows 7 x64上,将数据库移动到3TB的硬盘上。 快速演练:

  1. net stop sqlXX在Windows命令提示符下net stop sqlXX
  2. 使用命令xcopy "C:\ProgramData\MySQL\MySQL Server XX\data" "<new_directory>\data" /s复制data文件夹
  3. "<new_directory>\data"删除ib_logfile0ib_logfile1
  4. 打开C:ProgramData\MySQL\MySQL Server XX\my.ini ,设置datadir="<new directory>/data" ,在文件底部添加innodb_flush_method=normal ,并保存
  5. 用命令net start mysqlXX重新启动服务

这里的XX是你的版本号。 我使用5.7,所以我用net start mysql57

根据链接的讨论,这个默认值是innodb_flush_method=unbuffered ,这取决于512字节的扇区大小,对于<2TB的HDD是正常的。 如果硬盘大于2TB,则通常使用4096字节的扇区格式化,导致1067错误。

我也尝试了以上所有内容,这是解决这个问题的唯一方法。

http://bugs.mysql.com/bug.php?id=28913