Problem with access settings on one database on mySQL

2002-01-17 Thread Keiran Wynyard

Hi

I have MySQL running on a RAQ4i. It has been running perfectly well for
almost a year and has four separate databases on it.

Last week, whilst checking over the sites that make calls on these databases
I noticed that only one had problems.

Through searching the FAQs and online documentation I have narrowed down the
problem to being something to do with the access permissions on the .frm
files of the database tables. I am using PHP MyAdmin 2.2.1 to view and edit
the tables and data. When I click the database to view the tables they are
all displayed, but instead of showing the Records | Type | Size information
all the tables show the phrase 'in use'. If I try to browse any of the
tables I receive the error message:

Error
SQL-query :
SELECT * FROM `about` LIMIT 0, 30

MySQL said:

Can't find file: './gilmours/about.frm' (errno: 13)

The file ./gilmours/about.frm does exist, by the way.

I have backup copies of all the files (.frm, .MYI, .MYD) and by following
the instructions in the online documentation have tried FLUSH TABLE, which
runs without error, but doesn't give any change, I have tried all the repair
options (REPAIR TABLE, myisamchk) and I have tried CHMODing the files, all
without success, the same errors occur. I have also tried the 'very
difficult repair' on this page : http://www.mysql.com/doc/R/e/Repair.html
still leaving the same error.

I cannot drop any tables or even the whole database itself, which would be a
viable option as I have full backups of data and structure.

I have changed the access restrictions to 666, 550, 777, and finally 660,
which is what the tables in the other databases are, with no avail, I have
restarted MySQL, numerous times, as well as rebooting the server. I have
tried taking a working version of the same table from another database (they
all are based on a similar structure) also with no success. The files as the
moment stand as '-rw-rw mysql root about.frm' for example, is this
correct?

H E L P!! please... pretty please, with a cherry on top...

Just an extra note, I am a newbie MySQL user, so please do not take anything
for granted in your reply. This is my first post to this user group, but I
have spent two days looking round the mailing list and FAQs to find the
answer, but not really knowing what to search for has hampered my search.
Any help will be gratefully and openly accepted. Thanking you in advance...

Keiran Wynyard



-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




Re: Problem with access settings on one database on mySQL

2002-01-17 Thread Gerald Clark

The user under which mysql is running ( 'mysql' ? Better check. ) does 
not have read permissions on
the .frm files OR does not have execute (x) permissions on their parent 
( or any ancestor ) directory.

chown -R mysql:mysql  /var/lib/mysql
should do the trick. Replace /var/lib/mysql with the actual directory 
that contains all of the mysql databases.

Keiran Wynyard wrote:

Hi

I have MySQL running on a RAQ4i. It has been running perfectly well for
almost a year and has four separate databases on it.

Last week, whilst checking over the sites that make calls on these databases
I noticed that only one had problems.

Through searching the FAQs and online documentation I have narrowed down the
problem to being something to do with the access permissions on the .frm
files of the database tables. I am using PHP MyAdmin 2.2.1 to view and edit
the tables and data. When I click the database to view the tables they are
all displayed, but instead of showing the Records | Type | Size information
all the tables show the phrase 'in use'. If I try to browse any of the
tables I receive the error message:

Error
SQL-query :
SELECT * FROM `about` LIMIT 0, 30

MySQL said:

Can't find file: './gilmours/about.frm' (errno: 13)

The file ./gilmours/about.frm does exist, by the way.

I have backup copies of all the files (.frm, .MYI, .MYD) and by following
the instructions in the online documentation have tried FLUSH TABLE, which
runs without error, but doesn't give any change, I have tried all the repair
options (REPAIR TABLE, myisamchk) and I have tried CHMODing the files, all
without success, the same errors occur. I have also tried the 'very
difficult repair' on this page : http://www.mysql.com/doc/R/e/Repair.html
still leaving the same error.

I cannot drop any tables or even the whole database itself, which would be a
viable option as I have full backups of data and structure.

I have changed the access restrictions to 666, 550, 777, and finally 660,
which is what the tables in the other databases are, with no avail, I have
restarted MySQL, numerous times, as well as rebooting the server. I have
tried taking a working version of the same table from another database (they
all are based on a similar structure) also with no success. The files as the
moment stand as '-rw-rw mysql root about.frm' for example, is this
correct?

H E L P!! please... pretty please, with a cherry on top...

Just an extra note, I am a newbie MySQL user, so please do not take anything
for granted in your reply. This is my first post to this user group, but I
have spent two days looking round the mailing list and FAQs to find the
answer, but not really knowing what to search for has hampered my search.
Any help will be gratefully and openly accepted. Thanking you in advance...

Keiran Wynyard



-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail 
[EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php





-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php




RE: Problem with access settings on one database on mySQL

2002-01-17 Thread Keiran Wynyard

Gerald

Thanks a lot for that...

The first option is what worked, I didn't think to CHMOD the directory to
give execute permissions!

Just for the record and for any other newbies out there, the database table
worked when I CHMOD'd the directory all the .frm, .MYI, .MYD files are held
in to 700.

Thanks again

Keiran

-Original Message-
From: Gerald Clark [mailto:[EMAIL PROTECTED]]
Sent: 17 January 2002 15:30
To: Keiran Wynyard
Cc: [EMAIL PROTECTED]
Subject: Re: Problem with access settings on one database on mySQL


The user under which mysql is running ( 'mysql' ? Better check. ) does
not have read permissions on
the .frm files OR does not have execute (x) permissions on their parent
( or any ancestor ) directory.

chown -R mysql:mysql  /var/lib/mysql
should do the trick. Replace /var/lib/mysql with the actual directory
that contains all of the mysql databases.

Keiran Wynyard wrote:

Hi

I have MySQL running on a RAQ4i. It has been running perfectly well for
almost a year and has four separate databases on it.

Last week, whilst checking over the sites that make calls on these
databases
I noticed that only one had problems.

Through searching the FAQs and online documentation I have
narrowed down the
problem to being something to do with the access permissions on the .frm
files of the database tables. I am using PHP MyAdmin 2.2.1 to view and edit
the tables and data. When I click the database to view the tables they are
all displayed, but instead of showing the Records | Type | Size information
all the tables show the phrase 'in use'. If I try to browse any of the
tables I receive the error message:

Error
SQL-query :
SELECT * FROM `about` LIMIT 0, 30

MySQL said:

Can't find file: './gilmours/about.frm' (errno: 13)

The file ./gilmours/about.frm does exist, by the way.

I have backup copies of all the files (.frm, .MYI, .MYD) and by following
the instructions in the online documentation have tried FLUSH TABLE, which
runs without error, but doesn't give any change, I have tried all
the repair
options (REPAIR TABLE, myisamchk) and I have tried CHMODing the files, all
without success, the same errors occur. I have also tried the 'very
difficult repair' on this page : http://www.mysql.com/doc/R/e/Repair.html
still leaving the same error.

I cannot drop any tables or even the whole database itself, which
would be a
viable option as I have full backups of data and structure.

I have changed the access restrictions to 666, 550, 777, and finally 660,
which is what the tables in the other databases are, with no avail, I have
restarted MySQL, numerous times, as well as rebooting the server. I have
tried taking a working version of the same table from another
database (they
all are based on a similar structure) also with no success. The
files as the
moment stand as '-rw-rw mysql root about.frm' for example, is this
correct?

H E L P!! please... pretty please, with a cherry on top...

Just an extra note, I am a newbie MySQL user, so please do not
take anything
for granted in your reply. This is my first post to this user group, but I
have spent two days looking round the mailing list and FAQs to find the
answer, but not really knowing what to search for has hampered my search.
Any help will be gratefully and openly accepted. Thanking you in advance...

Keiran Wynyard



-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail
[EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php





-
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/   (the list archive)

To request this thread, e-mail [EMAIL PROTECTED]
To unsubscribe, e-mail [EMAIL PROTECTED]
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php