Really need soem help here. I'm new to Mysql. my server crashed on me two days ago. I was able to do some data recovery to access the mysql file. the problem is how do i go about getting access my tables after this. I have no backup to restore from.
I tried coping the ibdata, logfile to another serevr; when i run the mysql the service fails to start.
How can i access my data
You have many options!!!
If you don't get to connect on database, you will have to restore it.
The basic restore command for restoring a full database from a disk backup image is
db2 RESTORE DATABASE dbname FROM directory TAKEN AT timestamp
To restore from TSM use:
db2 RESTORE DATABASE dbname USE TSM TAKEN AT timestamp
The timestamp represents the time the database
was backed up (it’s the timestamp you see when the backup completes and
it also exists in the recovery history file and for backups to disk you
can see it in the filename or path)
Assuming the backup was done online with log archiving enabled, there is one more thing to do. When you perform an online backup, the restore must apply any transactions that were going on when the backup occurred in order to make sure the database is consistent. So now you must roll forward the database or the tablespaces to a point of consistency. For database level restores, you can roll forward to any point between the end of the backup and the current time (i.e. end of logs).
To check if a backup image is corrupted, you can use the db2ckbkp command
db2ckbkp -h <backup_image>
To check the backups taken on your server you can perform the following command
db2 list history backup all for <dbname>
Op Obj Timestamp+Sequence Type Dev Earliest Log Current Log Backup ID
-- --- ------------------ ---- --- ------------ ------------ --------------
B D 20080328013138001 N D S0000002.LOG S0000002.LOG
Contains 4 tablespace(s):
Comment: DB2 BACKUP SAMPLE ONLINE
Start Time: 20080328013138
End Time: 20080328013213
EID: 8 Location: c:\SAMPLE.0\DB2\NODE0000\CATN0000\20080328
The Start Time: 20080328013138 is the backup image timestamp.
To roll the database forward to the end of the logs and open the database for access
db2 ROLLFORWARD DATABASE dbname TO END OF LOGS AND STOP
To rollforward to a given point in time you can say
db2 ROLLFORWARD DATABASE dbname TO isotime USING LOCAL TIME AND STOP
If you able to connect on database, but some tablespaces are offline or are in the not normal state, you need to check and fix the problem.
Soon, a document will be post here with more details step by step to teach what you have to do when a database get crashed
If you want to ask, you can use MySQL Restore Toolbox to read articles: