where are the .MYI and .MYD files?
0 answers - 2225 bytes -

I've copied the data files in a flash memory and tried to
see the tables
misingo (AT) astrocosas (DOT) com and then paul (AT) mysql (DOT) com wrote:
fields in another computer with the same server version and
platform and
get the "db_name.tb_name table doesn't exist" error
message. However when
I run the show tables command, the command line shows me
the list of the
tables
I believe SHW TABLES only needs to see a .frm file to believe that a
table exists.
Having experienced these problems, and more, related to copying InnoDB files around I'd like to add a few other things.
At a minimum, for an InnoDB database you also need to copy the ibdata1 file from the parent directory of where your .frm files are
located.
Also, the .frm files and ibdata1 files for the InnoDB should be from the same CREATE. I believe the ibdata1 file as well as the
frm files contain -- ironically, since the whole point of databases is to avoid redundant data -- redundant schema-related
information. If they are not in sync the mapping between the .frm and ibdata1 information will probably thoroughly mess up your
access to the underlying stored database data.
Fred
Message
From: Paul DuBois [mailto:paul (AT) mysql (DOT) com]
Sent: Thursday, September 07, 2006 5:49 PM
To: misingo (AT) astrocosas (DOT) com
Cc: mysql (AT) lists (DOT) mysql.com
Subject: Re: where are the .MYI and .MYD files?
misingo (AT) astrocosas (DOT) com wrote:
I've installed MySQL, created a database and tables and
then loaded fields
into them. I use the command line client and can see the
fields, use the
select command and every thing is K, but when I look for
the table files
in the data directory, only the .frm ones appear, not the
.MYI or MYD.
Where could they be?.
If you see the .frm files but no .MYI/.MYD files, that suggests that
your tables are not MyISAM tables. Try "SHW CREATE TABLE
tbl_name" for
some value of tbl_name. Look for the ENGINE = option near the
end of the
statement. Perhaps when you installed MySQL, you selected
InnoDB as the
default table type.