Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Need help about 'products_description.MYI' Urgently


Guest

Recommended Posts

Hi,

 

I got some problem happen...I receive this message..

 

1016 - Can't open file: 'products_description.MYI'. (errno: 145)

 

select products_name from products_description where products_id = '108' and language_id = '1'

 

 

What should i do ?? Where is the MYI ?? And how can i get it back ???

Link to comment
Share on other sites

I hope you have a back up of your database. Do a search on the forum for *MYI* and click search for all terms.

Link to comment
Share on other sites

I think i have back up of my data..But I am not sure Becuase i have update some product last night..and i have not back up it yet..

 

If i restore the data...it will be working fine again ???

 

Do you know the reason why ?? and what is WYI using for ??

Link to comment
Share on other sites

A similar problem was caused by some server updates.....That was the reason for doing the search. It will explain.

Link to comment
Share on other sites

It is lucy that the dtabase backup that i have still have some prodcut..hehe...IT is working again..I will keep update the datasbase every time...

 

Thank you very much....I will searching for the reason too...

 

Many Many Thanks

Link to comment
Share on other sites

  • 1 month later...

I encounter the same problem, if you do not want to drop and recreate the table, use phpmyadmin to repair it.

 

In phpmyadmin, click on "structure". you should be able to see the offending table as being "in use".

 

Check the box next to the corrupt table and scroll down to the bottom of the page where there is a drop down menu with the default "With selected".

 

click the drop down and select "repair" that should solve the problem

:wink:

Link to comment
Share on other sites

  • 2 months later...

Unfortunately, I don't have a "repair" option in my drop down. I only have the following: Drop, Empty, Print View, Optimize Table.

 

So I suppose I am SOL since I was just about to back up the database when this happened. ARG.

Link to comment
Share on other sites

Oh, I should have put the steps on how to do it without the "magickal" drop down menu for those who don't know.

 

At a shell prompt you can type all one 1 single line:

 

mysql -u DBUSERNAME -h DBSERVERNAME -p DBNAME

 

replacing DBUSERNAME, DBSERVERNAME, DBNAME and DBPASSWORD with your own mysql username, database server name, mysql database name and mysql password.

 

MySQL gives the error "Can't open file: 'sometable.MYD'"

 

The mysql error number 1016 or errno 145 can signify a corrupt table. To check the table for corruption, get a MySQL Monitor prompt and type:

 

check table BADTABLENAME;

 

replacing BADTABLENAME with the name of the table

 

If the table is corrupt, you will see output like this:

 

+----------+-------+----------+------------------------------+
| Table | Op | Msg_type | Msg_text |
+----------+-------+----------+------------------------------+
| db.table | check | warning | Table is marked as crashed |
| db.table | check | error | Record-count is not ok; |
| is 421664 Should be: 421739 |
| db.table | check | warning | Found 75 deleted blocks |
| Should be: 0 |
| db.table | check | error | Corrupt |
+----------+-------+----------+------------------------------+

 

If you find corruption, you can try to repair it by typing:

 

repair table BADTABLENAME;

 

And that will return output like this:

 

+----------+--------+----------+------------------------+
| Table | Op | Msg_type | Msg_text |
+----------+--------+----------+------------------------+
| db.table | repair | warning | Number of rows changed |
| from 421739 to 421664 |
| db.table | repair | status | OK |
+----------+--------+----------+------------------------+

 

Then you can check the table again and see if it is fixed, like so:

 

check table BADTABLENAME;

 

+----------+-------+----------+----------+
| Table | Op | Msg_type | Msg_text |
+----------+-------+----------+----------+
| db.table | check | status | OK |
+----------+-------+----------+----------+

 

which means the table named "badtablename" is now ok.

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...