转载自:http://blog.csdn.net/chenallen1025/article/details/8099024
前序:我也碰到了此问题,百度google各种搜索《无法启动mysql服务,错误1067》,发现答案一大堆,感觉有的不靠谱。于是想了想应该对症下药,找出了mysql错误日志,根据错误日志来搜索,于是便有了答案。附:这样做的话可以解决问题,但是密码会被置空。
问题表象:
我的mysql中的 my.ini文件配置:
- #Path to installation directory. All paths are usually resolved relative to this.
- basedir="D:/software_builder/mysql/"
- #Path to the database root
- datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"
我在 datadir的路径下找到.err文件,查看错误原因
- 121022 15:21:06 [Note] Plugin 'FEDERATED' is disabled.
- D:\software_builder\mysql\bin\mysqld: Table 'mysql.plugin' doesn't exist
- 121022 15:21:06 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
- 121022 15:21:06 InnoDB: The InnoDB memory heap is disabled
- 121022 15:21:06 InnoDB: Mutexes and rw_locks use Windows interlocked functions
- 121022 15:21:06 InnoDB: Compressed tables use zlib 1.2.3
- 121022 15:21:06 InnoDB: Initializing buffer pool, size = 500.0M
- 121022 15:21:06 InnoDB: Completed initialization of buffer pool
- 121022 15:21:06 InnoDB: Log file .\ib_logfile0 did not exist: new to be created
- InnoDB: Setting log file .\ib_logfile0 size to 100 MB
- InnoDB: Database physically writes the file full: wait...
- InnoDB: Progress in MB: 100
- 121022 15:21:07 InnoDB: Log file .\ib_logfile1 did not exist: new to be created
- InnoDB: Setting log file .\ib_logfile1 size to 100 MB
- InnoDB: Database physically writes the file full: wait...
- InnoDB: Progress in MB: 100
- 121022 15:21:10 InnoDB: highest supported file format is Barracuda.
- InnoDB: The log sequence number in ibdata files does not match
- InnoDB: the log sequence number in the ib_logfiles!
- 121022 15:21:10 InnoDB: Database was not shut down normally!
- InnoDB: Starting crash recovery.
- InnoDB: Reading tablespace information from the .ibd files...
- InnoDB: Restoring possible half-written data pages from the doublewrite
- InnoDB: buffer...
- 121022 15:21:10 InnoDB: Waiting for the background threads to start
- 121022 15:21:11 InnoDB: 1.1.8 started; log sequence number 3700748
- 121022 15:21:11 [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.host' doesn't exist
尝试过无数种网络搜索的解决方法,有过重装mysql的念头,也有过砸电脑的冲动,但最后还是天不负有心人,终于找到了解决方法;
第一步:在mysql的安装目录下 basedir="D:/software_builder/mysql/的data文件夹里“D:\software_builder\mysql\data”" 下面还有一个mysql的文件夹(如图),
把“mysql文件夹”拷贝到数据库的数据存放位置的data文件夹下(我的是:C:\ProgramData\MySQL\MySQL Server 5.5\data)
然后在服务里面启动mysql服务,结果:“I get it !”