码迷,mamicode.com
首页 > 数据库 > 详细

MYSQL-重做系统恢复MYSQL过程

时间:2017-05-07 01:04:52      阅读:386      评论:0      收藏:0      [点我收藏+]

标签:pat   remove   start   art   byte   access   生成   重装系统   sid   

记笔记是好习惯,记笔记是好习惯,记笔记是好习惯!

重要的事情说三遍。

说多了都是泪。第一次装MYSQL时候就遇到了很多问题,当时解决了忘记记录了。家里硬盘满了,于是买了个4T的硬盘重装系统。重装系统后开始了开发环境重装。Anaconda3,pycharm,mongodb,pycharm... 到了mysql时候就遇到各种问题。

1、先把mysql-5.7.18-win32从H盘挪到D:\Program Files\mysql-5.7.18-win32。

2、建立配置文件D:\Program Files\mysql-5.7.18-win32\my.ini,内容为

[mysqld]
basedir=D:\Program Files\mysql-5.7.18-win32
datadir=D:\Program Files\mysql-5.7.18-win32\data
tmpdir=D:\Program Files\mysql-5.7.18-win32\MySqltemp
innodb_buffer_pool_size=64M
3、建立tmpdir。必须按照配置中的临时目录配置建立这个临时目录,不然后面启动会报错!!!

4、添加环境变量PATH=D:\Program Files\mysql-5.7.18-win32\bin

5、打开cmd,进入D:\Program Files\mysql-5.7.18-win32\bin,执行mysqld --initialize

6、把D:\Program Files\mysql-5.7.18-win32\data移到D:\Program Files\mysql-5.7.18-win32\data1,执行mysqld --install。成功后,就可以在系统的服务里看到mysql开头的服务了。

7、上一步成功后,把生成的data文件夹移为data2文件夹,把刚才的data1移到data。恢复原来数据,如果不备份启动会报错,data文件夹不为空。

8、执行net start mysql,报错无法启动,那么尝试mysqld --remove,反复执行几次。

9、后面终于成功启动了。却连接成功后执行对原数据的一个select后服务瞬间停止。查看日志D:\Program Files\mysql-5.7.18-win32\data\ZGC-20170506NQH.err 最后一行为:

2017-05-06T15:44:39.138589Z 3 [ERROR] InnoDB: Trying to access page number 1784129 in space 31, space name samp_db/dd_chaptername, which is outside the tablespace bounds. Byte offset 0, len 16384, i/o type read. If you get this error at mysqld startup, please check that your my.cnf matches the ibdata files that you have in the MySQL server.

多查了下,发现是日志和数据不匹配。参看:https://dev.mysql.com/doc/refman/5.7/en/forcing-innodb-recovery.html

10、于是在my.ini中添加innodb_force_recovery = 6 重启服务,再连进去查询,终于恢复了!!!

特意写了这篇日志记录下解决过程。

MYSQL-重做系统恢复MYSQL过程

标签:pat   remove   start   art   byte   access   生成   重装系统   sid   

原文地址:http://www.cnblogs.com/zhaoforyou/p/6819194.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!