PDA

View Full Version : Transferring a MySQL database from...


Archon77
Tue 20th Feb '01, 2:55am
one server to another.

We have transferred all the .php from our old server to the new, and it works fine. Our problem is with the database. We copied all the .frm, .ISD, and .ISM files from a linux based MySQL server to a windows based MySQL server. The tables exist (.frm files), but the data, stored in the .ISM and .ISD files is not accessible. When I do a select * from users;, for example, I don't get any records. I've checked the files, and the data exists, but the server can't read the info.

I have another database set up on the same server, and I noticed that the data files are .MYD and .MYI files. Could there be a difference in the way the data is stored on a linux box compared to a windows box? I'm a programmer, and I know that some unix systems (Alpha processors, PPC processors) store and process integers in a different format than windows (x86 processors). Called big endian and little endian. Might this affect the data?

Is there a way to convert a database that originated on a linux box to a format readable on a windows box? I've searched MySQL.com, but there are a lot of programs, and I havn't found any information regarding such differences in file format yet. Or, are we stuck using a Linux server for the time beeing?

Thanks for any help. :)

Freddie Bingham
Tue 20th Feb '01, 3:00am
The problem isn't linux/windows, the problem is you have a database from the previous mysql format and your win box is running the new mysql and it's newer (and much faster) format. I do believe there or conversion programs to go from .ISM to .MYI

Chris Schreiber
Tue 20th Feb '01, 12:45pm
The conversion script is called "mysql_convert_table_format" and is in your MySQL bin directory. Or you could just do a dump of the old database and load it into a new 3.23 database, they will be MyISAM tables by default this way.