I am sending this mail in order to get things straight 
about table corruption which I am experiencing with
4.0(as well as previous versions).

1)System specs: PIII x1000MHz, 1GB RAM, HD 37GB SCSI, 
AHA29160N SCSI controller

2) Database MyISam tables, BUT 21000 tables in the 
database(this is for performance reasons. I need
for each such table to run a number of queries  and in 
this way I already have 'VIEWS', except they are
 permament). I could split that in 4 different databases
 if it is a problem. 

3)  I import the data from mysqldumps(that is, the 
program that reads the data does not directly import 
them in the database, partly because  of the corruption 
problems, but also partly because I want backups anyway 
 and instead produces files that are importable just 
like mysqldumps. These files are of the form
'INSERT INTO TABLE1 (.....);'
....

conceivably for all 21000 tables.

I assume corruption happens at the inverse mysqldump 
phase. Does this mean that if I break up the
 dump file into  many smaller files,
 so that say  one file consists of all imports 
 TABLES1-100, the second files 101-200 etc
 corruption will not be a problem??


4) Corruption is a tossup. The import always works. 
However, when I run the queries sometimes they all run 
fine, while other times I get an error 127
 on the table it is working on.
myisamchk NEVER manages a complete recovery of all 
records(typically 25% of the records). This makes it 
hard to tell for sure if this has anythingto do with
 the size of data imported, since  the more files I 
import the larger the probability of having corruption.
 I have had corruption on a single import too though.


5)Before writing a bug report(the problem may be that 
this is erratic and  even on my PC  corruption is not 
consistent, e.g. I may import a file and get 
corruption, or I may import another file without 
corruption) and hence reproducibility may be 
problematic., I would appreciiate someone setting me 
straight on  the filedescriptor issues(thanks Sinisa 
thus far):

-It is not clear to me if the problem may be that when
 mysql is importing data, it may be having more files
 open than it(or the fs-reiser in this case) can handle.
 Could this be the reason for (table)corruption?

-If so, accordingto the manual, there are 2 ways around:
either decrease table_cache in /etc/my.cnf
(currently 512) which however may also affect 
performance
 as I have a lot of tables
 or increase ulimit/open-files-limit

-The question on this first option(table_cache) is:
if now I have 2000 open files and reduce the cache to 
256 does it mean I will be getting half the open files?

-Regarding the more desirable option of increasing the 
limit, are the two ways equivalent(that is, does open-
file-limit call ulimit?) Is changing either of them 
enough , or-as I assume does one really have to change 
ulimit?



-I have a ulimit -a limit giving a 1024 open file limit
 while cat /proc/sys/fs/file-nr gives a hard limit of 
8192.
 However, the man page says the system may not allow 
you  to change  ulimit
I did a ulimit -n 8192 as root
then ulimit -a limit says 8192
but when I open a window as a regular user,  and do
 ulimit -a limit it is still 1024. Rebooting
 comes back with 1024
 Is it at all possible to change it?

-Also, if I can/have to change open-files-limit,
 do I need to do it in
/etc/my.cnf
/usr/bin/mysqld_safe
/both?

Last, 
I have a start_Mysql=yes in rc.config
but in contrast to other systems used mysql, mysql does 
not start when the system boots. Any ideas why?

Sorry for the many questions. 

Thanks in advance
S.Alexiou

        



---------------------------------------------------------------------
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

Reply via email to