今天客户开机的时候,前面4张单正常,做第5张的时候,数据库就出现错误.然后就开不了MASTERDATA.
MYSQL Query Browser也进不了,一进就说LOCALHOST出错.
我备份MASTERDATA的时候,发现一个表TRANSPAYMENT备份不了,然后要重新启动机器才能使用别的数据库TRAINING.
所以是由TRANSPAYMENT这个表引起的,现在备份的数据也没有这个表.该怎么备份这个坏掉的表.
该怎么恢复?
帮我分析下是什么原因会引起MYSQL需要重启才能用?
MERRY X MAS!
MYSQL Query Browser也进不了,一进就说LOCALHOST出错.
我备份MASTERDATA的时候,发现一个表TRANSPAYMENT备份不了,然后要重新启动机器才能使用别的数据库TRAINING.
所以是由TRANSPAYMENT这个表引起的,现在备份的数据也没有这个表.该怎么备份这个坏掉的表.
该怎么恢复?
帮我分析下是什么原因会引起MYSQL需要重启才能用?
MERRY X MAS!
一种可能就是锁。
我们是第一次发生TRANSPAYMENT这个数据表坏的情况.星期一还要下去把硬盘拿回来检查.查看日记是在哪里看?
101224 23:00:23 InnoDB: Shutdown completed; log sequence number 0 645141810
101224 23:00:23 [Note] C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld-nt: Shutdown complete101225 9:01:06 InnoDB: Started; log sequence number 0 645141810
101225 9:01:07 [Note] C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld-nt: ready for connections.
Version: '5.0.51b-community-nt' socket: '' port: 3306 MySQL Community Edition (GPL)
101225 10:59:15 InnoDB: Operating system error number 23 in a file operation.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/refman/5.0/en/operating-system-error-codes.html
InnoDB: File name .\ibdata1
InnoDB: File operation call: 'Windows aio'.
InnoDB: Cannot continue operation.
InnoDB: Log scan progressed past the checkpoint lsn 0 645158130
101225 11:03:09 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...
InnoDB: Doing recovery: scanned up to log sequence number 0 645158990
InnoDB: 1 transaction(s) which must be rolled back or cleaned up
InnoDB: in total 3 row operations to undo
InnoDB: Trx id counter is 0 739328
101225 11:03:10 InnoDB: Starting an apply batch of log records to the database...
InnoDB: Progress in percents: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
InnoDB: Apply batch completed
InnoDB: Starting in background the rollback of uncommitted transactions
101225 11:03:10 InnoDB: Rolling back trx with id 0 738818, 3 rows to undo
101225 11:03:10 InnoDB: Started; log sequence number 0 645158990帮我看下错误。
2 用这个备份,恢复到一个新硬盘,让此硬盘作为从盘,挂在一台win的机子上,开始恢复mysql数据。
2.1启动服务器mysqld。
2.2用mysqldump导出所有数据。(至少导出所有innodb表)
2.3假如上述2步中任何步骤出错,则修改配置文件my.ini后再做这两个步骤。
[mysqld]
innodb_force_recovery = 43 必须重建innodb表空间和日志,即关闭mysqld,删除ibdata*,ib_log*,重启mysqld。4 导入所有数据。
把MASTERDATA的表放在我的MYSQL的目录下,然后INI什么的有什么设定?